فصل ١ - قواعد البيانات (Database) - PDF
Document Details
Uploaded by GoodlyCliché7993
جامعة فلسطين التقنية خضوري
Tags
Summary
This document is an introductory chapter on databases, discussing their fundamental concepts, types, and applications focusing on the historical context and evolution of database systems. It covers topics such as the definition of databases and different types based on their data and functionalities such as text-based or multimedia-based systems.
Full Transcript
# الفصل الأول ## قواعد البيانات (Database) ### 1-1 مقدمة تلعب قواعد البيانات (Database) دورا هاما في حياتنا اليومية، حيث اصبحت ضرورية في كثير من المجالات في وقتنا الحاضر، واضاف استخدامها فعالية كبيرة لجهاز الحاسوب فلا يكاد يخلو مجال من المجالات من وجودها او استخدامها فالمؤسسات العملاقة تعتمد في...
# الفصل الأول ## قواعد البيانات (Database) ### 1-1 مقدمة تلعب قواعد البيانات (Database) دورا هاما في حياتنا اليومية، حيث اصبحت ضرورية في كثير من المجالات في وقتنا الحاضر، واضاف استخدامها فعالية كبيرة لجهاز الحاسوب فلا يكاد يخلو مجال من المجالات من وجودها او استخدامها فالمؤسسات العملاقة تعتمد في عملها بشكل كبير على قواعد البيانات كما في المؤسسات المتوسطة والصغيرة، فالدوائر الحكومية اصبحت محوسبة في كثير من البلدان وخاصة بعد انتشار مصطلح ما يعرف بالحكومة الالكترونية (Electronic Government)، وكذلك البنوك والمستشفيات والفنادق والمصانع والشركات والجامعات وغيرها من المرافق، وتعد تكنولوجيا نظم قواعد البيانات صاحبة فضل كبير وسبباً مباشراً في الانتشار الواسع لاستخدام الحاسوب. ### 1- نبذة عن قواعد البيانات قواعد البيانات ليست حديثة العهد فهي وجدت وولدت مع ظهور علم الارشفة والتصنيف، فالارشيف يمثل الصورة الواضحة والبسيطة عن قاعدة البيانات اذ أن قاعدة البيانات ليست بالضرورة ان تكون الكترونية او محوسبة، لكن في وقتنا الحاضر اقترن المصطلح بنظم قواعد البيانات المحوسبة. قواعد البيانات في الأساس كانت عبارة عن نصوص وأرقام وهو ما كان يعرف بقواعد البيانات التقليدية (Traditional Database)، الا انه ظهر اتجاهات أخرى . القواعد البيانات تعتمد أساليباً وتقنيات مختلفة مثل الرسومات والألوان وهو ما يعرف بالوسائط المتعددة (Multimedia) وكذلك تجام نظم المعلومات الجغرافية (GIS). Geographical Information Systems(ويمكن الجزم ان قواعد البيانات ظهرت كانعكاس للاعمال التي كانت تتم بشكل يدوي، فسجلات المكتبة تعتبر من النوع ### تعريف قواعد البيانات :- قواعد البيانات هي صيغة تعبر عن مجموعة من البيانات المترابطة، والمتعلقة بموضوع معين أو تخدم غرضا ما، وتكون بياناتها مرتبة ومنظمة بطريقة يسهل الوصول * إلىها، وهي عبارة عن مبدأ هيكلي لخزن واسترجاع البيانات. من هنا جاء التحديـد حتى لا نطلق هذا المصطلح على اي نص او اي بيانات. بشكل عام قواعد البيانات هي مجموعة من البيانات المترابطة ذات معاني محددة، لكن اذا نظرنا فسنجد الكثير من العمومية في هذا التعريف اذ انه ينطبق على اي مجموعة من البيانات المترابطة، ونعلم انه في العاده يكون القصد من مصطلح قواعد البيانات أمر محدد لذا لا بد من وضع ضوابط لتحديد متى يمكن تسمية مجموعة البيانات المترابطة بقاعدة بيانات حتى نستطيع التمييز بين نص ما، احد نصوص هذا الكتاب مثلاً، وقواعد البيانات، ويمكن ذكر بعض المحددات كالتالي: 1. أن تصف هذه البيانات مجالا محدداً في الحياة، وهو ما يطلق عليه العالم المصغر Miniworld حيث ان اي تغيير يحصل في العلم المصغر أو المجال ينعكس على قاعدة البيانات. 2. يجب ان تكون البيانات مترابطه ترابطاً منطقياً، حيث ان الادخال العشوائي للبيانات لا يمكن ان يعكس المجال او الموضوع بشكل صحيح وواضح، كما في قواعد البيانات. 3. هناك سبب ما لتصميم وبناء ونشر واعلان البيانات في قاعدة البيانات، حيث ان هناك مجموعة من المهتمين بموضوع قاعدة البيانات. وبكلمات اخرى فان قاعدة البيانات يجب ان تستقي بياناتها من المحيط او من العالم المصغر كما يطلق عليه، بحيث تكون مترابطة ترابطا منطقياً، وكذلك يوجـد مـن يهتم بهذه البيانات ويتفاعل معها بشكل ملموس. وقاعدة البيانات يمكن ان تكون بأي حجم وبأي درجة من التعقيد، فعلى سبيل المثال قوائم الاسماء والعناوين يمكن ان تحتوي على جدول واحـد تـسـجـل فيـه هـذه البيانات، في حين ان قاعدة بيانات محوسبه لشركة ما يمكن ان تحتوي على الكثير من الجداول كل منها يحتوي على بيانات محددة لموضوع ما بحيث يكون بينها رابط معين، بالتأكيد ستكون درجة التعقيد في قاعدة البيانات الثانية اكبر بكثير من الأولى. ### 3-1 اصناف نظم قواعد البيانات وتطبيقاتها حسب المرحله الزمنية : لا يحلوشأن تقنية نظم قواعد البيانات شأن كل الاختراعات تبدأ بالبسيط وتنتهي بشديد التعقيد، وتطور الحاسوب والتقنيات التي واكبته اكثر ما اثر في التطور التكنولوجي، فما كان موجوداً قبل جهاز الحاسوب من هذه التقنيات اختلف او انتقل انتقالاً نوعياً نحو الحداثة لمواكبة التقدم الحاصل صحيح ان قواعد البيانات حين اذ لم تعرف بهذا الاسم الا انها في الواقع تحمل قدر كبير من معاني وصفات قواعد البيانات التي نتعامل معها في النظم الحالية، ويمكن ايجاز تصنيف قواعد البيانات بطرق عدة الا انه سيتم استعراض الأصناف مرتبة تبعاً للمرحلة الزمنية التي ظهرت بها من الاقدم الى الاحدث الا ان هذا التصنيف لن يخلو من التداخل ويمكن ايجازه بالتالي: 1. قواعد البيانات النصية أو الرقمية، وهي تلك التي تحتوي فقط على نصوص و ارقام، كنظام المكتبة مثلاً، فهو يعتمد بشكل اساسي على النصوص والارقام، ويمكنك القول انها انعكاس للأراشيف الورقية الا انها محوسبة، ويمثل هذا النوع من النظم الانواع البدائية من قواعد البيانات. .2 نظم قواعد بيانات الوسائط المتعددة، وهي تلك التي تحتوي على الصور او الاصوات او لقطات الفيديو او اي نوع من الوسائط المتعددة، بالاضافة الى النصوص والارقام مع انها ليست الزاميه، وظهرت كنتيجة طبيعية للاستخدام المتزايد للوسائط المتعددة والاعتماد الكبير عليها في كثير من المجالات وجاءت بعد نظم البيانات النصية وقد تطورت على مراحل، فبدأت بالالوان والصور ثم اشتملت على الاصوات. 3 قواعد بيانات نظم المعلومات الجغرافية( Geographical Information Systems - GIS، وهي تلك التي تحتوي على بيانات الخرائط من احصاآت وغيرها وصور الخرائط بانواعها، ويمكننا القول ان النظام المطروح من قبل شركة جوجل باسم جوجل ايرث (Google earth) خير مثال على هذا النوع، بالاضافة الى النظم التي تستحدثها وتصنعها الدول لاراضيها ومساحاتها، وهي جائت كنتيجة طبيعية للثورة التكنولوجية وانتشار الاقمار الاصطناعية، ويمكن اعتبارها امتداد لنظم قواعد بيانات الوسائط المتعددة الا انها متخصصة في المجال الجغرافي والاحصائي. 4. نظم مخازن البيانات (data warehouses)، وهي تلك القواعد التي تحتوي على كميات كبيرة من البيانات بغرض تخزينها للرجوع اليهـا وقـت الحاجة، مثل اراشيف الدول والشركات والمنظمات الكبرى، وتعتبر امتداد لجميع الانواع السابقة من نظم قواعد البيانات الا انها ليست للاستخدام اليومي او اللحظي المتزامن. 5. نظم قواعد البيانات النشطة والتفاعلية (Real time and active DB)، وهي تلك التي تتعامل معها بشكل تفاعلي من خلال الشبكات المحلية او العالمية، وتشاهدها كثيراً أثناء التعامل بالانترنت وخاصة في المواقع التي تحتاج الي تسجيل (Registration) مثل الاسواق الالكترونية، والمنتديات، وحجوزات الفنادق أو الطيران والبنوك وغيرها، وتعتبر من التطبيقات المعاصرة الواسعة الانتشار وذلك للانتشار الواسع والمتزايد لاستخدام تطبيقات الانترنت والتعليم الالكتروني والاعتماد عليها في الكثير من المجالات والتطبيقات الحديثه. ### 1-4 النظم المحوسبة- (Computerized Systems) إذا نظرت من حولك فانك ستكتشف ان كل ما في الكون عبارة عن انظمة كل يعمل حسب شروط وضوابط محدده، ويمكنه ان يتعامل مع الانظمة الأخرى ويمكنه ان يتأثر ويؤثر بها، فجسم الانسان عباره عن نظام بيلوجي يتكون من مجموعـة مـن الاجهزة، مثل الجهاز الهضمي، والجهاز التنفسي والجهاز العصبي وما الى هنالك من نظم تكون جسم الانسان كنظام متكامل. اذا فما هو النظام ومتى يمكن ان نطلق عليه اسم نظام؟ فالنظام هو عبارة عن مجموعة من المصادر تعمل مع بعضها البعض * لتحويل المدخلات الى مخرجات صالحة للاستخدام. ويمكن القول ان النظام المحوسب هو عبارة عن مجموعة من المصادر تعمل مع بعضها البعض بطرق وعلاقات محددة لتحويل المدخلات الى مخرجات صالحة للاستخدام المباشر او الغير مباشر باستخدام الحاسوب، وعادة ما تتكون النظم المحوسبة من ستة عناصر رئيسة كالتالي: 1. المكونات المادية او التجهيزات (Hard Ware). 2. المكونات البرمجية (Soft Ware). * تختلف طبيعة هذه المكونات من 3 الانسان. 4. القواعد والقوانين المسيرة لقاعدة البيانات. 5. المدخلات (Input). 6. المخرجات (Output) وتنسجم هذه المكونات ليؤدي كل مكون منها وظيفته في عملية تحويل المدخلات الى المخرجات، وليس بالضرورة تواجد هذه المكونات بشكل كامل في جميع النظم اذ ان النظم تختلف في طبيعتها وتركيبتها وهدفها، فبعضها مثلا يمكن ان لا يكون الانسان جزأ منه او غير ذلك، وتختلف طبيعة هذه المكونات من نظام الى اخر. ### 5-1 مكونات نظم قواعد البيانات 1. التجهيزات (Hardware) من أجهزة حاسوب وطرفيات، وبما انك تعلم ان نظم قواعد البيانات محوسبة يجب ان يتوفر جهاز حاسوب او عدة اجهزة تخدم هذا الغرض، ويمكن ان يكون هناك حاجة لتجهيزات اخرى مثل الماسح الضوئي او السكانر (Scanner)، كما في محلات السوبرماركت، والكاميرات الرقمية، أو بعض المجسات وغيرها، او اي طرفيات اخرى تتعامل مع اي من انواع الوسائط المتعددة وغيرها، وتبقى نوعية التجهيزات اللازمة للنظام / مرهونة بطبيعته. 2. البرمجيات وتشمل نظم التشغيل للجهاز المستخدم مثل ويندوز (Windows) او یونیکس (Unix) او لينوكس (Linux) اوغيرها، وأحد برامج نظم إدارة قواعد البيانات (DBMS Software) المختلفة مثل اوراكل (Oracle)، او (SQL-SERVER)، او (IBM-DB2)، أو اكسس (Access)، او اي من نظم ادارة قواعد البيانات (DBMS) الاخرى. وكذلك برامج التطبيقات والبرامج المساعدة (Utilities programs)، كمعالجات النصوص، او الاصوات او الصور وغيرها او بعض البرامج الخاصة التي يحتاجها النظام. 3 الإنسان، يقوم بدور محوري في مختلف المراحل الي تمر بها قاعدة البيانات والنظام، ويلعب ادوار مختلفة في هذه المراحل كالتالي: ا مدير (إدارة) قاعدة البيانات (Database Administrator- DBA). أ. ب مصمم النظام (DB Designer). ج محللو النظام والمبرمجون )System analysts and programmers( د المستخدم النهائى (End User). د. الإجراءات، وتتضمن التعليمات والقواعد التي تحكم التصميم والاستخدام لنظام قواعد البيانات، ويقوم المبرمج بوضعها بتوصية من المصمم الذي تلقى تعليماته من المدير ومن المعنيين بالموضوع مثل الزبون الذي طلب النظام. و البيانات، التي تمثل مجموعة من الحقائق المخزونة في قاعدة البيانات. ### 6-1 مواصفات النظم (عام) تبدي النظم مواصفات عامة لمعظمها منها التالي: 1. تتكون من عناصر مترابطة ومستقلة. 2. عناصر النظام تؤدي وظائف خاصة ومحدده. 3. يمكن للنظام ان يتكون من انظمة فرعية مستقله، تتعامل فيما بينها. 4. لا يشترط في النظام ان يتكون من العناصر الستة المذكورة اعلاه. ### 7-1 نظم قواعد البيانات (Database Systems) عبارة عن برامج لنظم إدارة قواعد البيانات جنباً إلى جنب مع البيانات وفي بعض الأحيان تكون التطبيقات جزء منها، ويفهم من السياق ان النظم دائماً محوسبه ومن هنا تظهر مصطلحات جديدة كمصطلح نظم إدارة قواعد البيانات (Database Management System-DBMS) حيث انه عبارة عن حزمة من البرامج أو النظم لتسهيل ادارة وإنشاء (Create), وصيانة (Maintenance)، ومعالجة (Process)، والوصول إلى والتعامل مع قواعد البيانات المحوسبة مثل اوراكل (Oracle)، أكسس والشكل 1-1 يمثل بيئة نظم قواعد البيانات ومصطلح بيانات (Data) يعبر عن حقائق معروفة يمكن تسجيلها ولها معنى واضح ومحدد في حال تجميعها وترتيبها، كبيانات الطلاب مثلاً سؤال المقصود ببيئة نظام قواعد البيانات؟ ## الشكل (1-1) بيئة نظم قواعد البيانات (Database System) ### 8-1 صعوبة وتعقيد النظام تتفاوت نظم قواعد البيانات في درجات التعقيد والصعوبة ويعتمد ذلك على : عدة عوامل منها التالي: 1. حجم المنظمة أو الشركة، محلية او دولية او اقليمية. 2 وظيفة ونشاط المنظمة أو الشركة خيرية تجـارية صناعية، زراعية، سياسية، اجتماعية وغيرها. 3 بيئة عمل المنظمة من الناحية البيئية من حيث الرطوبة والجفاف، البرودة والحرارة، توفر المياه الهدوء والاستقرار من حيث النزاعات والصراعات والزلازل، ومن حيث الاستقرار الصحي ووجود الملوثات او احتمالية تفشي الأوبئة، وغير ذلك من الأمور التي قد تؤثر في النظام. 4. طريقة عمل المنظمة عمل ميداني مكتبي، مشترك او غير ذلك. قواعد البيانات يجب أن تكون مجدية أو مفيدة من الناحية المادية ومن الناحية الاستراتيجية وإلا فهي في خانة الخسارة لا الربح، حيث يجب ان يحسب حساب كل العوامل التي تتحكم وتؤثر في صعوبة وتعقيد النظام. ### 9-1 أصناف نظم قواعد البيانات يمكن تصنيف نظم قواعد البيانات بطرق مختلفة، الا ان الكثير من المختصين يعتمدون معايير التصنيف التالية: 1. حسب مكان او موقع النظام: ا مركزي (Centralized)، حيث يتم تخزين بيانات النظام في موقع واحد فقط ويتم الاتصال به في حال الحاجة لاستخدام قاعدة البيانات. ♡ ب. متشعب او موزع (Distributed)، حيث توزع اجزاء النظام المختلفة والبيانات ونظم ادارة قواعد البيانات على عدة مواقع ترتبط فيما بينها بشبكة حاسوبية، ويمكن لهذا النوع ان يكون متجانس (Homogenous)، حيث يحتوي على نوع موحد من نظم ادارة قواعد البيانات والبرامج والتجهيزات في المواقع المختلفة، أو غير متجانس (Heterogeneous)، يحتوي على انواع مختلفة من نظم ادارة قواعد البيانات والبرامج والتجهيزات في المواقع المختلفة 2. حسب استخدام النظام: ا. إنتاجي (Transactional)، ويشمل كل النظم في المجالات الانتاجية مثل: 1. النظم المحاسبية والمالية. 2. نظم المبيعات. 3. نظم الطلبيات والحجوزات. 4. نظم شؤون الموظفين. 5. نظم معالجة النصوص والارشفة، وغيرها. 6. النظم الصناعية. ب. المساندة في اتخاذ القرار (Decision Support)، وتساعد النظم الحاسوبية في اتخاذ القرارات المناسبة في الكثير من المجالات، منها المجالات التالية: 1. زيادة المبيعات. 2. التخطيط السليم للمستقبل. 3. حل مشاكل الأفراد. 3 حسب عدد مستخدمي النظام: ا مستخدم واحد (Single user)، حيث يتم استخدام النظــام مـن قبــل مستخدم واحد فقط في ذات الوقت ومثال ذلك النظم التي تحمل على الحاسوب الشخصي (Personal Computer-PC) بشكل فردي وغير مشتركة بين الافراد عبر شبكة حاسوبية ويخدم النظام شخص واحد فقط في نفس الوقت. ب. أكثر من مستخدم (Multi-user) ، حيث يتم استخدام النظام من قبل اكثر من مستخدم بشكل متزامن وهذا ما تدعمه معظم نظم ادارة قواعد البيانات، ويمكن ان يكون النظام محمل على محطة عمل (Work Station) (Sarver أو حاسوب شخصي مرتبط بشبكة يمكن لمجموعة من المستخدمين الاستفادة منه في نفس الوقت ### 10-1 وظائف نظم إدارة قواعد البيانات (DBMS) إدارة نظم قواعد البيانات تلعب دور الوسيط بين المستخدم وقاعدة البيانات ويمكن اجمال الوظائف التي تؤديها بالتالي: 1. إنشاء قاعدة البيانات أو تطويرها والتعامل معها. 2. توضيح طبيعة قاعدة البيانات (أنواع البيانات الهيكلية، القيود والشروط). 3. تحميل قاعدة البيانات على واسطة تخزين ثانوية، مسيطر عليها من قبل نظام ادارة قواعد البيانات (DBMS). 4. التعامل مع قواعد البيانات (Manipulating DB) مثل الاستعلام، إنشاء التقارير، الإدخال الحذف وتعديل محتويات قاعدة البيانات وتحديثها لتعكس التغيرات في المجال الذي بنيت من اجله. 5. المعالجة المتزامنة (Concurrent Processing) ومشاركة أكثر من مستخدم، لتسمح قاعدة البيانات لاكثر من مستخدم بالدخول والتعامل معها بشكل متزامن. 6. الحماية ويقصد بذلك حماية النظام من اخطاء او اخفاقات المعدات HW او البرمجيات SW، فضلاً عن منع الاشخاص الغير مخولين من استخدام النظام لتأكيد السرية والمحافظة على مستوى عال منها. 7. صيانة النظام والسماح بتطوير المعايير مع مرور الزمن استجابة لاي متطلبات جديدة قد تطرأ، لان النظم لها دورة حياة تمتد لفترة من الزمن وكلما كانت مرنة تجاه المستجدات كانت دورة حياتها اطول. 8 عرض البيانات لاستخدامها والاستفادة منها ومعاينتها. ### 11-1 الصفات الرئيسة لنظم قواعد البيانات (DB Systems Characteristics) 1 ذاتية الوصف (Self describing)، تحتوي DBMS على Catalog يقوم بتخزين وصف لكل قاعدة بيانات منشئة من خلاله، حيث ان هذا الوصف هو وصف تصميمي للبيانات من حيث انواعها، وهيكليتها، والشروط والمعايير عليها وهو يعرف بـ(Meta Data)، وهذا يسمح لبرامج نظم إدارة قواعد البيانات (DBMS) لعمل أو التعامل مع أكثر من قاعدة بيانات (DB). 2 الفصل بين البرامج والبيانات، وتسمى استقلالية البرامج والبيانات (Program Data Independence وهذا يسمح بتغير هيكلية وتركيبة التخزين والعمليات دون الحاجة لتغير برامج نظم إدارة قواعد البيانات (DBMS). 3 تجريد البيانات (Data Abstraction)، تستخدم نماذج البيانات (Data Models) لإخفاء تفاصيل التخزين عن المستخدم، وفقط عرض مشهد تصويري أو مفاهيمي (Conceptual View) من قاعدة البيانات. حيث ان تفاصيل انواع البيانات واماكن تخزينها لا يهم المستخدم ولا يجب ان ترهقة بالتفكير به وخاصة ان المستخدمين ليسوا من المختصين في معظم الاحيان، ولا تهمه هكذا تفاصيل. 4. مساندة ودعم الأشكال المتعددة (Multiple Views) للبيانات، فيمكن لكل مستخدم مشاهدة شكل (View) لقاعدة البيانات مختلف عن الآخرين، وهذا الشكل يهم ذلك المستخدم بشكل خاص. 5. مشاركة البيانات والمعالجة الإجرائية لعدة مستخدمين (Multi User transaction processing حيث تسمح لمجموعة المستخدمين بالعمل والاتصال بقاعدة البيانات بشكل متزامن (concurrency control). ### 12-1 مستخدمو نظم قواعد البيانات مر معك ان الانسان جزء من نظام قاعدة البانات، ويلعب الانسان أدواراً مختلفة منذ ولادة فكرة النظام الى الانتهاء منه واستخدامه وتقسم الادوار الرئيسة التي يمكن القيام بها الى الاتي: 1. مدير قاعدة البيانات (Database Administrator) وهو مسؤول عن: أ. إعطاء صلاحيات استخدام قاعدة البيانات. ب. التنسيق ومراقبة الاستخدام. ج. مراقبة ورصد ضعف البرامج والتجهيزات والتحكم باستخدامها. د. مراقبة فاعلية العمليات على قاعدة البيانات. ه قبول او رفض مـقـتـرحـات محلل النظام ومصمم النظام. 2 محلل النظام والمبرمج (System analyst and programmer) ويمكن ان يعمل في تحليل النظام وبرمجته عدد من المحللين والمبرمجين ويعتمد ذلك على حجم النظام كما يمكن أن يكون المحلل والمبرمج هو شخص واحد، والعمل الرئيس الذي يقوم به المحلل والمبرمج كالتالي: أ. استلام معايير النظام من ادارة النظام أو الزبون (شركة، مؤسسة، منظمه) ودراستها . . ب. الاتصال بالمستخدمين (المستفيدين) ليتعرف على احتياجاتهم ومتطلباتهم حتى يتمكن من وضع تصور مناسب للنظام. ج تجديد مدخلات ومخرجات النظام. اعداد تصور كامل عن النظام للاداره. د ه. الحصول على موافقة الاداره بالاستمرار او بايقاف العمل بعد انجاز الدراسة الأولية للنظام. و وضع تصور عن تصميم النظام. ز. برمجة النظام (Programming). ح. تجريب النظام (Testing). ط. صـيانة النظام (maintenance). وكل مرحلة من هذه المراحل تتطلب خطوات محدده ولها اساليب خاصة ولانبغي ان يكون قد عمل كمبرمج محترف لفترة من الزمن وهو في مرحلة متقدمة عن المبرمج وفي النظم الصغيرة يمكن ان يقوم المبرمج ويعمل المحلل او العكس. ### 3 مصمم قاعدة البيانات (Database Designer) وهناك بعض التداخل بين عمل المحلل والمصمم في بعض المراحـل مـن دورة حياة النظام، ومن وظائفه: **أ. صياغة وتحديد المحتويات. ب. صياغة وتحديد شكل مدخلات النظام ومخرجاته. ج. صياغة وتحديد الهيكلية المطلوبه. د. صياغة وتحديد القيود والشروط على البيانات. ه. تحديد الوظائف والإجراءات على قواعد البيانات.** *من الضروري التنويه إلى انه لا يوجد فصل تام بين وظائف المصمم والمحلل والمبرمج في تنفيذ اعمالهم، حيث انه من الممكن ان تتداخل في أوقات التنفيذ وخاصة* بعد انتهاء المرحلة الأولية من التحليل، وغالباً ما نجدهم يعملون في النظم الكبيرة التي تحتاج الى جهد ووقت كبيرين، أما في النظم الصغيرة فانه من الممكن ان يشرف عليها ويتعامل معها شخص واحد وغالباً ما يكون المبرمج. 4. المستخدم النهائي (End User) وهم المستخدمين الذين يتعاملون مع قواعد البيانات لأجل الاستعلام أو التقرير والقليل منهم يكون مهمته التعديل على محتوى قاعدة البيانات وهم أنواع: أ. المستخدم العرضي (Casual User) وهو المستخدم الذي يتعامل مع قاعدة البيانات بصفة عرضية وعند الحاجة فقط. ب. المستخدم البسيط (Naive User or Parametric) وهو المستخدم المحدد الخطوات لأنه يستخدم قاعدة البيانات بصورة محددة وهذا النوع من المستخدمين يشكل الغالبية العظمى من المستخدمين ومثال هذا النوع، موظفي البنوك أو الاستعلامات أو الحجوزات وغيرهـم مـن مـن يتبعون خطوات محددة في انجاز مهامهم. ج. المستخدم المتطور (Sophisticated User) ومن هذه الشريحة محللي الأعمال، المهندسين، والعلماء حيث يمكنهم استخدام برامج تعمل بشكل وثيق مع البيانات المخزونة، ويمكنه عمل برامج خاصـة بـه لاستخدامها في قواعد البيانات للحصول على امور خاصة تساعده في عمله. د. المستخدم المستقل (Stand alone) في معظم الأحيان يحتفظون بقواعد بيانات خاصة بهم، مستخدمين حزم برمجية جاهزة تتعلق بعملهم، مثل جباة الضرائب الذين ينشؤن قواعد بيانات مستقلة خاصة بهم. ### 13-1 فوائد استخدام قواعد البيانات لاستخدام نظم قواعد البيانات فوائد عظيمة يصعب حصرها حيث انها حولت الكثير من ما كان حلما في عالم التكنولوجيا الى حقيقة واقعة ومن هذه الفوائد التالي: 1. التحكم بالتكرار تقليله قدر الامكان) في البيانات المخزونة. 2. تقليل الجهد اللازم للصيانة في مرحلة التطوير. 3 مشاركة البيانات بين أكثر من مستخدم (Data Sharing). .4. توفير الامن والحماية للبيانات ومنع الاستخدام الغير مخولين. 5. اعتماد هيكلية محددة في تخزين البيانات لأجل الاستعلام بشكل سهل وفعال. 6. التخزين الفوري او اللحظي للبيانات (Instance Storage). 7. التقيد بمعايير محددة للبيانات، وذلك هام جداً في المنظمات والمؤسسات الكبيرة للإلتزام بأشكال محددة في الاستعلام أو التقارير أو ادخال البيانات وحفظها و كل هذا يجب ان يكون موضح في ال (Catalog) او (Meta Data) الذي هو عبارة عن ملف وصف البيانات في قاعدة البيانات. 8. تقليل الوقت اللازم في تطوير التطبيقات وامكانية اضافة اي تطبيقات جديدة للنظام. 9. المرونة في تغيير هيكلية البيانات، فيمكن تطوير هيكلية قاعدة البيانات فور تحديد متطلبات جديدة. 10. توفر إمكانية التحديث الفوري او المتزامن للبيانات وهذا مهم جدا بالنسبة للنظم الإجرائية المباشرة .)Online Transaction (System( 11. تمثيل البيانات تبعاً لهيكلية المؤسسة بصورة قريبة من الهيكلية الواقعية المعروفة لها، حيث ان ترتيب المعلومات في نظم قواعد البيانات شبيه بواقع وهيكليـة المنظمة . 12. الفائدة الاقتصادية كنتيجة طبيعية لكل ماسبق ذكره، اضافة الى اشتراك المستخدمين والأقسام المختلفة في البيانات والتطبيقات والحد من إضاعة وفقدان البيانات وتبديد المصادر من قبل العاملين، وبالتالي كـل ذلـك يفيد في تقليل المصاريف الادارية الى حد كبير. ### 14-1 معالجة الملفات التقليدية لم تكن قواعد البيانات من اوائل التطبيقات التي ظهرت للتعامل مع البيانات، فقبلها كان ما يعرف باسم نظم الملفات التي عرفت فيما بعد بنظم الملفات التقليدية التي كانت تعاني من صعوبات ومشاكل واخفاقات في كثير من الاحيان الا ان ذلك لم يكن ليؤبه به لو لم تظهر تقنية قواعد البيانات ولم تتم المقارنة بينهما. ### 15-1 مقارنة نظم إدارة الملفات التقليدية بقواعد البيانات هناك مجموعة من المفاهيم التي تفـرق بـيـن قـواعـد البيانات ومعالجة الملفات التقليدية، ففي معالجة الملفات التقليدية فان كل مستخدم وحسب طبيعة عمـله يـقــوم باستخدام الملفات الضرورية لعمل تطبيق برمجي معين كجزء من برمجة التطبيق، وكمثال على ذلك فالقسم المسؤول عن تقارير العلامات في دائرة التسجيل يمكن ان يحتفظ بملفات الطلاب وعلاماتهم، كما يقوم باستخدام برامج اضافية لطباعة العلامات او الاضافة علامات جديدة الى الملفات الاصلية، وتستخدم هذه الملفات كجزء من التطبيق. من جهة اخرى، فالدائرة المالية مثلاً تعنى ايضا بالطلاب لكن من جهة التعاملات المالية كدفع الرسوم وغيرها لذلك فان هذه الدائرة تحتفظ بملف الطلاب ايضا، تلاحظ ان موظف دائرة التسجيل تعامل مع بيانات الطلاب وموظف دائرة المالية تعامل مع نفس البيانات لكن في مكان اخر وبشكل مستقل وترى ان كلا الموظفين او الدائرتين يهتمون بنفس البيانات، وتلاحظ ان كل منهما يستخدم ملفات مختلفة عن ملفات الآخر وكذلك برامج مختلفة لكليهما للتعامل مع هذة الملفات وذلك لان كل منهما يحتاج الى بعض البيانات الغير متاحة للطرف الآخر، وفي المحصلة تستنتج أن كلا الدائرتين ستقوم بادخال بيانات معينة عن الطالب قد يكون الطرف أ الآخر كتبها أو أعاد كتابتها لاستخدامها في عمله، وهذا يعتبر عمل إضافي وجهد لا . حاجة لاضاعة وقت اخر لانجازه لو كانت الملفات في نظام واحد او كانت امكانية تشارك البيانات بين كلا الطرفين متاحة، كما انه من الواضح ان هناك استهلاك وسائط تخزين اضافية. ومن اكثر المشاكل خطورة هي ظهور الاخطاء في احد الملفات اذ يتطلب اصلاحها المرور على نفس البيانات في جميع الملفات التي تحتويها. ويمكن ايجاز بعض الصعوبات المترتبة على استخدام معالجة الملفات التقليدية بالاتي: 1. نظم الملفات تتطلب برمجة شاملة بأحد لغات البرمجة من الجيل الثالث (العالية المستوى). 2. كلما اتسع وكبر نظام الملفات كلما كانت إدارته اصعب، وبالتالي الحصول على البيانات واستردادها اصعب. 3. إجراء أي تعديلات في تركيبة نظم الملفات الموجودة ممكنه لكنها صعبة. 4. إمكانيات الحماية للبيانات صعبة البرمجة وعادة ما يتم إهمالها. 5. تغيير تركيبة أي ملف تتطلب التعديل على كل البرامج التي تستخدم ذلك الملفيه وهذا ما يسمى بالاستقلالية الإنشائية. 6. التعديل على مواصفات البيانات تتطلب تغيير في كـل بـرامج الوصول إلى البيانات (Data access programs)، وهذا ما يجعل برمجة نظم الملفات متعبة جداً من وجهة نظر إدارة البيانات، ولحل هذه المشكلة استحدث مـا يعـرف باستقلالية البيانات في نظم قواعد البيانات. ونتيجة للصعوبات التي تواجة نظم معالجة الملفات التقليدية تم تبني استخدام تقنية نظم قواعد البيانات بشغف بالغ وانتشرت إنتشاراً واسعاً في شتى المجالات الحياتية. ) ### 16-1 مراحل تطور تطبيقات قواعد البيانات لم يكن ظهور قواعد البيانات فجائياً أو مرة واحدة، فشأن هذة التقنية شأن كــل الاختراعات تبدأ بالبسيط وتنتهي بشديد التعقيد فالسجلات المفهرسة والاراشيف والتصنيفات في المجالات المختلفة، مثل مصنفات المكتبات، واراشيف المؤسسات والـدول تعتبر امثلة واقعية عن ما كان موجوداً قبل جهاز الحاسوب والتقنيات التي واكبته، صحيح انها حين اذ لم يطلق عليها قواعد بيانات الا انها في الواقع تحمــل قـدر كبير من معاني وصفات قواعد البيانات، ويمكن ايجاز المراحل التي مر بها تطور قواعد البيانات بالاتي: #### 1-16-1 تطبيقات أو نظم قواعد البيانات البدائية (Early DB applications) )Hierarchical model and Network ظهرت النماذج الهيكلية والشبكية (model لقواعد البيانات منتصف الستينات 1960 وسيطرت في فتره السبعينات حيث انتشرت بشكل واسع وتعدت حدود المؤسسات الكبيرة والحكومية الى الشركات المتوسطة الحجم والصغيرة وحتى الى المستخدمين الافراد والكثير من نظم قواعد البيانات التي كانت موجودة حين اذ حول العالم لازال موجوداً ويستخدم حتـى هـذا الوقت. #### 1-16-2- النماذج العلائقيه (Relational Model Based System) تم تقديم هذا النموذج من خلال شركة IBM اعتماداً على النموذج المقدم من E.F. Codd و ظهرت منتجات نظم إدارة قواعد البيانات العلائقيه للمستخدمين لأول مرة في الثمانينات 1980 من القرن الماضي، ومنذ ذلك الوقت ساهمت هذه التقنية في الانتشار الكبير لاستخدام اجهزة الحاسوب بفضل ما قدمته في مجال معالجة البيانات المترابطة أو العلائقية وتقوم هذه التقنية على نظرية المجموعات في الرياضيات وتنطبق عليهاـا كــل العمليات الجبرية الخاصة بالمجموعات وتم ترجمة هذه العمليات بلغة ال SQL #### 3-16-1 نظم قواعد البيانات الكائنية العلائقية (Object Relational Databases ORDB) تمتد إمكانات نظم إدارة قواعد البيانات العلائقية لاستخدام مفاهيم البرمجة كائنية المنحي لخدمة قواعد البيانات الكائنية العلائقية وامكاناتها. #### 4-16-1 نظم قواعد البيانات الكائنية المنحى (Object Oriented Databases-OODB) قدمت لأول مرة في الثمانينات وبداية التسعينات من القرن الماضي لترفد وتزود الحاجة الى العمليات المعقدة علي البيانات في بعض التطبيقات، والزيادة الكبيرة في حجم البيانات وتشعب العمليات وتعقيدها عليها وظهور تقنيات جديدة في عالم البرمجيات تتبنى نفس التقنية ساهم في انتشار تقنية قواعد البيانات الكائنية المنحى بشكل كبير. #### 5-16-1 نظم قواعد البيانات التفاعلية (Interactive Database Systems) البيانات على تطبيقات الويب وبيانات تطبيقات التجارة الإلكترونية أدى إلى ظهور التطبيقات التكنولوجية الحديثة واتـساع رقعة استخدام الانترنت والتسارع الكبير في ظهور التطبيقات التي شملت نواحي الحياة المختلفة عليـها مثل التجـارة الالكترونية، والبرامج التفاعلية، والتعليم الالكتروني وتطبيقات الحكومات الالكترونية وتبنيها من قبل شريحة كبيرة من المستخدمين لسهولتها وفوائدها العظيمة واستخدامها لمعايير جديدة مثل XML ، وغيرها الذي ادى الى انتشار هذا النوع من نظم قواعد البيانات. وسع هذه التطورات أصبحت نظم ادارة قواعد البيانات (Database Management Systems DBMS) لها وظائف إضافية ودخلت مجالات أخرى مثل التطبيقات العلمية وإدارة وتخزين الصور وإدارة ملفات الصوت والصورة و تنقيب البيانات (Data Mining) ونظم المعلومات الجغرافية او الفضائية (Geographical Information Systems-GIS) وإدارة البيانات المتسلسلة الآنية .)on-line( ### 17-1 ضعف جدوى استخدام DBMS ظهور التقنيات الحديثة ليس بالضرورة ان يكون ايجابياً على كل نواحي الحياة فقد تخدم تقنية معينة مجال ما بشكل فعال ومفيد ومرب