Thursday, November 22, 2012

Data Modeling نمذجة البيانات



وهي جزء لا يتجزأ من عملية تصميم  و تطوير نظام البيانات , فهي تزود طرق و معاني لأجل وصف معلومات و متطلبات العالم الحقيقي بطريقة مفهومة (لذوي المصلحة  Stakeholder ) .
نمذجة البيانات تمكن مطوري (Database) من خلق قاعدة بيانات حقيقية مبنية على أساس المعلومات , التقنيات , الشروط التي أنتجتها عملية نمذجة البيانات . و لهذا نعتبر نمذجة البيانات المساعد الأول للمستخدمين و ذوي المصلحة لفهم نظام قاعدة البيانات بدقة و بسهولة .

لنأخذ مثال بسيط عن مفهوم نمذجة البيانات :- تصميم نظام بيانات لأجل (مؤسسة مصرفيةBanking institution ) , يجب عليك أولاً أن تزود بيانات حول العملية المصرفية التجارية (صكوك , عملية الخزن , الضرائب , الحسابات المصرفية , التحويلات .... الخ) و يتم تزويدك بهذة البيانات من خلال التعاون المستمر مع ذوي المصلحة إضافة الى مصادر معلوماتية أخرى و علماً أن جمع هذه البيانات و ترتيبها تدخل ضمن مرحلة تعريف المتطلبات و هي أهم مرحلة لنمذجة البيانات .

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

النموذج :- هو تمثيل خاص لجوانب من العالم الحقيقي , لأجل تبسيط مفهوم النموذج لنأخذ المعادلة الرياضية التالية :-

 5 + 4 = 9

هذه المعادلة عبارة عن موديل رياضي(Mathematical Model)  بحيث يستخدم هذا النموذج رموز(Symbol) و منطق(Logic) . هذا النموذج يمثل حقيقة وذلك في حالة وضعنا 5 أشياء و جمعناها مع 4 أشياء من نفس النوع سوف نحصل على نتيجة 9 أشياء من نفس النوع . فيزيائياً نحن خلقنا نموذج لتمثيل خصائص مادية من العالم الحقيقي . لنأتي الأن و نبسط المفهوم بأخذ مثال :- أردت أن تشتري بيت في منطقة معينة . يجب أولاً أن تذهب الى مكتب المبيعات , في هذا المكتب وجدت أنهم يملكون عدة أشكال للمنازل التي ممكن أن تبنى و تكتمل في غضون ثلاث سنوات , بمعنى أنك سوف تشتري مساحة أرض فارغة و تقرر أي شكل من الأشكال (التي سوف يعرض عليك المطور) سوف تختارة . هذه الأشكال عبارة عن منازل متكاملة من حيث الطوابق والغرف والأشياء المحيطة بها مع إمكانية إضافة متطلبات و تحديثات معينة على الشكل المختار من قبل الزبون , هذه الأشكال هي ما يسمى بـ (Models) إذن النموذج عبارة عن تمثيل حقيقي لبعض جوانب العالم الحقيقي , فهو مخطط يمثل بناء هياكل مقترحة من العالم الحقيقي . بهذا النموذج يعطي تصور حقيقي للمنزل المستقبلي بالرغم أنه لا يوجد على أرض الواقع , وعند إختيارك لنموذج معين سوف يقوم المطورون بالعمل على أرض الواقع بالأعتماد على النموذج المنصوص عليه و لمدة ثلاث سنوات .
كما تعرفنا أن نمذجة البيانات تزود طرق و سلوكيات لأجل وصف متطلبات العالم الحقيقي بطريقة مفهومة لذوي المصلحة و المطورين بحيث تمكن مطوري قواعد البيانات من أخذ المتطلبات المنقحة و تنفيذها بواسطة الحاسوب بمعنى خلق قاعدة بيانات على أساس المعلومات المنمذجة التي تم الحصول عليها من نتائج نمذجة البيانات . نمذجة البيانات عبارة عن جسر من خلالة يتم توصيل معلومات العالم الحقيقي الى قواعد البيانات . لكن دعنا نسأل أنفسنا لماذا هذا الجسر ؟ لماذا لا نذهب مباشرةً الى بيئة قواعد البيانات و نخلقها مباشرةً ؟

الأجابة على هذا السؤال بأخذ المثال التالي :-

نأخذ مثال متجر لبيع المنتجات الحاسوبية , يتطلب بناء قاعدة بيانات لخزن معلومات المتجر . ومن خلال النظر الى العالم الحقيقي يمكننا أن نتصور الكائنات المكونة لهذا المتجر و منها :-

الزبائن (Customers) , المنتجات (Products) , المبيعات (Sales) . نقوم الأن بتحديد مواصفات كل من الكائنات التالية .

الزبائن :-
رقم الزبون , أسم الزبون , هاتف الزبون , المدينة , العنوان الكامل .

المبيعات :-
رقم الطلبية , تاريخ الطلبية , طريقة الشحن , السعر النهائي للبيع .

المنتجات :-
رقم المنتج , شرح المنتج , كلفة المنتج , عدد وحدات المنتج .

أنظر الرسم التالي الذي يوضح المكونات الثلاث :
هذه المعلومات تعتبر معلومات العالم الحقيقي من إضافات و تعديلات مأخوذة من ( ذوي المصلحة , البحث المعلوماتي , الخبرة في النمذجة ) .



الرسم يوضح العالم الحقيقي بحيث لا نجد فيه وصف كامل يستفيد منه مطوري قواعد البيانات لأنه عبارة عن معلومات عامة و غير مترابطة .
نأتي الأن لعمل ترابط بين الكائنات لتكون أكثر وضوحاً من الناحية المنطقية و مفهومة لكلا الجهتين ( ذوي المصلحة , المطورين )))( .

العلاقة بين الزبائن \ المبيعات :-

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


العلاقة بين المبيعات \ المنتجات :-

كل طلبية أو شراء يجب أن تحتوي على بضاعة واحدة أو أكثر و في نفس الوقت محتمل أن كل بضاعة يتم تضمينها داخل طلبية معينة واحدة أو أكثر . مثال :- طلبية رقم 10 قام بطلبها أو شرائها أحمد , هذة الطلبية تحتوي على منتج المعالج فقط أو يمكن أن تحتوي هذة الطلبية على أكثر من بضاعة مثلاً لوحة مفاتيح , ذاكرة , قرص صلب وبهذا تستنتج أن هذة البضاعة تنتمي الي طلبية رقم 10 وهذة الطلبية تنتمي الى أحمد . و أما علاقة المنتجات فهي أيضاً مشابهة للمبيعات بمعنى أن البضاعة المعالج يمكن أن يتم تضمينها داخل طلبية 10 و يمكن أن تضمن دخل طلبية 11 التابعة الى عمر .
أنظر الرسم  الأولي التالي الذي يوضح نموذج البيانات Data Model لمتجر بيع الحاسوب .


هذة العلاقات مابين الكائنات تعطي المفهوم المنطقي لأجل فهم السلوك مابين كائنات العالم الحقيقي و عكسة على قواعد البيانات للحصول على قاعدة بيانات ذات سياق منطقي صحيح . نموذج البيانات الذي أوضحناه هو عبارة عن محاولة لأجل فهم جوهر نموذج البيانات لكنه في جميع الأحوال غير متكامل وذلك لعدم إدخاله في مراحل نمذجة البيانات وهي:-

-المستوى المفاهيمي .
-المستوى الخارجي .
-المستوى المنطقي .
-المستوى الفيزيائي .

هذة المستويات سوف يتم شرحها في الدروس القادمة إن شاءالله .

3 comments:

  1. This comment has been removed by the author.

    ReplyDelete
  2. السلام عليكم ورحمة الله وبركاته
    ممكن الكتاب عربي

    ReplyDelete
  3. ارجو الاستجابه 😢

    ReplyDelete