مرحبا مجددا بكل متتبعي دورة تحليل و بناء مشروع متكامل على الويب ، وصلنا و بحمد الله الى الدرس الخامس ، و قد بدأنا حقا في الدروس السابقة بتحليل المشروع بشكل أفضل و فهم سيرورة عمل مشروعنا ، و قبل ان نلج في شرح الدرس الخامس ، دعونا نتذكر قليلا ما الذي قدمناه في الدروس السابقة عبر هذا الملخص البسيط .
ملخص الدروس السابقة :
من خلال الدروس السابقة ، إقتبسنا مجموعة من المفاهيم و أيضا الطرق المهمة لتحليل اي مشروع برمجي ، و لاحظ اننا لازلنا في مرحلة " التحليل " فقط ، فهمنا من خلال الدروس السابقة الهدف من هذه الدورة ، و كيف انه و بنهاية اخر درس ستكون قادرا عزيزي القارئ على تحليل اي فكرة تريد الى مشروع برمجي ، و ناقشنا ايضا في الدرس الموالي مفهوم كل من الفكرة و الوعي ، و كيف ان الفكرة هي ركيزة المشروع ، فالأفكار المبتذلة و المقلدة ستؤول الى فشل المشروع و إن قضيت نحبك في صناعته ، ثم تعرفنا على مفهوم الوعي و هو ببساطة رد فعل الفكرة بالنسبة للعامة ، ثم فهمنا ايضا التقنيات المناسبة لبناء اي مشروع ، فإن كان اندرويد فهذه هي تقنياته الملائمة ، و إن كان ويب فهذه هي تقنياته المناسبة و هكذا .
يمكنك دائما الرجوع و الإطلاع على الدروس السابقة إن كنت ستتابع هذه الدورة لأول مرة من هنا :
- دورة تحليل و بناء مشروع متكامل على الويب [ الدرس الأول ] : الأسباب ، الأهداف و النتائج
- دورة تحليل و بناء مشروع متكامل على الويب [ الدرس الثاني ] : الفكرة و الوعي
- دورة تحليل و بناء مشروع متكامل على الويب [ الدرس الثالث] : تحديد تقنيات بناء المشروع
- دورة تحليل و بناء مشروع متكامل على الويب [ الدرس الرابع ] : كيف تتجسس على المشاريع المشابهة برمجيا ؟
ملخص هذا الدرس ( للقارئين الكسالى 😒 )
في هذا الدرس عزيزي سنتعرف على أهم مفهومين على الإطلاق في مجال تحليل المشاريع ، يتم إستخدامهما على معايير عالمية ، و لا يوجد اي مشروع في هذا العالم لم يخضع لهما على الإطلاق ، و هما الـ Merise و الـ UML ، في هذا الموضوع سنكتفي فقط بشرح كل من الـ Mersie و أيضا UML ، و سنقارن بينهما و سنختار الأفضل ، اما إستخدامهما و شرحهما ، فسيكون في الدرس القادم ، و إن لم يكفي فسنزيد الشرح الى درس اخر أيضا ، لكن في هذا الدرس ، سنكتفي بإنتقاء الطريقة الأفضل لمشروعنا البرمجي ، يمكنك الإنتقال بين فقرات الموضوع مباشرة الى المفهوم الذي تريد معرفته او المقارنة التي تريد معرفتها ان كنت لا تود قراءة الموضوع كاملا .
ما الذي نقصده بالـ Merise ؟
كل هذ المعلومات تأتي بما يسمى " دفتر التحملات " او الـ Specifications ، و من هذا المنطلق ، عليك ان تستخرج صديقي أهم العناصر البرمجية التي يجب عليك الإشتغال عليها ، مثل الجداول في قواعد البيانات و أيضا العناصر الخاصة بهذه الجداول ، ايضا الكلاسات ، و صفحات الموقع او البرنامج و ما الى ذلك ، فكيف يمكننا تحقيق هذا ؟
حقا الـ Merise يحتاج الى دورة لوحده لأكون صريحا معك ، او على الأقل مقال مخصص له ، لذلك سنكتفي بتعريفنا له في الأسطر السابقة .
- ما الذي نقصده بالـ UML ؟
عبارة الـ UML هي إختصار لـ Unified Modeling Language ، و هي تشتغل تقريبا بنفس مبدئ الـ Merise الا انها اكثر تحديثا و تحديدا ايضا ، ربما اليوم لا يتم إستخدام الـ Merise في تحليل المشاريع الا نادرا ، و ذلك لان الـ UML قد سيطر على الأمر ، يعتمد الـ UML على شيئ اخر غير الـ Conceptional و الـ Logical و الـ Physical ، فالـ UML يعتمد على ما يسمى بالـ Diagrams او يمكننا ترجمتها الى المخططات ، و لكل Diagram جزء مخصص من تطوير اي مشروع برمجي ، فحصولك على الحل لكل Diagram يعني حصولك على قطعة من أحجية حل مشروع برمجي متكامل ، يمتلك الـ UML تقريبا ما يقارب 13 نوع من الـ Diagrams ، الا انه لا يتم إستخدام الا 5 او 6 تقريبا بكثرة ، و هذه الـ 5 كافية من أجل تحليل اي مشروع برمجي و تجريده من مجرد فكرة الى مخطط قابل للبرمجة ، من أهم الـ Diagrams الخاصة بالـ UML نجد Class Diagram ، و هو مخطط بواسطته نستطيع إستخراج الكلاسات Classes التي يمكننا إستخدامها في المشروع البرمجي ، ايضا الـ Functions و الـ Component لأي كلاس برمجي ، يوجد ايضا الـ Use Case Diagram و هو مخطط يسمح لنا بتقصي الأفعال التي يقوم بها أحد الكلاسات ، فمثلا و بإستنباطنا للنص أعلاه الخاص بالـ Specifications ، فنجد ان الuser او المستخدم سيتوجب عليه شراء منتوج ، وضع تعليقات ، وضع تقييم للمنتوج ، تسجيل الدخول ، تسجيل الخروج و ما الى ذلك ، هذه كلها حركات يجب ان نوفرها للمستخدم ، و لنقوم بتجميعها كلها ، فنسحتاج الى الـ Use Case Diagram من أجل فعل ذلك ، يوجد أيضا الـ Activity Diagram و الـ Timline Diagram و غيرها .
اما الهدف من الـ UML فلا يختلف الا قليلا عن هدف الـ Merise ، وهو اخد النص او دفتر التحملات او متطلبات العميل او متطلباتك انت الشخصية ، و تحليلها و تحويلها من مجرد نص ، الى قواعد بيانات و كلاسات و Functions و صفحات و كل شيئ ، و هي عملية ضرورية ضرورية في أي مشروع برمجي .
ما الأفضل لتحليل مشروع برمجي ؟ الـ Merise ام الـ UML ؟ و أيهما سنتبع في دورتنا هذه ؟
من هذه الفكرة ننطلق صديقي لنخبرك أن مشروعنا الذي نشتغل عليه في هذه الدورة ، و هو بناء موقع للخدمات ، سنقوم بتحليله بتقنية الـ UML و ليس الـ Merise ، و سيكون الدرس القادم درسا نقوم فيه بتجريد أفكار مشروعنا الى مجموعة من الـ Diagrams .
فيديو إضافي :
إن إشتغلت من قبل بتقنية الـ UML ، فالفيديو التالي يشرح لك أداة جميلة يمكنك إستخدامها من أجل صناعة الـ Diagrams ، و هي نفسها الاداة التي سنستخدمها في الدرس القادم ، فيمكنك الإطلاع عليها قليلا من هذا الفيديو :
تابع الدرس القادم :
ككلمة اخيرة صديقي ، نحب ان نذكرك انه يمكنك دائما متابعة الدورة و التوصل بجديدها عبر بريدك الإلكتروني بالتسجيل في الفورم التالي :
او يمكنك تفعيل خاصية See First في صفحتنا على الفيسبوك من أجل التوصل بكل جديدنا اول بأول :