What are Sequence Diagrams in UML? ما هي مخططات التسلسل في لغة النمذجة الموحدة ؟
What are Sequence Diagrams in UML? ما هي مخططات التسلسل في لغة النمذجة الموحدة ؟
What are Sequence Diagrams in UML? ما هي مخططات التسلسل في لغة النمذجة الموحدة ؟
مخطط التفاعل -
مخططات التسلسل -
رموز مخطط التسلسل -
نستخدم الجهات الفاعلة لتصوير الأدوار المختلفة بما في ذلك المستخدمين البشريين والموضوعات الخارجية الأخرى. نحن نمثل الفاعل في مخطط UML باستخدام تدوين الشخص اللاصق. يمكن أن يكون لدينا عدة جهات في مخطط التسلسل.
على سبيل المثال - هنا يظهر المستخدم في نظام حجز المقاعد كممثل حيث يوجد خارج النظام وليس جزءًا من النظام.
الشكل - ممثل يتفاعل مع نظام حجز مقعد - شريان الحياة lifeline- شريان الحياة هو عنصر مسمى يصور مشاركًا فرديًا في مخطط تسلسلي. لذلك يتم تمثيل كل مثيل في مخطط التسلسل من خلال شريان الحياة. توجد عناصر خط الحياة في الجزء العلوي في مخطط التسلسل. المعيار في UML لتسمية فتره الحياة يتبع التنسيق التالي - اسم المثيل: اسم الفئة
الشكل - شريان الحياة نعرض شريان الحياة في مستطيل يسمى head مع اسمه ونوعه. يقع الرأس أعلى خط متقطع رأسي (يشار إليه باسم الجذع) كما هو موضح أعلاه. إذا أردنا نمذجة مثيل غير مسمى ، فإننا نتبع نفس النمط باستثناء الآن ترك جزء اسم شريان الحياة فارغًا.
الفرق بين شريان الحياة والممثل - يصور شريان الحياة دائمًا كائنًا داخليًا للنظام بينما يتم استخدام الجهات الفاعلة لتصوير كائنات خارج النظام. فيما يلي مثال على مخطط التسلسل:
الشكل - مخطط تسلسل - الرسائل messages - يتم تصوير الاتصال بين الكائنات باستخدام الرسائل. تظهر الرسائل بترتيب تسلسلي على شريان الحياة. نحن نمثل الرسائل باستخدام الأسهم. تشكل خطوط الحياة والرسائل جوهر مخطط التسلسل.
يمكن تصنيف الرسائل على نطاق واسع إلى الفئات التالية :الشكل - مخطط تسلسل مع أنواع مختلفة من الرسائل - الرسائل المتزامنة Synchronous messages - تنتظر الرسالة المتزامنة الرد قبل أن يتحرك التفاعل للأمام. ينتظر المرسل حتى يكمل المستلم معالجة الرسالة. يستمر المتصل فقط عندما يعلم أن المتلقي قد قام بمعالجة الرسالة السابقة ، أي أنه يتلقى رسالة رد. عدد كبير من المكالمات في البرمجة الموجهة للكائنات متزامن. نستخدم رأس سهم صلب لتمثيل رسالة متزامنة.
الشكل - مخطط تسلسل باستخدام رسالة متزامنة - الرسائل غير المتزامنةAsynchronous Messages - لا تنتظر الرسالة غير المتزامنة ردًا من جهاز الاستقبال. يتحرك التفاعل للأمام بغض النظر عن معالجة المتلقي للرسالة السابقة أم لا. نستخدم رأس سهم مبطن لتمثيل رسالة غير متزامنة.
- إنشاء رسالة create message - نستخدم رسالة إنشاء لإنشاء مثيل لكائن جديد في مخطط التسلسل. هناك حالات تتطلب فيها مكالمة رسالة معينة إنشاء كائن. يتم تمثيله بسهم منقط وإنشاء كلمة عليها تسمية لتحديد أنه رمز إنشاء الرسالة.
على سبيل المثال - قد يتطلب إنشاء طلب جديد على موقع التجارة الإلكترونية إنشاء كائن جديد من فئة الطلب.الشكل - حالة يتم فيها استخدام إنشاء رسالة
- الرسائل المتزامنة Synchronous messages - تنتظر الرسالة المتزامنة الرد قبل أن يتحرك التفاعل للأمام. ينتظر المرسل حتى يكمل المستلم معالجة الرسالة. يستمر المتصل فقط عندما يعلم أن المتلقي قد قام بمعالجة الرسالة السابقة ، أي أنه يتلقى رسالة رد. عدد كبير من المكالمات في البرمجة الموجهة للكائنات متزامن. نستخدم رأس سهم صلب لتمثيل رسالة متزامنة.
- حذف الرسالة Delete message - نستخدم رسالة الحذف لحذف كائن. عندما يتم إلغاء تخصيص كائن ما في الذاكرة أو يتم إتلافه داخل النظام ، فإننا نستخدم رمز حذف الرسالة. يدمر وجود الكائن في النظام ويمثله سهم ينتهي بعلامة x.
على سبيل المثال - في السيناريو أدناه عندما يتلقى المستخدم الأمر ، يمكن إتلاف كائن فئة الأمر.الشكل - سيناريو يتم فيه استخدام رسالة الحذف - رسالة ذاتية - قد تظهر سيناريوهات معينة حيث يحتاج الكائن إلى إرسال رسالة إلى نفسه. تسمى هذه الرسائل الرسائل الذاتية ويتم تمثيلها بسهم على شكل حرف U.
الشكل - الرسالة الذاتية على سبيل المثال - ضع في اعتبارك سيناريو يريد فيه الجهاز الوصول إلى كاميرا الويب الخاصة به. يتم تمثيل مثل هذا السيناريو باستخدام رسالة ذاتية.
الشكل - سيناريو يتم فيه استخدام رسالة ذاتية - رسالة الرد reply message - تُستخدم رسائل الرد لإظهار الرسالة التي يتم إرسالها من جهاز الاستقبال إلى المرسل. نحن نمثل رسالة إرجاع / رد باستخدام رأس سهم مفتوح بخط منقط. يتحرك التفاعل إلى الأمام فقط عندما يرسل المتلقي رسالة رد.
الشكل - رسالة الرد على سبيل المثال - ضع في اعتبارك السيناريو حيث يطلب الجهاز صورة من المستخدم. هنا الرسالة التي تظهر الصورة التي يتم إرسالها هي رسالة رد.
الشكل - سيناريو حيث يتم استخدام رسالة الرد - تم العثور على رسالةfound message - يتم استخدام الرسالة التي تم العثور عليها لتمثيل سيناريو حيث يقوم مصدر غير معروف بإرسال الرسالة. يتم تمثيله باستخدام سهم موجه نحو شريان الحياة من نقطة النهاية. على سبيل المثال: ضع في اعتبارك سيناريو فشل الأجهزة.
الشكل - رسالة موجودة يمكن أن يكون ذلك بسبب عدة أسباب ونحن لسنا متأكدين مما تسبب في فشل الأجهزة.
الشكل - سيناريو حيث يتم استخدام الرسالة التي تم العثور عليها - الرسالة المفقودة lost message - تُستخدم الرسالة المفقودة لتمثيل سيناريو حيث لا يعرف النظام المستلم. يتم تمثيله باستخدام سهم موجه نحو نقطة نهاية من شريان الحياة. على سبيل المثال: ضع في اعتبارك سيناريو يتم فيه إنشاء تحذير.
الشكل - الرسالة المفقودة قد يتم إنشاء تحذير للمستخدم أو برنامج / كائن آخر يتداخل معه شريان الحياة. نظرًا لأن الوجهة غير معروفة مسبقًا ، فإننا نستخدم رمز Lost Message.
الشكل - سيناريو يتم فيه استخدام الرسالة المفقودة
- الحراس guard - لنمذجة الشروط نستخدم الحراس في UML. يتم استخدامها عندما نحتاج إلى تقييد تدفق الرسائل بحجة تلبية الشرط. يلعب الحراس دورًا مهمًا في السماح لمطوري البرامج بمعرفة القيود المرتبطة بنظام أو عملية معينة.
على سبيل المثال: لكي تكون قادرًا على سحب النقود ، فإن وجود رصيد أكبر من الصفر هو شرط يجب الوفاء به كما هو موضح أدناه.
الشكل - مخطط التسلسل باستخدام حارس
مخطط تسلسل لمشغل موسيقى قائم على العاطفة -
يوضح مخطط التسلسل أعلاه مخطط التسلسل لمشغل الموسيقى القائم على العاطفة:
- أولاً ، يتم فتح التطبيق من قبل المستخدم.
- ثم يحصل الجهاز على حق الوصول إلى كاميرا الويب.
- تلتقط كاميرا الويب صورة المستخدم.
- يستخدم الجهاز خوارزميات لاكتشاف الوجه والتنبؤ بالحالة المزاجية.
- ثم يطلب قاعدة بيانات لقاموس الحالات المزاجية المحتملة.
- يتم استرداد الحالة المزاجية من قاعدة البيانات.
- يتم عرض الحالة المزاجية للمستخدم.
- الموسيقى مطلوبة من قاعدة البيانات.
- يتم إنشاء قائمة التشغيل وعرضها أخيرًا للمستخدم.
استخدامات مخططات التسلسل -
- تُستخدم لنمذجة وتصور المنطق وراء وظيفة أو عملية أو إجراء معقد.
- يتم استخدامها أيضًا لعرض تفاصيل مخططات حالة استخدام UML.
- تستخدم لفهم الوظائف التفصيلية للأنظمة الحالية أو المستقبلية.
- تصور كيف تنتقل الرسائل والمهام بين العناصر أو المكونات في النظام.
التسميات: لغة النمذجة الموحدة UML
<< الصفحة الرئيسية