Also Like

شرح لنماذج UML ومخططات الأنشطة - الفصل الرابع الجزء الاول

المقدمة:

 في تطوير البرمجيات، بعد جمع المتطلبات من العميل، نحتاج إلى طريقة لتنظيمها وفهمها وتوصيلها لفريق العمل. هنا تأتي أهمية النماذج (Models) في عملية تطوير البرمجيات. 



🎯 ما هي النماذج (Models)؟

النموذج (Model) هو تمثيل لوجه من أوجه النظام الذي يتم بناؤه. يمكن التفكير فيه كـ "خريطة" أو "مجسم مصغر" للنظام الحقيقي.
أنواع النماذج:

النماذج النصية (Textual)

وصف مكتوب للمتطلبات والوظائف
مثال: مستند متطلبات المستخدم يشرح كيف يعمل النظام


النماذج الرسومية (Graphical)

مخططات وأشكال توضح هيكل النظام وسلوكه
مثال: مخططات UML التي سنتناولها في هذا الشرح

النماذج الرياضية (Mathematicalمعادلات وخوارزميات تمثل النظام
مثال: الخوارزميات المستخدمة في أنظمة التشفير

🌟 ما هي اللغة الموحدة للنمذجة (UML)؟

اللغة الموحدة للنمذجة (Unified Modeling Language - UML) هي لغة قياسية بصرية (رسومية) تستخدم لنمذجة وتصميم الأنظمة البرمجية بطريقة كائنية التوجه.


أهمية استخدام النمذجة بـ UML:

✅ تقليل التعقيد - عن طريق تجريد التفاصيل غير الضرورية
✅ التواصل الفعال - لغة مشتركة بين المطورين والمحللين والعملاء
✅ توثيق النظام - تسجيل كيفية عمل النظام لتسهيل الصيانة
✅ التعلم والفهم - عملية إنشاء المخططات تساعد في الفهم

📊 أنواع نماذج UML الرئيسية


1. نماذج الهيكل (Structure Models)

تعطينا نظرة ثابتة (Static) للنظام، أي مكوناته وعلاقاتها في لحظة زمنية معينة.

أمثلة:

  • مخطط الفئات (Class Diagram): يظهر الفئات وخصائصها وعلاقاتها
  • مخطط الكائنات (Object Diagram): يظهر حالة محددة للكائنات


2. نماذج السلوك (Behavior Models)

تمثل السلوك الديناميكي (Dynamic) للنظام، أي كيف يتصرف النظام أو كيف يستجيب للأحداث.

أمثلة:

  • مخطط الحالات (State Machine Diagram)
  • مخطط حالات الاستخدام (Use Case Diagram)
  • مخطط الأنشطة (Activity Diagram) - محور شرحنا




3. نماذج التفاعل (Interaction Models)

نوع فرعي من نماذج السلوك، يركز على كيفية تواصل الكائنات مع بعضها البعض.

أمثلة:

  • مخطط التسلسل (Sequence Diagram)
  • مخطط التواصل (Communication Diagram)





📈 مخططات الأنشطة (Activity Diagrams)

تعريفات أساسية:

سير العمل (Workflow): تسلسل الخطوات اللازمة لمعاملة عمل واحدة بشكل كامل
مثال: عملية "استلام طلب عميل" من البداية للنهاية

مخطط الأنشطة (Activity Diagram): مخطط UML يسلط الضوء على تدفق التحكم من نشاط لآخر

لماذا نستخدم مخطط الأنشطة؟

🔹 نمذجة المنطق التشغيلي لعملية ما
🔹 توضيح التسلسل و التوازي في الأنشطة
🔹 فهم سير العمل المعقد بطريقة بصرية

🎨 رموز مخطط الأنشطة الأساسية



سنتعرف على الرموز باستخدام مثال "شراء منتج من متجر إلكتروني":

الرموز الرئيسية:





🛠️ كيفية رسم مخطط الأنشطة (خطوات عملية)

الخطوات:

  1. حدد العملية: ما هي العملية التي تريد تمثيلها؟ 
    مثال: "عملية تسجيل طلب جديد"
  2. حدد البداية والنهاية: ما الذي يبدأ العملية؟ وما الذي ينهيها؟
  3. حدد الأنشطة: قم بتفصيل العملية إلى خطوات صغيرة
  4. رتب الأنشطة: ما الترتيب المنطقي لهذه الأنشطة؟
  5. أضف عناصر التحكم:
    أين توجد خيارات أو شروط؟ استخدم عقدة القرار
    هل يمكن تنفيذ أنشطة في نفس الوقت؟ استخدم شريط التفريق والدمج
    راجع المخطط: تأكد من أنه سهل الفهم ويغطي جميع السيناريوهات


دراسة الحالة: نظام التسوق الإلكتروني

عملية: "إكمال عملية شراء"

  1. خطوات العملية:● بداية النشاط: يبدأ عندما يضغط المستخدم على "إتمام الشراء"  ⎕ نشاط: التحقق من محتويات عربة التسوق  ◊ قرار: "هل العربة فارغة؟"  [نعم] → عرض رسالة "العربة فارغة" → ◎ نهاية  [لا] → المتابعة  ⎕ نشاط: تسجيل الدخول / تقديم معلومات الشحن والدفع  ◊ قرار: "هل معلومات الدفع صحيحة؟"  [لا] → طلب تصحيح المعلومات والعودة للخطوة 4  [نعم] → المتابعة  ═ شريط تفريق: بداية الأنشطة المتوازية  أنشطة متوازية:  خصم المبلغ من الحساب البنكي  تحديث المخزون  إرسال بريد تأكيد الطلب  ═ شريط دمج: نهاية الأنشطة المتوازية  ⎕ نشاط: تحديث حالة الطلب إلى "مكتمل"  ⎕ نشاط: توجيه المستخدم لصفحة "شكراً لك"  ◎ نهاية النشاط: انتهاء العملية

 ملخص شامل

النقاط الرئيسية:

🏗️ النماذج ضرورية لفهم وتصميم وتوثيق الأنظمة المعقدة

🗣️ UML هي اللغة القياسية لإنشاء النماذج الرسومية

📊 مخطط الأنشطة أحد أهم مخططات UML السلوكية

⚡ يدعم التفرع المتوازي مما يجعله أقوى لتمثيل أنظمة العالم الحقيقي

نصيحة عملية:

لإتقان مخططات الأنشطة، جرب رسمها لعمليات تعرفها من حياتك اليومية (مثل عملية سحب النقود من الصراف الآلي ATM) لتثبيت المفاهيم.






Comments