UML

بدأنا في المقالة السابقة التعرف على عالم لغة النمذجة الموحدة(Unified Modeling Language/UML)، وعرفنا أنها لغة مرئية تستخدم لعرض ونمذجة وتوثيق سلوك وهيكلية الأنظمة البرمجية، وتناولنا بالشرح النوع الأول من مخططاتها، وهي المخططات الهيكلية(Structural Diagrams)، التي تصور الجوانب الثابتة للنظام، بما في ذلك فئاته وكائناته ومكوناته والعلاقات فيما بينها، مما يوفر رؤية واضحة لبنية النظام الذي نتعامل معه.

في مقالتنا هذه سنبدأ في التعرف على النوع الآخر من مخططات لغة النمذجة الموحدة، وهي ما تعرف بالمخططات السلوكية(Behavioral Diagrams)، ووظيفتها وتفاصيل مخططاتها.

UML

(UML Diagrams)

2. المخططات السلوكية:

المخططات السلوكية(Behavioral Diagrams)، هي تمثيلات مرئية تصور الجوانب الديناميكية للنظام، وتوضح كيفية تفاعل الكائنات وتصرفها بمرور الوقت استجابة للأحداث. ومن أشهر هذه المخططات ما يلي:

1.2 مخطط الحالة(State Machine Diagram):

يتم استخدام مخطط الحالة لتمثيل حالة النظام أو جزء من النظام في حالات زمنية محدودة. إنه مخطط سلوكي يمثل حالة النظام عن انتقاله من حالة إلى أخرى:

  • يشار إلى مخططات الحالة أيضا بأسماء أخرى مثل: (State machines),(State-chart Diagrams).
  • غالبا ما تستخدم هذه المصطلحات بشكل متبادل، ويتم استخدام مخطط الحالة لنمذجة السلوك الديناميكي للصنف(Class) عبر الوقت، وتغير المحفزات الخارجية.

UML

(State Machine Diagram)

2.2 مخطط النشاط(Activity Diagram):

نستخدم مخططات النشاط لتوضيح تدفق التحكم في النظام. يمكننا أيضا استخدام مخطط النشاط للإشارة إلى الخطوات المتضمنة في تنفيذ حالة الاستخدام:

  • نقوم بنمذجة الأنشطة المتسلسلة والمتزامنة باستخدام مخططات النشاط. لذلك، نحن نصور بشكل أساسي سير العمل بصريا باستخدام مخطط النشاط.
  • يركز مخطط النشاط على حالة التدفق والتسلسل الذي يحدث فيه.
  • نصف أو نصور أسباب حدث معين باستخدام مخطط النشاط.

UML

(Activity Diagram)

3.2 مخطط حالة الاستخدام(Use Case Diagrams):

تستخدم مخططات حالة الاستخدام لتصوير وظائف نظام أو جزء من نظام. ويتم استخدامها على نطاق واسع لتوضيح المتطلبات الوظيفية للنظام وتفاعله مع العوامل الخارجية(actors):

  • حالة الاستخدام هي في الأساس رسم تخطيطي يمثل حالات مختلفة يمكن استخدام النظام فيها.
  • يمنحنا مخطط حالة الاستخدام رؤية عالية المستوى لما يفعله النظام أو جزء من النظام دون الخوض في تفاصيل التنفيذ.

UML

(Use Case Diagrams)

4.2 مخطط التسلسل(Sequence Diagram):

يصور مخطط التسلسل ببساطة التفاعل بين الكائنات بترتيب تسلسلي ، أي الترتيب الذي تحدث به هذه التفاعلات زمنيا:

  • يمكننا أيضا استخدام مصطلحي مخططات الأحداث(Event Diagrams)، أو سيناريوهات الأحداث(Event Scenarios) للإشارة إلى المخططات التسلسلية.
  • تصف المخططات التسلسلية كيف وبأي ترتيب تتفاعل الكائنات لأداء وظائف النظام.
  • تستخدم هذه المخططات على نطاق واسع لتوثيق وفهم متطلبات الأنظمة الجديدة والحالية.

UML

(Sequence Diagram)

5.2   مخطط الاتصال(Communication Diagram):

يتم استخدام رسم مخطط الاتصال، والذي كان يعرف باسم مخطط التعاون(Collaboration Diagram) في النسخ الأقدم من لغة(UML)، لتمثيل الرسائل المتبادلة بين الكائنات(Objects) :

  • يركز مخطط الاتصال بشكل أساسي على الكائنات وعلاقاتها.
  • يمكننا تمثيل معلومات مماثلة باستخدام مخططات التسلسل، لكن مخططات الاتصال تمثل الكائنات والروابط بينها بشكل حر.

UML

(Communication Diagram)

6.2 مخطط نظرة عامة على التفاعل(Interaction Overview Diagram):

مخطط نظرة عامة على التفاعل(IOD) هو نوع من مخططات لغة النمذجة الموحدة(UML) الذي يوضح تدفق التفاعلات بين العناصر المختلفة في نظام أو عملية، بحيث يوفر نظرة عامة عالية المستوى حول كيفية حدوث التفاعلات، بما في ذلك تسلسل الإجراءات والقرارات والتفاعلات بين المكونات أو الكائنات المختلفة.

UML

(Interaction Overview Diagram)

الخلاصة:

تلك هي أشهر الأدوات والمخططات التي توفرها لغة النمذجة الموحدة(UML) لتسهيل نمذجة الأنظمة البرمجية، وهي في حقيقتها مناظير مختلفة لنمذجة النظام ورصد أحد جوانبه، وكلما تعددت هذه المناظير زاد فهمنا للنظام ومكوناته وطبيعة العلاقة بين هذه المكونات وتفاعلها وانسياب البيانات بينها، لذلك فإن التمكن من هذه اللغة وفهمها فهما جيدا يجب أن يهتم به كل العاملين في مجال صناعة البرمجيات من مبرمجين ومحللي نظم وحتى غير المتخصصين من أصحاب الأعمال الذين يرغبون المشاركة في فرق العمل لأتمتة أعمالهم، لتكون هذه اللغة هي لغة التفاهم وتبادل الأفكر فيما بينهم للوصول إلى هدفهم بشكل واضح ومنظم، وبدون أي لبس أو سؤ فهم قد ينتج عن استخدام لغة غير منضبطة.

مصدر المقالة: https://www.geeksforgeeks.org/unified-modeling-language-uml-introduction/

اترك رد

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *