UML قابل للتنفيذ

لغة النمذجة الموحدة القابلة للتنفيذ ( xtUML أو xUML ) هي منهجية لتطوير البرمجيات ولغة برمجية تجريدية للغاية. وُصفت لأول مرة عام 2002 في كتاب "لغة النمذجة الموحدة القابلة للتنفيذ: أساس لهندسة البرمجيات الموجهة بالنماذج". [ 1 ] تجمع هذه اللغة بين مجموعة فرعية من تدوين UML ( لغة النمذجة الموحدة ) الرسومي ودلالات التنفيذ وقواعد التوقيت. [ 2 ] تُعد منهجية لغة النمذجة الموحدة القابلة للتنفيذ امتدادًا لمنهجية شلاير-ميلور . [ 3 ]

يمكن تشغيل نماذج UML القابلة للتنفيذ واختبارها وتصحيح أخطائها وقياس أدائها، [ 4 ] كما يمكن ترجمتها إلى لغة برمجة أقل تجريدًا لاستهداف تطبيق محدد . [ 5 ] يدعم UML القابل للتنفيذ بنية البرمجيات الموجهة بالنماذج (MDA) من خلال تحديد نماذج مستقلة عن المنصة، وترجمة هذه النماذج إلى نماذج خاصة بالمنصة . [ 6 ] [ 7 ]

ملخص

تُعدّ لغة UML التنفيذية مستوىً أعلى من التجريد مقارنةً بلغات البرمجة من الجيل الثالث . وهذا يُتيح للمطورين تطوير تطبيقاتهم على مستوى تجريد التطبيق نفسه. [ 8 ] تهدف لغة UML التنفيذية إلى فصل الاهتمامات ، مما يُفترض أن يُسهّل إعادة استخدام المكونات ويُقلّل تكلفة تطوير البرمجيات . كما يُتيح ذلك أيضًا أن تكون مجالات لغة UML التنفيذية متعددة المنصات ، أي أنها غير مرتبطة بأي لغة برمجة أو منصة أو تقنية مُحددة.

تتيح لغة النمذجة الموحدة القابلة للتنفيذ (Executable UML) أيضًا ترجمة النماذج المستقلة عن المنصة (PIM) إلى نماذج خاصة بالمنصة (PSM). تُمكّن هذه الطريقة من تقييم النموذج كملكية فكرية ، كونه حلاً قابلاً للتنفيذ بالكامل لمجال المشكلة.

يتم تحديد الإجراءات بلغة الإجراءات . وهذا يعني أنه يمكن إخراج الكود التنفيذي المُولّد تلقائيًا من نماذج UML القابلة للتنفيذ بشكل مُحسّن.

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

لبنات بناء UML قابلة للتنفيذ

يتألف النظام من عدة مواضيع، تُعرف في مصطلحات لغة النمذجة الموحدة القابلة للتنفيذ (Executable UML) باسم " المجالات ". تُستخدم لغة النمذجة الموحدة القابلة للتنفيذ لنمذجة المجال على مستوى تجريد موضوعه، بمعزل عن اعتبارات التنفيذ. ويُمثَّل نموذج المجال الناتج بالعناصر التالية :

  • يوفر مخطط المجال نظرة عامة على المجال الذي يتم نمذجته، والتبعيات التي تربطه بالمجالات الأخرى.
  • يحدد مخطط الفئات الفئات وارتباطات الفئات للمجال.
  • يحدد مخطط الحالة الحالات والأحداث وانتقالات الحالة لفئة أو مثيل فئة.
  • تحدد لغة الإجراءات الإجراءات أو العمليات التي تقوم بمعالجة عناصر النموذج.

مخطط المجال

يتطلب استخدام لغة النمذجة الموحدة (UML) القابلة للتنفيذ تحديد مجالات النظام (المعروفة أيضًا باسم: الجوانب [ 9 ] أو الاهتمامات ). "كل مجال هو عالم مستقل تسكنه كيانات مفاهيمية" [ 10 ]. يمكن نمذجة كل مجال بشكل مستقل عن المجالات الأخرى في النظام، مما يتيح فصل الاهتمامات . على سبيل المثال، قد تتضمن مجالات نظام الصراف الآلي ما يلي:

إن فصل الاهتمامات يمكّن من تطوير كل مجال والتحقق منه بشكل مستقل عن المجالات الأخرى في النظام من قبل خبراء المجال المعنيين.

تُسمى الروابط بين المجالات " جسورًا ". "الجسر هو اعتماد متبادل بين المجالات". [ 11 ] وهذا يعني أن المجالات يمكنها فرض متطلبات على مجالات أخرى. يُوصى بأن يتفق خبراء المجالات المختلفة على الجسور.

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

مخطط الفئات

يتم تجريد الكيانات المفاهيمية، مثل الأشياء المادية والأدوار والحوادث والتفاعلات والمواصفات، الخاصة بالمجال الذي يتم نمذجته، إلى فئات . يمكن أن تحتوي الفئات على سمات وعمليات .

سيتم توضيح العلاقات بين هذه الفئات من خلال الارتباطات والتعميمات . وقد يتطلب الارتباط مزيدًا من التجريد كفئة ارتباط .

يمكن كتابة القيود على مخطط الفئات في كل من لغة الإجراءات ولغة قيود الكائنات (OCL).

تحدد طريقة UML القابلة للتنفيذ عناصر UML التي يمكن استخدامها في مخطط فئة UML القابل للتنفيذ.

يهدف مخطط فئات UML القابل للتنفيذ إلى عرض معلومات حول المجال. ويُعدّ التعقيد المفرط في مخططات الحالة مؤشراً جيداً على ضرورة إعادة تصميم مخطط الفئات.

مخطط الحالة

للفئات دورات حياة يتم نمذجتها في لغة النمذجة الموحدة القابلة للتنفيذ (Executable UML) باستخدام مخطط الحالة . يحدد مخطط الحالة الحالات والانتقالات والأحداث والإجراءات التي تحدد سلوك الفئة.

لكل حالة إجراء واحد فقط يتم تنفيذه عند الدخول إلى تلك الحالة . يتكون الإجراء من سلسلة من الحركات، والتي يتم تحديدها بلغة خاصة بالحركات.

لغة الحركة

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

أُضيفت دلالات الأفعال إلى مواصفات لغة النمذجة الموحدة (UML) في عام ٢٠٠١. واستند طلب تقديم العروض الخاص بدلالات الأفعال إلى أعمال سابقة في لغات الأفعال التي تدعم منهج شلاير-ميلور . وتشمل لغات الأفعال الحالية: لغة أفعال الكائنات (OAL)، ولغة أفعال شلاير-ميلور (SMALL)، ولغة مواصفات الأفعال (ASL)، ولغة مواصفات أفعال النماذج (MASL)، [ ١٢ ] ولغة الأفعال تلك (TALL)، ولغة أفعال ستار العلائقية الموجزة (SCRALL)، ولغة الأفعال المستقلة عن المنصة (PAL)، ولغة أفعال باث ميت (PAL). وتُعد SCRALL اللغة الوحيدة التي تُصنف كلغة أفعال رسومية.

اختبار النموذج وتنفيذه

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

ستشمل عملية التحقق أموراً مثل المراجعة البشرية للنماذج، التي يقوم بها خبراء في المجال ذي الصلة، والفحص الآلي لدلالات UML التنفيذية. أي التحقق من أن نموذج UML التنفيذي يتوافق مع نموذج UML الفوقي التنفيذي .

تتضمن عملية التحقق عادةً استخدام أداة UML قابلة للتنفيذ لتنفيذ النموذج. ويمكن أن يتم التنفيذ إما قبل أو بعد تجميع النموذج.

تجميع النموذج

لضمان تنفيذ البرنامج على النظام المستهدف ، يجب ترجمة نموذج المجال إلى صيغة أقل تجريدًا . تُسمى عملية الترجمة هذه بتجميع النموذج . تستهدف معظم مُجمِّعات النماذج لغة برمجة معروفة ، لأن ذلك يسمح بإعادة استخدام تقنيات التجميع الموجودة .

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

في مصطلحات هندسة النماذج (MDA) ، يقوم مُجمِّع النموذج بإنشاء ملف PSM . ويؤدي الفصل بين ملف PIM وملف PSM في لغة UML التنفيذية إلى تعطيل إمكانية إعادة هندسة النموذج ذهابًا وإيابًا ، ويمنع إجراء أي تعديلات على ملف PSM . [ 13 ]

الجوانب الرئيسية لملف UML القابل للتنفيذ

يُحدد برنامج UML القابل للتنفيذ دلالات التنفيذ لمجموعة فرعية من لغة UML. تشمل الجوانب الرئيسية لهذه المجموعة الفرعية ما يلي:

fUML و ALF

قامت مجموعة إدارة الكائنات بتوحيد معايير UML الأساسية (fUML) ، والتي تأثرت بشدة بـ UML القابل للتنفيذ.

لغة الإجراءات لـ UML الأساسي (ALF)، [ 15 ] هي مواصفات لغة إجراءات قياسية من قبل مجموعة إدارة الكائنات .

انظر أيضاً

المنشورات

  • جيري بويد (2003) "البرمجة التنفيذية UML: مخططات للمستقبل." نُشر على devx.com ، 5 فبراير 2003.
  • شاين فلينت، وكليف بوتون (2003) "لغة النمذجة الموحدة القابلة للتنفيذ/الترجمة وهندسة النظم". مناهج عملية للأنظمة المعقدة (SETE 2003) .
  • شاين فلينت، وهنري غاردنر، وكليف بوتون (2004). "لغة النمذجة الموحدة القابلة للتنفيذ/الترجمة في تعليم علوم الحاسوب". وقائع المؤتمر الأسترالي السادس لتعليم علوم الحاسوب - المجلد 30. الجمعية الأسترالية للحاسبات.
  • إتش إس لاهمن (2011). التطوير القائم على النماذج: التطبيقات . أديسون-ويسلي بروفيشنال. رقم ISBN 0-321-77407-8.
  • ستيفن ج. ميلور ومارك بالسر (2002). لغة النمذجة الموحدة القابلة للتنفيذ: أساس لهندسة البرمجيات الموجهة بالنماذج . أديسون ويسلي. ISBN 0-201-74804-5.الفصل الأول متاح عبر الإنترنت
  • لغة النمذجة الموحدة (UML) قابلة للتنفيذ والترجمة
  • ستيفن ج. ميلور (2004)، مقدمة إلى لغة النمذجة الموحدة القابلة للتنفيذ والترجمة
  • ستيفن ج. ميلور (2004)، إطار عمل للنمذجة الموجهة نحو الجوانب
  • كريس رايستريك وآخرون  (2004). هندسة معمارية قائمة على النماذج مع لغة النمذجة الموحدة القابلة للتنفيذ . مطبعة جامعة كامبريدج. ISBN 0-521-53771-1.
  • ليون ستار (2002). لغة النمذجة الموحدة القابلة للتنفيذ: كيفية بناء نماذج الفئات . برنتيس هول. ISBN 0-13-067479-6.

مراجع

  1. ميلور وبالسر 2002
  2. ستار 2002، ص 3.
  3. جي. أوكيف (2006) "دلالات المنطق الديناميكي لتناسق لغة النمذجة الموحدة" في: هندسة البرمجيات الموجهة بالنماذج - الأسس والتطبيقات: المؤتمر الأوروبي الثاني، ECMDA-FA 2006، بلباو، إسبانيا، 10-13 يوليو 2006، وقائع المؤتمر . تحرير أريند رينسينك. ص 124
  4. ستار 2002، ص 3.
  5. ميلور وبالسر 2002، القسم 1.4.
  6. ميلور وبالسر 2002، القسم 1.5.
  7. رايستريك وآخرون 2004، القسمان 2.3.3 و 2.3.4.
  8. ميلور وبالسر 2002، القسم 1.1.
  9. ميلور وبالسر 2002، القسم 3.4.
  10. ميلور وبالسر 2002، ص 14.
  11. ميلور وبالسر 2002، ص 35.
  12. "MASL هي لغة نمذجة هيكلية ولغة أفعال من لهجة شلاير-ميلور: xtuml/masl" . xtUML. 27 ديسمبر 2018. تم الاطلاع عليه بتاريخ 26 أكتوبر 2019 .
  13. ميلور وبالسر 2002، الفصل 9.
  14. ميلور وبالسر 2002، ص. xxx.
  15. "لغة العمل لأساسيات UML™ (ALF™)" . www.omg.org . تم الاطلاع عليه بتاريخ 21-12-2016 .