You are on page 1of 16

‫بالتعاون مع بلدية دبي‬ ‫المعهد العربي لنماءالمدن‬

-:‫يقدم دورة‬
‫تحليل وتصميم النظم‬
Modern Systems Analysis and Design

10
‫تخطيط متطلبات النظام‬
Structuring System Requirements:
‫التخطيط الولي للبيانات‬
Conceptual Data Modeling

10.1
Copyright 2002 Prentice-Hall, Inc.
‫الهدف‬
‫ تعريف مصطلحات التخطيط الولي للبيانات‬
Entity type ‫نوع الكائن‬ 

Attribute ‫صفة‬ 

Multivalued attribute ‫صفة ذات قيم متعددة‬ 

Relationship ‫العلقة‬ 

Degree ‫الدرجة‬ 

Cardinality ‫الرئيسي‬ 

Business Rule ‫قواعد العمل‬ 

Associative entity ‫كائن مشترك‬ 

Trigger ‫المقداح‬ 

Supertype ‫النوع الرئيسي‬ 

Subtype ‫النوع الفرعي‬ 


10.2
‫تخطيط الفهم الولي للبيانات‬
‫‪Conceptual Data Modeling‬‬
‫يستخدم لتمثيل بيانات المؤسسة‬
‫الغرض هو إظهار (القواعد حول) المعنى والعلقات بين البيانات‬
‫يستخدم عادة مخطط الكائنات وعلقتها (‪Entity-Relationship )E-R‬‬
‫‪ diagrams‬لتوضيح كيفية تنظيم البيانات في المؤسسة‬
‫الهدف منه هو إنشاء مخطط كائنات وعلقات دقيق (‪)E-R‬‬
‫يجب المحافظة على التجانس والتناسق بين تدفق الجراءات ومنطق‬
‫القرارات وتوصيف مخططات البيانات‬
‫الخطوة الولي هي عمل مخطط بيانات للنظام القديم الذي سيستبدل‬
‫ثانيا ‪ -:‬يبنى مخطط جديد يشمل متطلبات النظام الجديد‬
‫في مرحلة التصميم يتحول ويخرج من هذا التصميم الحقيقي‬
‫مخزن بيانات المشروع ‪ Project repository‬يربط كل خطوات تصميم‬
‫وتخطيط البيانات أثناء دورة حياة تطوير النظام ‪SDLC‬‬
‫‪10.3‬‬
‫المخرجات والنتائج‬
‫‪Deliverables and Outcome‬‬

‫المخرج الرئيسي هو مخطط الكائنات والعلقات‬


‫يمكن أن يكون هناك حتى عدد ‪ 4‬مخططات منه في هذه‬
‫المرحلة‬
‫تمثيل البيانات المطلوبة في التطبيق‬ ‫‪‬‬

‫تمثيل النظام القديم الذي سيستبدل‬ ‫‪‬‬

‫تمثيل للنظام الشامل الذي هو جزء منه بيانات هذا التطبيق‬ ‫‪‬‬

‫المطلوب‬
‫تمثيل للنظام الشامل القديم الذي هو جزء منه بيانات هذا‬ ‫‪‬‬

‫التطبيق الذي سيستبدل‬


‫‪10.4‬‬
Figure 10-3
Sample conceptual data model diagram -: ‫مثال‬

10.5
‫المخرجات والنتائج‬
‫‪Deliverables and Outcome‬‬
‫المخرج الثاني هو مجموعة من المدخلت لتوصيف البيانات وتخزن في مخزن‬
‫المشروع أو قاموسه‬
‫مخزن البيانات يربط البيانات بالجراءات بالمخططات المنطقية في نظام معلومات واحد‬ ‫‪‬‬

‫أجزاء وعناصر البيانات التي تظهر في ‪ DFD‬يجب أن تظهر في مخطط البيانات والعكس‬ ‫‪‬‬

‫صحيح ‪ .‬لماذا ؟‬
‫كل مخزن بيانات في مخطط الجراءات يجب أن يرتبط بكيان موجود في مخطط البيانات‬ ‫‪‬‬

‫كيفية تجميع المعلومات لعمل مخطط فهم البيانات الولي‬


‫‪Gathering Information for Con. Data Modeling‬‬
‫يوجد منظورين ‪-:‬‬
‫من أعلى إلى أسفل ‪Top-down‬‬ ‫‪‬‬

‫‪ ‬حيث يشتق المخطط من فهمنا الشامل للعمل والمؤسسة‬


‫من أسفل إلى أعلى ‪Bottom-up‬‬ ‫‪‬‬

‫‪10.6‬‬ ‫‪ ‬حيث يقتصر المر على مراجعة الوثائق الحالية للمؤسسة ومواصفاتها‬
‫مقدمة لمخطط الكائنات والعلقات‬
‫‪Introduction to Entity-Relationship )E-R( Modeling‬‬
‫مصطلحات مستخدمة‬
‫كيان البيانات ‪Data entities‬‬ ‫‪‬‬

‫العلقات ‪Relationships‬‬ ‫‪‬‬

‫الصفات – الخصائص ‪Attributes‬‬ ‫‪‬‬

‫مخطط ‪Entity-Relationship )E-R( Diagram‬‬


‫هو تمثيل منطقي وتفصيلي للكائنات وما فيها من بيانات وتفاصيل لحد المؤسسات أو‬ ‫‪‬‬

‫جزء من أعمالها‬
‫ممصطلحات ‪Key Terms‬‬
‫الكائن ‪Entity‬‬ ‫‪‬‬

‫‪ ‬شخص أو مكان أو شيء أو مفهوم في بيئة المستخدم وتريد المؤسسة أن تحتفظ‬


‫بيانات عنه‪ ،‬وتمثل بمستطيل‬
‫نوع الكائن ‪Entity Type‬‬ ‫‪‬‬

‫‪ ‬مجموعة من الكائنات له خواص وصفات مشتركة‬


‫الصفة أو الخاصية ‪Attribute‬‬ ‫‪‬‬

‫‪ ‬صفة أو معلومة عن الكائن تدخل في اهتمام المؤسسة‬


‫‪10.7‬‬
‫تابع المصطلحات – ‪Key Terms - 2‬‬
‫المعرفات والمفاتيح المرشحة (الحقول المميزة)‬
‫كل نوع كيان يجب أن يحتوى على صفة أو مجموعة صفات تميز كل‬ ‫‪‬‬

‫حدث‪( Instance‬سجل)‬
‫المفتاح المرشح ‪Candidate key‬‬ ‫‪‬‬

‫‪ ‬صفة (حقل) أو مجموعة صفات تميز بشكل فريد كل حدث (سجل) (رقم الهاتف – اسك‬
‫الم – رقم صندوق البريد)‬
‫المعرف ‪Identifier‬‬
‫هو مفتاح مرشح تم اختياره ليميز الحدث بشكل فريد (مثل الرقم القومي)‬ ‫‪‬‬

‫كيف تختاره‬ ‫‪‬‬

‫‪ .1‬ااختر المرشح الذي لن تتغير قيمته مع الوقت (اسم الم – تاريخ الميلد – الرقم‬
‫القومي)‬
‫‪ .2‬اختر المرشح الذي ل يمكن أن تكون قيمته ‪Null‬‬
‫‪ .3‬ل تستخدم المفاتيح الذكية (الستعلم ‪) intelligent keys‬‬
‫‪10.8‬‬ ‫‪ .4‬حاول استبدال قيمة واحدة سهلة كبديل عن المعرف المركب الكبير‬
‫تابع المصطلحات – ‪Key Terms - 3‬‬
‫الصفة ذات القيم المتعددة ‪Multivalued Attribute‬‬
‫يتم تمثيلها بأحد طريقتين‬ ‫‪‬‬

‫‪ ‬قطاع ناقص مزدوج الخط ‪double-lined ellipse‬‬


‫‪ ‬كائن ضعيف ‪weak entity‬‬
‫العلقة ‪Relationship‬‬
‫علقة تربط سجلت في كائن أو أكثر ‪ ،‬وتهم المؤسسة إظهار‬ ‫‪‬‬

‫هذه العلقة‬
‫العلقات تكتب عليها عبارات (أفعال)‬ ‫‪‬‬

‫‪.109‬‬
‫مخطط الفهم الولي للبيانات ومخطط الكائنات والعلقات‬
‫‪Conceptual Data Modeling and the E-R Diagram‬‬

‫الهدف ( تجميع أكبر قدر ممكن من معاني البيانات )‬


‫النتيجة ( تصميم أفضل وأسهل في صيانته )‬

‫‪Conceptual‬‬ ‫‪Logical‬‬

‫‪Physical‬‬
‫‪10.10‬‬
‫درجة العلقات‬
‫‪Degree of Relationship‬‬

‫الدرجة ‪ ( Degree‬عدد الكائنات المشتركة في العلقة )‬


‫أحادية ‪Unary‬‬ ‫‪‬‬

‫‪ ‬علقة بين سجلين في كائن واحد (المدير وموظفيه أو الموظف وزوجنه) وممكن‬
‫أن تكون ‪ One-to-One‬أو ‪One-to-Many‬‬
‫زوجية ‪Binary‬‬ ‫‪‬‬

‫‪ ‬علقة بين سجلين في كائنين ‪ -‬أنظر الرسم (ويمكن أن تكون ‪ 3‬أنواع)‬


‫ثلثية ‪Ternary‬‬ ‫‪‬‬

‫‪ ‬علقة متزامنة بين سجلت ‪ 3‬كائنات ‪ -‬أنظر الرسم‬


‫‪Not the same as three binary relationships ‬‬

‫‪10.11‬‬
Figure 10-6
Example relationships of different degrees

10.12
‫‪Cardinality‬الشتراك – القيم المشتركة ؟؟‬
‫هي عدد السجلت في الكائن الثاني التي ينكم أن ترتبط بكل سجل من الكائن الول‬
‫الحد الدنى من القيم ‪Minimum Cardinality‬‬
‫الحد القصى من القيم‪Maximum Cardinality‬‬
‫رقم الهاتف (الحد الدنى رقم واحد ‪ +‬الحد القصى ‪ 3‬أرقام عمل ‪ +‬منزل ‪+‬‬
‫متحرك)‬
‫تسمية وتعرف العلقات ‪Naming and Defining‬‬
‫استخدم تعبيرات الفعال مثل يحتوى على ‪ +‬يدير (‪)Contains - Manages‬‬
‫أبعد عن السماء الغامضة‬
‫إرشادات‬
‫التعريف والشرح لتوضيح ماهية الفعل وأهميته‬ ‫‪‬‬

‫اعط أمثلة لتوضيح الفعل‬ ‫‪‬‬

‫الختيار والجبر يجب أن يوضح (مثل ص ‪ .‬ب ‪ .‬؟؟)‬ ‫‪‬‬

‫اشرح سبب وجود قيد للحد الدنى من المشاركات‬ ‫‪‬‬

‫اشرح هل هذا السجل مشترك في علقة قد تنقل هذا الشتراك إلى علقة أخرى‬ ‫‪‬‬
‫‪10.13‬‬
‫الكائن الصلة ‪Associative Entity‬‬

‫نوع من الكائنات يصل سجلت كائن أو أكثر ويحتوى على‬


‫الصفات المميزة للعلقة بين هذه السجلت (جدول الحصص‬
‫للمدرس) ‪ Many-to-Many‬المدرس والفصل‬
‫النطاق ‪Domains‬‬
‫مجموعة القيم وأنواعها التي يمكن لصفة (حقل) أن تأخذها‬
‫الميزات‬
‫لغرض التدقيق والرقابة‬ ‫‪.1‬‬

‫ضمان حدوث معالجة منطقية‬ ‫‪.2‬‬

‫تساعد في حفظ وتوفير الجهد لتوضيح خواص الصفة‬ ‫‪.3‬‬

‫‪10.14‬‬
‫عمليات التحريك والبدء‬
‫‪Triggering Operations‬‬
‫قاعدة تحكم صلحيات عمليات معالجة البيانات مثل‬
‫الدخال والتحديث واللغاء‪ ،‬وذلك يشمل‪-:‬‬
‫قانون المستخدم ‪User rule‬‬ ‫‪‬‬

‫حدث ‪Event‬‬ ‫‪‬‬

‫اسم الكائن ‪Entity Name‬‬ ‫‪‬‬

‫شرط ‪Condition‬‬ ‫‪‬‬

‫فعل ‪Action‬‬ ‫‪‬‬

‫المسؤولية عن تكامل وتجانس البيانات تقع ضمن مسئولية‬


‫نظام إدارة قاعدة البيانات‪ ،‬وليس التطبيق ؟‬
‫‪10.15‬‬
The Role of CASE in Conceptual Data

CASE tools provide two important


functions:
 Maintain E-R diagrams as a visual
depiction of structured data requirements
 Link objects on E-R diagrams to
corresponding descriptions in a repository

10.16

You might also like