Also Like

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

 





مخطط حالة الاستخدام (Use Case Diagram) هو أحد مخططات UML السلوكية الذي يركز على التفاعل بين المستخدمين والنظام من منظور عالي المستوى.

🎯 الأهداف التعليمية

  • فهم مفهوم مخططات حالات الاستخدام
  • التعرف على العناصر الأساسية: الممثلين وحالات الاستخدام
  • فهم العلاقات بين حالات الاستخدام (التعميم، الإدراج، الامتداد)
  • القدرة على رسم مخططات حالات الاستخدام

🏗️ المكونات الأساسية لمخططات حالات الاستخدام



الممثل (Actor)

  • أي شيء يتفاعل مباشرة مع النظام
  • يمثل الأدوار التي تلعبها الكيانات الخارجية
  • يكون خارج حدود النظام

أنواع الممثلين:

  • 👨‍💼 مستخدمين بشريين (العميل، المدير، الموظف)
  • 🖥️ أنظمة خارجية (نظام الدفع، نظام الشحن)
  • ⏰ أحداث زمنية (نظام يبدأ تلقائياً في وقت محدد)




حالة الاستخدام (Use Case)

  • نشاط يقوم به النظام استجابة لطلب من المستخدم
  • يحدد المتطلبات الوظيفية للنظام
  • يُسمى باستخدام صيغة فعل-اسم (Verb-Noun)

امثلة على حالات الاستخدام:

  • إضافة منتج إلى السلة
  • تسجيل الدخول
  • إنشاء طلب جديد
  • تتبع الطلب


حدود الآلية (Automation Boundary)


  • الحد الفاصل بين الجزء المؤتمت من التطبيق والمستخدمين الذين يشغلون التطبيق
  • يُرسم كمستطيل يحيط بحالات الاستخدام



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

  • 👤 Actor - الممثل (دائماً خارج حدود النظام)
  • ○ Use Case - حالة الاستخدام (دائرة تحتوي على اسم)
  • ── Association - علاقة ارتباط بين الممثل وحالة الاستخدام
  • ⬭ System Boundary - حدود النظام



🔍 كيفية تحديد عناصر المخطط


تحديد الممثلين (Actors)

اسأل هذه الأسئلة:

  • من يستخدم النظام؟
  • ما الأدوار التي يلعبونها في التفاعل؟
  • ما هي الأنظمة الأخرى التي تستخدم هذا النظام؟
  • من يحصل ويوفر المعلومات للنظام؟

تحديد حالات الاستخدام (Use Cases)

اسأل هذه الأسئلة:

  • ما الوظائف التي يريدها ممثل معين من النظام؟
  • هل يخزن النظام ويسترد المعلومات؟
  • ماذا يحدث عندما يتغير حالة النظام؟
  • هل يتفاعل النظام مع أي أنظمة خارجية؟
  • هل يولد النظام أي تقارير؟

💡 مثال عملي: متجر البقالة الإلكتروني


الممثلون:

  • 👤 العميل (Customer)

  • 👤 مسؤول النظام (Admin)

  • 👤 مندوب التوصيل (Delivery Person)

  • 🖥️ نظام الدفع (Payment System)

حالات الاستخدام:

  • تصفح المنتجات
  • إضافة منتج إلى السلة
  • إنشاء طلب
  • تسجيل الدخول
  • إدارة المخزون
  • تتبع الطلب

🔗 علاقات حالات الاستخدام


تعميم الممثلين (Actor Generalization)

المشكلة: عندما يكون لدينا ممثلين متشابهين في التفاعل مع النظام

الحل: استخدام علاقة التعميم (الوراثة) حيث يرث الممثل الفرعي خصائص الممثل الأب

مثال:

المندوب يرث جميع علاقات العميل مع النظام ويضيف علاقات إضافية




 علاقة الإدراج <<include>>

الاستخدام: عندما تكون هناك سلوكيات مشتركة بين عدة حالات استخدام

الخصائص:

  • حالة الاستخدام الأساسية غير مكتملة بدون الحالة المدرجة
  • الإدراج إلزامي وضروري
  • يحدث في مكان محدد في تدفق الأحداث

مثال:


علاقة الامتداد <<extend>>

الاستخدام: لإضافة سلوك اختياري إلى حالة الاستخدام الأساسية

الخصائص:

  • حالة الاستخدام الأساسية مكتملة بدون الامتداد
  • الامتداد اختياري وليس إلزامياً
  • يحدد نقاط امتداد في تدفق الأحداث
مثال : 



الممثلون الرئيسيون:

  • 👤 العميل (Customer)
  • 👤 مسؤول النظام (Admin)
  • 👤 مدير المبيعات (Sales Manager)
  • 🖥️ نظام الدفع (Payment Gateway)

حالات الاستخدام الرئيسية:

للعميل:

التسجيل في النظام

تصفح المنتجات ──<<include>>── البحث عن منتج

إدارة السلة ──<<include>>── إضافة منتج

إتمام الشراء ──<<extend>>── تطبيق كوبون

للمسؤول:

  • إدارة المنتجات
  • إدارة المستخدمين
  • مراقبة المبيعات






Comments