تصميم الملفات وقواعد البيانات

تصميم الملفات وقواعد البيانات
1]مقدمــة :      
في هذه المرحلة يتم الآتي :
       1-    تجهيز المواصفات الأساسية لملفات النظام.
       2-    تحديد أنواع تلك الملفات .
       3-    تحديد طرق تنظيمها .
       - لكل نظام معلومات مجموعة من الملفات الأساسية التي يعتمد عليها .

2]التنظيم التقليدي للملفات : FILE ORGANIZATION
يقصد بذلك أسلوب ترتيب السجلات المختلفة في الملف علي واسطة التخزين طرق الترتيب هي :
 -  التنظيم التتابعي: SEQUENTIAL ORGANIZATION
 -  التسلسلي:   SERIAL ORGANIZATION        
 -  المباشر : DIRECT  
 -  المباشر  التتابعي  DIRECT SQUENTIAL

(1)   التنظيم التتابعي :
يتم إدخال السجلات بناء علي مفتاح البحث الذي يحدد موقع السجلات في الملف . مفتاح البحث هو رقم السجل .

مثـال :
ملـــف                                    طريقة تخزين الملف



   F

       محتوي السجل       رقم السجل

C
   B
     D
       A     15




       B     7


   A

       C     6
                                  D     8
                                  E     9
                                  F     3
وتعتمد عملية الاسترجاع علي رقم السجل تصاعدياً الأصغر أولا ثم الأكبر  هكذا :

F     3
C     6
B     7
D     8
E     9
A     15



 (2)  التنظيم المباشر :
 -    يعتمد علي مفتاح بحث يحدد موقع السجل في واسطة التخزين .
-     مثل هذا النوع من التنظيم لا يمكن تخزينه علي وسائط التخزين التتابعية لأنه يتطلب وصول مباشر .
-     رقم السجل يحدد موقع ذلك السجل أما مباشرة أو حسب علاقة رياضية يحددها المبرمج :
مثـــــال :
30 + 100  × موقع السجل = رقم السجل    
الاسم  رقم السجل
محمد علي حسن محمود    20
15
3
4
موقع السجل  السجل
2030
1530
330
430  20
15
3
4
      
التنظيم التسلسلي:
-     يعتمد علي مبدأ الداخل أولاً هو الخارج أولاً
عملية التخزين في الملف تظهر كالآتي :-

       A15
B7      C6
      D8
       محتوي السجل       رقم السجل
     E9
F3     
      
       A     15




       B     7

         

       C     6
                                  D     8
                                  E     9
                                  F     3

(4)التنظيم  المباشر التتابعبي :
هذا  التنظيم  يجمع  بين  التنظيم  المباشر  والتتابعي  إذ  انه  يتم  الوصول  مباشرة  إلى  موقع  مفتاح  معين  ثم  يتم  البحث  تتابعياً  مثل  يتم  الوصول  مباشرة  إلى  مفتاح  الكلية  ثم  يتم البحث  عن  الأقسام  على  التتابع.

3]خطوات تعريف الملفات :
علي المصمم عند دراسة وثيقة محلل النظم الأخذ في الاعتبار الخطوات التالية لتعريف الملفات وهي :
       1-    تعريف وسائط تخزين الملفات .
2-    تعريف نوع تنظيم الملف .
       3-    توصيف الملفات وتصميمها .
الملفات في نظم المعلومات فئتين هما :

(1)   الملف الرئيسي MASTER FILE :
وهو الملف الذي يحتوي علي المعلومات الأساسية والأحداث عن وحدات النظام .
مثال :
في نظام المرتبات أو نظام شئون الأفراد تشكل مجموعة سجلات العاملين ملفاًٍ أساسيًا لنظام المرتبات أو الأفراد :
….   المؤهلات     العنوان       الجنس اسم الموظف  رقم الموظف
   حقل            حقل          حقل       حقل  .....      حقل            

(2)   ملفات الحركة  TRANSACTIONAL FILE :
هي  مجموعة  سجلات المعلومات التي تعبر عن النشاطات اليومية لنظام المعلومات –      هذه الملفات تستخدم لتحديث الملفات الرئيسية .
مثال :
في البنوك مثلاً ، المعاملات اليومية تتم في هذه الملفات،في نظام المرتبات والأجور / المعاملات  أثناء الشهر تتم في هذه الملفات.

4]تصميم الملف الرئيسي :
1-    يتكون من سجلات بعضها ثابت وبعضها متغير بصورة مستمرة بسبب النشاطات و المعاملات  الجارية عبر ملفات الحركة.
2-    يجب تحديد التكوين الأساسي لسجلات الملف الرئيسي وحقل التحكم أو المفتاح الرئيسي الذي هو الحقل الذي يعرف أي سجل عن الآخر.
3-    يحتوي حقل التحكم علي رقم مثل رقم الموظف أو رقم العميل .
4-    بعد تحديد حقل التحكم يجب تعريف كل عنصر مطلوب في السجل .
5-    يجب تعريف وسائط تخزين الملف .
6-    يجب تعريف نوع تنظيم الملف .
       7-    يجب تعريف حجم البيانات المعالجة – أي نشاط الملف .
       8-    يجب تعريف قيمة البيانات التي يعالجها النظام .

5]توصيف الملفات وتصميمها  FILE FORMAT AND DESIGN:
بعد تحديد:
1-    وسائط تخزين الملفات .
       2-    تعريف نوع الملفات المستخدمة .
يجب على المصمم وضع التوصيف الكامل لملفات النظام من حيث :
       1-    السجلات التي يحويها كل ملف وأنواعها .
       2-    حقول كل سجل / ووظيفتها/  ونوعها / وطولها ..(قاموس البيانات)  .
       3-    علاقة السجلات ببعضها البعض .
4-    مزايا الملف من حيث فترة بقائه ودوراته في النظام .

6]أدوات تصميم السجلات والملفات :
      الأدوات الأساسية التي يستعين بها مصمم النظم لتصميم سجلات ملفات النظام هي :
1-    نموذج السجلات RECORDS LAYOUT 
       2-    توصيف الملفات FILES SPECIFICATION
3-    توصيف السجلات RECORDS  SPECIFICATION
هناك  طريقتان  في  تصميم  الملفات  وقواعد  البيانات :

7]    الطريقة التلقيديه  في  التصميم :
أي  شاشة  إدخال  في  النظام  التقليدي  ترتبط  بملف  إدخال وهناك  نوعان  أساسيان  لملفات  الإدخال  هما  ملف   الحركة  والملف  المساعد.  أما  ملف  الحركة  هو  الملف  الذي تحدد  فيه  حركة  النظيم  الفرعي  للنظام.  أما  الملف  المساعد  فهو  الملف  الذي  تدخل  فيه  البيانات  الثابتة  وشبه  الثابتة أو ما  يعرف  بالكينونات .  يتم نقل بيانات ملف الحركة  كل  ساعة  أو  ست  ساعات  أو  12  ساعة  أو  يومياً  إلى  الملف  الرئيسي   ( Master File ) وتنتقل بيانات الحقول القديمة الى ملف آخر يسمى الملف التاريخي.  أذن الملف الرئيسي يحتوي على كل  البيانات  الحديثة في  النظام.  أما  البيانات  القديمة  تنتقل إلى  الملفات  التاريخية.  (Historal File).  إذن  هناك  عدة  ملفات  حركة  تغطي  الحركة  في  كل  النظام بعدد نظيمات النظام الفرعية و  مقابل  أي  ملف  حركة هناك  ملف  تاريخي.  أما  الملف  الرئيسي  فيحتوي  على  كل  البيانات  الحديثة  الآتية  من  كل ملفات الحركة والبيانات القديمة في الملف الرئيسي تنتقل إلى  الملفات  التاريخية  المقابلة  لملفات  الحركة. أذن  التاريخ  هو  مفتاح  هام  في  الملف التاريخي وعادة التقارير الإحصائية  تستخرج  من  الملف  التاريخي.

مثال للحركة:
  الجامعة    الكليات        الأقسام     تخصصات   أسماء الطلاب   وثيقة نتيجة الطالب    




8] الطريقة  الحديثة في التصميم :
تلتزم الطرق الحديثة في التصميم بنظم قواعد البيانات وينظم التوجه نحو الكينونة أو الكائنيه حيث ترك الملفات على وصف (جداول) الأكواد  -   الخصائص - أنواع الكينونات لكل شاشة جدول اكواد ووقائع مثل الاسماء أو ملف خصائص مثل تاريخ الميلاد والعنوان (قاعدة بيانات خصائص) أو ملف

*     في النظام الجديد (الكينونات) لكل كينونه ملف خاص تاريخي ومحدث ، إذن هنالك عدد ضخم من الملفات (يتم التعامل معها والتحكم فيها بواسطة قواعد البيانات مثل (Orcle  ، SQL) أو غيرها وهذا خلاف النظام القديم حيث كل بيانات النظام تكون في ملف واحد Master file (وهو ملف كبير)





8-1  تصميم وبرمجة قواعد البيانات :
أهم  مميزات  قواعد  البيانات  كما  ذكرنا  هي  فصل  البيانات  عن  التطبيقات  وعرض  البيانات  بصورة  منطقية  بصرف  النظر  عن  الامكانات  المادية  للتخزين  وتقديم  البيانات  التي  تلي  المستخدم  المهني  للمستخدم  المعني  فقط.  لذلك  هناك  ثلاث  أسس  بنائية  لبناء  قواعد  البيانات : البنيان  الأول  هو  البنيان  التصوري  أو  الرؤية  المنطقية  والبنيان  الثاني  هو  البنيان  الخارجي أو  التطبيقات  والبنيان  الثالث  هو  البنيان  الداخل  أو  الأجهزة.

8-2  البنيان  التصوري : Conceptual Schema
يحوي  على  سبيل  المثال  على  نوعية  البيانات  المحفوظة  عن  كل  كينونة  من  الكيوننات  التي  تضمها  القاعدة  والعلاقات  بين  تلك  الكينونات  والسماح  للمستخدمين  أو  صلاحية  الدخول  للقاعدة  مثلاً  في  نظام  طلاب  الجامعة، البيانات  المحفوظة  عن  الطالب  هي  رقم  الطالب  نوعه  رقمي  وطوله  7  أرقام  واسم  الطالب  نوعه  حرفي  وطوله  25  حرف  وتاريخ  الميلاد  ونوعه  تاريخ ..  وهكذا  حسب  ما  هو  موضح  في  القاموس.  أما  العلاقة  فكل  طالب  يتبع  لكلية  واحدة  فقط  ولا  يمكن  للطالب  ان  يكون  في  كليتين  وهكذا  العلاقة  تعرف  بعلاقة [ واحد إلى  كثير (1:ن) ]  وعادة  يشير  السهم  من  الكلية (واحد)  إلى  الطالب (كثير).  من  ناحية  أخرى  فان  الطالب  يدرس  عدة  مواد والمادة  الواحدة  يدرسها  عدد  من  الطلاب  وهذه  تعرف  بعلاقة  قليل  إلى  كثير  (ن:م)  وعادة  يشير  السهم  في  الاتجاهين  في  هذه  العلاقة  بين  كينونة  الطالب  وكينونة  المادة.  ولكن  عندما  نحدد  أسماء  الطلاب  (الجداول)  الذين يتبعون  للكلية  المعنية  أو  يدرسون  المادة  المعينه  فان  ذلك  يعرف  بوقائع  التطبيقات  (Occurrences) مثل  جدول  أسماء  طلاب الكلية  ثم  أسماء  الأقسام  في  الكلية  ثم  أسماء  المواد  في كل قسم وبعد ذلك يتم  الربط بين الطلاب في  الكلية  الذي  يتبعون  لقسم  معين  والذين  يدرسون  داخل  القسم  مادة  معينة  وهكذا ز
أما  صلاحية  الاستخدام  فتحدد  على  الواقع  من  أساتذة هم  المرخص  لهم  الدخول  على  بيانات  نتائج  الطلاب  عموماً (الكنترول)  ونتيجة  مادة  معنيه ( أستاذ  المادة )  ومن هو  الذي  له  صلاحية  التعديل  وصلاحية  الإطلاع  وصلاحية  الحذف  وهكذا.  يتم  تنفيذ  البنيان  التصوري  في  قواعد  البيانات  من  خلال  لغة  تعريف  البيانات  (Data Definition Language  DDL ) .

            واحد  إلى كثير
الكليـة                                                      تخصص
واحد إلى كثير      

            


   كثير إلى كثير    كثير إلى كثير
الطالب                                                مــادة










8-3  البنيان  الخارجي :-
ذكر  في  البنيان  التصوري  عن  صلاحية  الاستخدام أن  كل  مستخدم لا  يهمه  من  قاعدة  البيانات  إلا  القدر  الذي  يتعامل  معه  ومن  ثم  لابد  أن  يراعي  البنيان  التصوري  ذلك  من  خلال  عدد  من  الأبنية الخارجية كل  بنيان خرجي  منها  يمثل رؤية  مستخدم  أو  نظيم  معين.  وقد  ينزل  ذلك  ليس  إلى  مستوى  الملفات  أو  السجلات فحسب بل  حتى  مستوى  الحقول  فمثلاً  قد  يستفسر  عميد  الطلاب  عن  دخل  ولي  أمر  الطالب  أو  عنوان  الطالب  ولكن  لا  يهمه نسبة دخول الطالب للجامعة  ولكن  عميد  الكلية  ربما  يريد  أن  يعرف نسبة  دخول  الطالب  لغرض  تقويم  أكاديمي.  كل  بنيان  خارجي يمكن أن يكون نافذة لنظيم حتى المستويات الأدنى إلى مستوى الحقول فيما يلي أهداف النظام وأهمها الاستفسارات  والمخرجات.

8-4  البنيان  المادي :-
البنيان المادي هو كيفية تنفيذ  قاعدة  البيانات  فعلياً  مثل  أنظمة  التخزين وطرق التخزين وطرق الوصول  للبيانات  من  فهرسة  حقول  مؤشرات  وخوارزميات  وغير ذلك وطرق استخدام الشبكة وإرسال البيانات.

8-5  برمجيات  قواعد  البيانات :-
هناك  برمجيات  تخص  المشرف  على  قاعدة  البيانات (DBA)  وبرامج  تخص  المبرمجين  وبرامج  تخص  المستخدمين  وهناك  لغات  خاصة  بقواعد  البيانات  مثل  لغة  التحكم  في  البيانات  والتي  يستخدمها  المبرمجين  (DML) data Manipulation Language  وهي  تحتوي  على  أوامر  التخزين  والاسترجاع  والتعديل  والحذف  والإضافة  ولابد  للمبرمج  أن  يكون  ملماً  إلماماً  كاملاً  بهياكل  القاعدة  ليتمكن  من  استخدام  الأوراق.  كذلك  هناك  اللغات  الاستفسارية (Query Languages)  وهي  صممت  أصلاً  من  أجل  المستخدمين  لكي  تمكنهم  من  القيام  بكل  الاستفسارات  المطلوبة  وهي  سهلة  جداً  ويمكن  أن  يستعين  المستخدمون  قليلو  الخبرة  بالمرجين  في  استخدام  هذه  اللغات.  هناك  برامج  مساعدة  أو  برامج  قائديه  Utilities  تساعد  في  عمل  القواميس  والجداول  وفي  توليد  التقارير  وعمل  النسخ  الاحتياطي  وإرجاع  البيانات  المعقودة وفي  مراقبة  الاستخدام  وفي  التحكم  في  تزامن  العمل  على  القاعدة  وفي  إعادة  التنظيم  المادي  أو  استبداله.
8-6  مقارنة بين أسلوب  إدارة  الملفات  وقواعد  البيانات
النظام التقليدي (إدارة الملفات المستقلة)    النظام الحديث (قواعد البيانات المتكاملة)
1.    تخرج المخرجات من ملف رئيسي لكل النظام وملفات تاريخية مستقله لكل نظيم      1.    تخرج المخرجات من  مخزن متكامل يربط ربطاً منطقياً بين كل الكينونات أو النظيمات
                   
2.    هناك ملف ادخال لكل نظيم مما ينتج عنه تكرار في المدخلات  2.    لا يتم تكرار الإدخال مطلقاً ويتم إدخال البيانات الثابتة وشبه الثابتة في جداول تربط بين الكينونات أو النظيمات
                   
3.    ضرورة التنسيق بين كافة النظيمات و الإدارة المحتفظة بالملفات لمتابعة التغيرات البيانية    3.       تحافظ قواعد البيانات على تناسق وثبات البيانات
                   
4.    الارتباط الشديد بين البرامج والمفات. اذ ان معرفة طريقة التخزين (تتابعي، مفهرس، مباشر)  ضرورية  لأي  برنامج يتعامل مع البيانات.     4.    الاستغلال الكامل للبيانات عن البرامج إذ تقوم إدارة قواعد البيانات بإمداد البرامج المختلفة بالبيانات المطلوبة بغض النظر عن طريقة تخزينها
                   
5.    عدم وجود مرونة في التعامل مع رغبة المستخدم في المخرجات 5.    وجود أكثر من صورة منطقية تحقق رغبة المستخدم
                   
6.    صعوبة تنفيذ متطلبات التطبيقات المستقبلية 6.    وجود البيانات في قاعدة موحدة يجعل من السهولة واليسر تنفيذ التطبيقات المطلوبة
                   
7.    صعوبة عمل معايير موحدة لكل المستخدمين ولكل النظيمات    7.    يمكن لمدير قاعدة البيانات أن يضع المعايير الموحدة إذ أن الدخول للقاعدة لا يتم إلا عبره
                   
8.    صعوبة التحكم الأمني في التعامل مع النظام      8.    يمكن لمدير قواعد البيانات ان يحدد من يدخل لأي نظيم وما هي صلاحياته بكل يسر
                   
9.    ضعف الرقابة وعدم إمكانية اقتسام البيانات في هذا النوع من الأنظمة  9.    فعالية الرقابة وكفاءة الاستخدام باقتسام البيانات
                   
10.   هذا النوع من الأنظمة مناسب مع الأنظمة ذات التوجه التشغيلي أو المعالجي   10.   نظام قواعد البيانات مناسب للأنظمة ذات التوجه المعلوماتي

8-7  مشروع:
1-    نظام حسابات بنك            حركة حسابات
2-    نظام أكاديمي في كلية   الطالب   الكلية  القسم  الامتحانات    النتائج.
3-    نظام طلبات                تنفيذ طلبية
معرفة استخدام جداول الكينونات والخيارات ، قاعدة بيانات الحركة أو الوثيقة باستخدام SQL أو ORALE.

قاعدة ذهبية:
أ-     يتم مراجعة شاشات الإدخال والتزامها بالقواعد المذكورة في جداول الكينونات والاعتبارات الإدارية والمنطقية والفنية والأمنية في الخصائص مع المحلل قبل البدء بتصميم الجداول وقواعد البيانات (المعنية).
ب-   بعد المراجعة مع المحلل والتأكد من نمطية الجداول وقواعد البيانات لكل شاشات الإدخال بقاعدة جدول أو قاعدة بيانات شاشة (يتم إدخال أسماء الكينونات جميعاً مثل الأفراد  وأسماء  الإدارات  وأسماء   --- والأنواع).