جدول المحتويات
ما هو مخطط التسلسل؟
يتم تعريف مخطط التسلسل على أنه نوع من مخططات UML (لغة النمذجة الموحدة) المستخدمة في هندسة البرمجيات وتصميم الأنظمة لتصور التفاعلات والتواصل بين المكونات أو الكائنات المختلفة داخل النظام. تعد المخططات التسلسلية مفيدة بشكل خاص لتصوير السلوك الديناميكي للنظام وكيفية تعاون المكونات المختلفة لتحقيق مهمة أو هدف محدد. يتم استخدامها بشكل شائع أثناء مراحل التصميم والتوثيق لتطوير البرمجيات.
تتضمن العناصر والمفاهيم الأساسية في مخطط التسلسل ما يلي:
- شرايين الحياة: تمثل هذه الكائنات أو المكونات الفردية المشاركة في التفاعل. عادةً ما يتم تصوير كل شريان حياة كخط عمودي، وغالبًا ما يتم وضع أسمائهم في أعلى هذه الخطوط.
- رسائل: هذه هي الأسهم أو الخطوط الأفقية التي تربط شرايين الحياة، مما يشير إلى ترتيب الرسائل التي يتم تمريرها بين الكائنات. يمكن أن تكون الرسائل متزامنة (محظورة) أو غير متزامنة (غير محظورة)، وعادةً ما تحتوي على تسميات تصف الإجراء أو الطريقة التي يتم استدعاؤها.
- أشرطة التنشيط: تمثل هذه الفترة التي يكون فيها الكائن نشطًا ويقوم بمعالجة الرسالة. يتم تصويرها كمربع أو مستطيل رأسي على شريان الحياة وتظهر مدة مشاركة الكائن في التفاعل.
- رسائل العودة: تشير هذه إلى الاستجابة من كائن إلى الرسالة التي تلقاها. وعادة ما يتم تمثيلها بخط متقطع ويتم تصنيفها لإظهار النتيجة أو القيمة التي يتم إرجاعها.
- الأجزاء الاختيارية: يمكن أن تتضمن المخططات التسلسلية أيضًا أجزاء اختيارية، مثل الحلقات والشروط والمسارات البديلة، والتي تساعد في توضيح السيناريوهات المختلفة ونقاط القرار داخل التفاعل.
المخططات التسلسلية مفيدة لأغراض مختلفة، بما في ذلك:
- فهم وتصور تدفق التفاعلات بين الأشياء أو المكونات.
- تصميم وتوثيق سلوك نظام أو ميزة محددة.
- التواصل ومناقشة سلوك النظام مع أصحاب المصلحة، بما في ذلك المطورين والمختبرين ومحللي الأعمال.
- تحديد المشكلات المحتملة، مثل الاختناقات أو مشكلات المزامنة في تصميم النظام.
بشكل عام، تعد المخططات التسلسلية أداة قيمة في عملية تطوير البرمجيات لنمذجة وفهم الجوانب الديناميكية لتشغيل النظام. إنها تكمل مخططات UML الأخرى مثل المخططات الطبقية ومخططات حالة الاستخدام، والتي تركز على جوانب مختلفة من تصميم النظام وبنيته.
مثال مخطط التسلسل
لنقم بإنشاء مثال بسيط لمخطط التسلسل لتوضيح كيفية عمله. في هذا المثال، سنقوم بنمذجة التفاعل بين العميل وجهاز الصراف الآلي الخاص بالبنك عندما يقوم العميل بسحب النقود.
العنوان: السحب النقدي من الصراف الآلي
شرايين الحياة:
عميل
ماكينة الصراف الآلي
رسائل:
- عميل -> ماكينة الصراف الآلي: أدخل البطاقة
- ماكينة الصراف الآلي -> العميل: التحقق من البطاقة
- عميل -> ماكينة الصراف الآلي: أدخل رقم التعريف الشخصي
- ماكينة الصراف الآلي -> العميل: قم بالتحقق من رقم التعريف الشخصي
- عميل -> ماكينة الصراف الآلي: طلب السحب النقدي
- ماكينة الصراف الآلي -> البنك: التحقق من الأموال
- بنك –> ماكينة الصراف الآلي: تمت الموافقة عليه (أو تم رفضه)
- ماكينة الصراف الآلي -> العميل: صرف النقود
- ماكينة الصراف الآلي -> العميل: أخرج البطاقة
توضيح:
- يبدأ المخطط التسلسلي بشريطين حياة: “العميل” و”جهاز الصراف الآلي”.
- تشير “فترات التنشيط” إلى الوقت الذي يكون فيه كل شريان حياة نشطًا أثناء التفاعل. يكون العميل نشطا منذ البداية، ويصبح جهاز الصراف الآلي نشطا عندما يقوم العميل بإدخال البطاقة.
- يتم تبادل الرسائل بين شرايين الحياة لتمثيل تدفق التفاعل. وهنا تفصيل:
- يقوم العميل بإدخال بطاقته في جهاز الصراف الآلي.
- يقوم جهاز الصراف الآلي بالتحقق من البطاقة.
- يقوم العميل بإدخال رقم التعريف الشخصي (PIN) الخاص به.
- تقوم ماكينة الصراف الآلي بالتحقق من رقم التعريف الشخصي.
- يطلب العميل السحب النقدي.
- تقوم ماكينة الصراف الآلي بالاتصال بالبنك للتحقق من وجود أموال كافية.
- يقوم البنك بالرد على جهاز الصراف الآلي بالموافقة أو الرفض.
- في حالة الموافقة، تقوم ماكينة الصراف الآلي بتوزيع النقود للعميل.
- يقوم جهاز الصراف الآلي بإخراج بطاقة العميل.
- تظهر “فترات التنشيط” الموجودة في نهاية الرسم التخطيطي عندما يتم إلغاء تنشيط كل شريان حياة. وينتهي تفاعل العميل بعد استلام المبلغ النقدي وبطاقته، بينما يظل جهاز الصراف الآلي نشطًا.
هذا مثال أساسي لمخطط تسلسلي يصور التفاعل بين العميل وجهاز الصراف الآلي أثناء السحب النقدي. يمكن أن تصبح المخططات التسلسلية أكثر تعقيدًا عندما تقوم بنمذجة التفاعلات التي تتضمن كائنات أو مكونات متعددة، وفروعًا شرطية، وحلقات، والمزيد.
اعرف المزيد: ما هو مخطط النشاط؟
مخططات التسلسل في UML
الرسوم البيانية التسلسلية هي نوع من مخططات UML (لغة النمذجة الموحدة) المستخدمة لتصور وتوثيق التفاعلات والسلوكيات الديناميكية بين الكائنات أو المكونات داخل نظام أو تطبيق برمجي. فهي تساعد في تصميم تسلسل الرسائل المتبادلة أثناء تنفيذ حالة الاستخدام أو سيناريو محدد. فيما يلي بعض المكونات والمفاهيم الأساسية المستخدمة بشكل شائع في المخططات التسلسلية:
- شرايين الحياة: تمثل شرايين الحياة الكائنات أو المكونات المشاركة في التفاعل. يتم تصويرها عادةً على شكل خطوط عمودية (غالبًا ما تكون متقطعة) مع اسم الكائن أو المكون في الأعلى.
- أشرطة التنشيط: تمثل هذه الأشرطة الأفقية، التي يتم رسمها غالبًا أعلى خط الحياة، الوقت الذي يقوم فيه كائن أو مكون بمعالجة الرسالة بشكل فعال. تظهر عندما يكون الكائن مشغولاً ومتى يكون خاملاً.
- رسائل: الرسائل هي الأسهم أو الخطوط التي تربط شرايين الحياة وتظهر تدفق الاتصال بين الكائنات. توجد عدة أنواع من الرسائل، مثل:
الرسائل المتزامنة: يتم تصويرها بأسهم ثابتة وتشير إلى أن المرسل ينتظر الرد قبل المتابعة.
الرسائل غير المتزامنة: يتم تمثيلها بأسهم متقطعة وتشير إلى أن المرسل يستمر دون انتظار الرد.
رسائل الإرجاع: تظهر مع سهم متقطع ومرجع مسمى، وهي تمثل الاستجابة التي تم إرجاعها بواسطة الكائن المتلقي.
الرسائل الذاتية: هذه هي الرسائل المرسلة من كائن إلى نفسه ويتم تصويرها على شكل سهم استرجاع.
- التنشيط وإلغاء التنشيط: عندما يكون الكائن نشطًا (معالجة رسالة)، يكون شريط التنشيط نشطًا، وعندما لا يقوم بمعالجة رسالة، يتم إلغاء تنشيط شريط التنشيط.
- الأجزاء الاختيارية: يتم استخدامها لتمثيل السلوك الشرطي والتكراري في مخطط التسلسل. على سبيل المثال، يمكنك استخدام أجزاء “alt” (بديلة) و”loop” لإظهار سيناريوهات أو حلقات مختلفة داخل التفاعل.
- تدمير الكائن: يتم عرض نهاية كائن أو مكون بعلامة “X” كبيرة على شريان الحياة.
تعتبر مخططات التسلسل مفيدة لأغراض مختلفة، بما في ذلك:
- نمذجة التفاعلات بين الكائنات أثناء حالة الاستخدام أو السيناريو.
- فهم السلوك الديناميكي للنظام.
- تصميم وتوثيق ترتيب تبادل الرسائل.
- تحديد المشكلات المحتملة، مثل مشكلات التزامن أو الاختناقات.
- توصيل سلوك النظام إلى أصحاب المصلحة، بما في ذلك المطورين والمختبرين ومحللي الأعمال.
تعد هذه المخططات أداة حاسمة في تطوير البرمجيات لتحديد وتصميم وتوثيق الجوانب الديناميكية لسلوك النظام أو التطبيق. وهي تكمل مخططات UML الأخرى، مثل المخططات الطبقية (التي تصف البنية الثابتة) ومخططات حالة الاستخدام (التي تظهر وظائف النظام من منظور المستخدم).
اعرف المزيد: ما هو مخطط UML؟