لغة النمذجة الموحدة

لغة النمذجة الموحدة ( UML ) هي لغة نمذجة مرئية عامة الأغراض وموجهة للكائنات، توفر طريقة لتصور بنية وتصميم النظام، على غرار وظيفة المخطط . [ 1 ] [ 2 ] تحدد UML رموزًا لـ 14 نوعًا من المخططات التي تركز على جوانب مثل السلوك والتفاعل والبنية.

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

تم ابتكار لغة النمذجة الموحدة (UML) في محاولة لوضع معيار موحد لبرمجة الكائنات في مؤتمر OOPSLA '95. في البداية، قام جرادي بوتش وجيمس رامبو بدمج نموذجيهما في نموذج موحد. بعد ذلك، استحوذت شركة بوتش، Rational Software، على شركة إيفار جاكوبسون، Objectory، ودمجت نموذجها في لغة النمذجة الموحدة. في ذلك الوقت، كانت Rational وObjectory من أبرز الشركات في سوق موردي أدوات وأساليب برمجة الكائنات المستقلين. [ 3 ] ثم تولت مجموعة إدارة الكائنات (OMG) ملكية لغة النمذجة الموحدة.

كان الدافع وراء إنشاء لغة النمذجة الموحدة (UML) هو الرغبة في توحيد طبيعة أنظمة الترميز وأساليب تصميم البرمجيات المتباينة في ذلك الوقت. [ 4 ] في عام 1997، اعتمدت مجموعة إدارة الكائنات (OMG) لغة النمذجة الموحدة كمعيار ، وتتولى هذه المنظمة إدارتها منذ ذلك الحين. وفي عام 2005، نشرت المنظمة الدولية للمعايير (ISO) واللجنة الكهروتقنية الدولية (IEC) لغة النمذجة الموحدة أيضًا كمعيار ISO/IEC 19501. [ 5 ] ومنذ ذلك الحين، يُراجع المعيار دوريًا ليشمل أحدث إصدارات لغة النمذجة الموحدة. [ 6 ]

لا يستخدم معظم المطورين لغة النمذجة الموحدة (UML) بشكل مباشر، بل ينتجون بدلاً من ذلك مخططات غير رسمية، غالباً ما تكون مرسومة يدوياً. ومع ذلك، غالباً ما تتضمن هذه المخططات عناصر من لغة النمذجة الموحدة. [ 7 ] : 536

يستخدم

تُستخدم لغة النمذجة الموحدة (UML) بشكل أساسي في تطوير البرمجيات (في أي صناعة أو مجال) [ 8 ] ، ولكنها تُستخدم أيضًا في مجالات أخرى، بما في ذلك عمليات الأعمال ، ووظائف النظام ، ومخططات قواعد البيانات ، وسير العمل في الأنظمة القانونية، والإلكترونيات الطبية ، وأنظمة الرعاية الصحية ، وتصميم الأجهزة [ 9 ] . وتستخدمها منظمة إدارة الكائنات (OMG) نفسها لتعريف منتجاتها الأخرى، مثل إطار العمل الموحد للهندسة المعمارية (UAF) ولغة نمذجة الأنظمة ( SysML ) الإصدار 1.

صُممت لغة النمذجة الموحدة (UML) للاستخدام مع العديد من أساليب تطوير البرمجيات الموجهة للكائنات، سواءً في الوقت الحاضر أو ​​في الأساليب التي طُورت بها لأول مرة، بما في ذلك OMT ، ومنهجية Booch ، و Objectory ، وخاصةً RUP ، التي كان من المُخطط استخدامها معها عند بدء العمل في شركة Rational Software. [ 10 ] على الرغم من أن UML صُممت في الأصل لتوثيق تصميم البرمجيات الموجهة للكائنات، فقد استُخدمت بفعالية في سياقات أخرى مثل نمذجة عمليات الأعمال. [ 11 ] [ 12 ]

بما أن لغة النمذجة الموحدة (UML) غير مرتبطة بطبيعتها بلغة برمجة معينة ، فيمكن استخدامها لنمذجة نظام مستقل عن اللغة. بعض أدوات UML تُولّد شفرة مصدرية من نموذج UML. [ 13 ]

الرسوم البيانية

وصف مكونات نظام حجز السفر

تدعم مخططات UML تصور جوانب النظام مثل: [ 14 ]

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

مشاركة

يمكن تبادل نماذج UML بين أدوات UML عبر تنسيق تبادل البيانات الوصفية XML (XMI).

تدوين العددية

كما هو الحال مع قواعد بيانات Chen وBachman ومخططات ER الخاصة بـ ISO ، تُحدد نماذج الفئات باستخدام علاقات "النظر عبر" ( look-across) ، على الرغم من أن العديد من المؤلفين ( Merise [ 15 Elmasri & Navathe [ 16 ] ، وغيرهم [ 17 ] ) يفضلون علاقات "النظر من نفس الجانب" أو "النظر هنا" للأدوار، بالإضافة إلى الحد الأدنى والحد الأقصى للعلاقات. وقد أظهر باحثون حديثون (Feinerer [ 18 ] وDullea et al. [ 19 ] ) أن تقنية "النظر عبر" المستخدمة في UML ومخططات ER أقل فعالية وأقل اتساقًا عند تطبيقها على علاقات من الرتبة n التي تزيد رتبتها عن 2.

يقول فاينر: "تنشأ المشاكل إذا عملنا وفقًا لدلالات البحث المتبادل المستخدمة في علاقات UML. وقد بحث هارتمان [ 20 ] هذه الحالة وبيّن كيف ولماذا تفشل التحويلات المختلفة."، ويضيف: "كما سنرى في الصفحات القليلة التالية، يُدخل تفسير البحث المتبادل العديد من الصعوبات التي تمنع توسيع الآليات البسيطة من العلاقات الثنائية إلى العلاقات متعددة الأطراف."

القطع الأثرية

مكونات إظهار القطع الأثرية

المنتج هو "مواصفات معلومة مادية تُستخدم أو تُنتج من خلال عملية تطوير البرمجيات ، أو من خلال نشر وتشغيل نظام" [ 21 ] ، بما في ذلك النماذج، وشفرة المصدر ، والبرامج النصية، والملفات التنفيذية ، والجداول في أنظمة قواعد البيانات ، ومخرجات التطوير، ووثائق التصميم ، ورسائل البريد الإلكتروني . [ 21 ]

العنصر المادي هو الكيان الذي يُنشر على عقدة . [ 21 ] تُجسد عناصر UML الأخرى، مثل الفئات والمكونات، أولاً في عناصر مادية، ثم تُنشر نسخ من هذه العناصر. ويمكن أن تتكون العناصر المادية من عناصر مادية أخرى.

النمذجة الفوقية

رسم توضيحي لمرفق الكائن الفائق

طوّرت مجموعة إدارة الكائنات (OMG) بنيةً للنمذجة الفوقية لتعريف لغة النمذجة الموحدة (UML)، تُسمى مرفق الكائنات الفوقية (MOF). [ 22 ] صُمم MOF كبنية رباعية الطبقات، كما هو موضح في الصورة على اليمين. يوفر نموذجًا فوقيًا في الأعلى، يُسمى الطبقة M3. هذا النموذج M3 هو اللغة التي يستخدمها مرفق الكائنات الفوقية لبناء نماذج فوقية، تُسمى نماذج M2.

من أمثلة نماذج الطبقة الثانية (M2) نموذج UML الفوقي، الذي يصف لغة UML نفسها. تصف هذه النماذج عناصر الطبقة الأولى (M1)، وبالتالي نماذج M1. على سبيل المثال، قد تكون هذه نماذج مكتوبة بلغة UML. قد يصف وصف بنية البرمجيات حالات تشغيل النظام. [ 23 ] . أما الطبقة الأخيرة فهي الطبقة الصفرية (M0) - وهي تمثل الواقع الذي يتم وصفه أو نمذجته.

يمكن توسيع نموذج UML الفوقي باستخدام آلية تُسمى التنميط النمطي . وقد انتقد برايان هندرسون-سيلرز وسيزار غونزاليس-بيريز هذه الآلية باعتبارها غير كافية/غير قابلة للتطبيق في بحثهما "استخدامات وإساءات استخدام آلية التنميط النمطي في UML 1.x و2.0". [ 24 ]

الرسوم البيانية

يُعرّف UML 2 أربعة عشر نوعًا أو نمطًا من المخططات - موضحة كتصنيف في الصورة. [ 14 ] [ 25 ]

تسلسل هرمي لمخططات UML 2.2، معروض كمخطط فئات
تسلسل هرمي لمخططات UML 2.2، معروض كمخطط فئات

مخططات هيكلية

تُبرز مخططات البنية هيكل النظام - باستخدام الكائنات والمصنفات والعلاقات والخصائص والعمليات. وتُستخدم لتوثيق بنية البرمجيات .

مخططات السلوك

تُبرز مخططات السلوك سلوك النظام من خلال إظهار التفاعلات بين العناصر والتغيرات التي تطرأ على حالاتها الداخلية. وتُستخدم هذه المخططات لوصف وظائف النظام.

مخططات التفاعل

تؤكد مخططات التفاعل، وهي مجموعة فرعية من مخططات السلوك، على تدفق التحكم والبيانات بين مكونات النظام.

أمثلة

التبني

في عام 2013، قامت مجموعة إدارة الكائنات (OMG) بتسويق لغة النمذجة الموحدة (UML) للعديد من السياقات، ولكنها استهدفت في المقام الأول تطوير البرمجيات بنجاح محدود. [ 12 ] [ 27 ]

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

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

أزالت Visual Studio دعم UML في عام 2016 بسبب قلة الاستخدام. [ 30 ]

تاريخ

الجدول الزمني والعلاقات بين أساليب البرمجة الكائنية والرموز المستخدمة

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

أصل

استقطبت شركة راشيونال سوفتوير جيمس رامبو من شركة جنرال إلكتريك عام 1994، ومنذ ذلك الحين، أصبحت الشركة مصدرًا لاثنين من أشهر مناهج نمذجة الكائنات في ذلك الوقت: [ 31 ] تقنية رامبو لنمذجة الكائنات (OMT) ومنهجية جرادي بوتش. وسرعان ما انضم إليهم إيفار جاكوبسون ، مبتكر منهجية هندسة البرمجيات الموجهة للكائنات (OOSE)، في راشيونال عام 1995. [ 4 ]

UML 1.x

تعتمد لغة النمذجة الموحدة (UML) في الأصل على رموز طريقة بوش ، وتقنية نمذجة الكائنات (OMT)، وهندسة البرمجيات الموجهة للكائنات (OOSE)، والتي تم دمجها في لغة واحدة. [ 14 ] طُوّرت لغة النمذجة الموحدة (UML) في شركة راشيونال سوفتوير في الفترة 1994-1995، واستمر تطويرها بقيادة الشركة حتى عام 1996. [ 4 ]

تحت القيادة التقنية لرامباو وجاكوبسون وبوتش، تم تشكيل اتحاد يُعرف باسم " شركاء لغة النمذجة الموحدة" (UML Partners ) عام 1996 لإكمال مواصفات لغة النمذجة الموحدة (UML) وتقديمها إلى مجموعة إدارة الكائنات (OMG) لتوحيدها. وضمّ هذا الاتحاد أيضًا جهات معنية أخرى (مثل HP و DEC و IBM ومايكروسوفت ). وقدّم الاتحاد مسودة UML 1.0 إلى OMG في يناير 1997. وفي الشهر نفسه، شكّل "شركاء لغة النمذجة الموحدة" فريقًا، برئاسة كريس كوبرين وإدارة إد إيكهولت، لتحديد المعنى الدقيق لبنى اللغة، وذلك لوضع الصيغة النهائية للمواصفات ودمجها مع جهود التوحيد الأخرى. وقدّمت نتيجة هذا العمل، UML 1.1، إلى OMG في أغسطس 1997، واعتمدتها OMG في نوفمبر 1997. [ 4 ] [ 32 ]

بعد الإصدار الأول، تم تشكيل فريق عمل [ 4 ] لتحسين اللغة، والذي أصدر العديد من المراجعات الطفيفة، 1.3 و1.4 و1.5. [ 33 ]

وقد لوحظ أن المعايير التي أنتجتها (وكذلك المعيار الأصلي) تتسم بالغموض وعدم الاتساق. [ 34 ]

UML 2

تم استبدال الإصدار 1.5 من لغة النمذجة الموحدة (UML) بمراجعة رئيسية في عام 2005، وقد تم تطويره بالتعاون مع مجموعة موسعة من الخبراء لتحسين اللغة بشكل أكبر لتعكس التجارب الجديدة في استخدام ميزاتها. [ 35 ]

على الرغم من أن UML 2.1 لم يُصدر رسميًا كمواصفة، فقد ظهرت النسختان 2.1.1 و2.1.2 في عام 2007، تلتها UML 2.2 في فبراير 2009. أُصدرت UML 2.3 رسميًا في مايو 2010. [ 36 ] أُصدرت UML 2.4.1 رسميًا في أغسطس 2011. [ 36 ] أُصدرت UML 2.5 في أكتوبر 2012 كنسخة "قيد التطوير" ثم أُصدرت رسميًا في يونيو 2015. [ 36 ] اعتُمدت النسخة الرسمية 2.5.1 في ديسمبر 2017. [ 1 ]

يتكون معيار UML 2.x من أربعة أجزاء:

  • البنية الفوقية التي تحدد الترميز والدلالات الخاصة بالمخططات وعناصر النموذج الخاصة بها
  • البنية التحتية التي تحدد النموذج الفوقي الأساسي الذي تستند إليه البنية الفوقية
  • لغة قيود الكائنات (OCL) لتحديد قواعد عناصر النموذج
  • تبادل مخططات UML الذي يحدد كيفية تبادل تخطيطات مخططات UML 2

حتى الإصدار UML 2.4.1، كانت أحدث إصدارات هذه المعايير هي: [ 37 ]

  • إصدار UML Superstructure 2.4.1
  • إصدار البنية التحتية UML 2.4.1
  • إصدار OCL 2.3.1
  • تبادل مخططات UML الإصدار 1.0.

منذ الإصدار 2.5، تم تبسيط مواصفات UML (بدون البنية الفوقية والبنية التحتية)، وأحدث إصدارات هذه المعايير هي الآن: [ 38 ]

  • مواصفات UML 2.5.1
  • إصدار OCL 2.4

يستمر فريق عمل المراجعة في تحديثه وتحسينه، ويعمل على حل أي مشاكل تتعلق باللغة. [ 39 ]

انظر أيضاً

مراجع

  1. 1 2 لغة النمذجة الموحدة 2.5.1 . رقم وثيقة مجموعة إدارة الكائنات: رسمي/2017-12-05. منظمة تطوير معايير مجموعة إدارة الكائنات. ديسمبر 2017.
  2. [1412.2458] أنظمة وآراء ونماذج UML. بقلم روث برو رادو جروسو فرانز هوبر بيرنهارد رومب فولفجانج شفيرين. arXiv arxiv.org
  3. "من المنهج الموحد إلى اللغة الموحدة" . modelseverywhere.wordpress.com . ١٣ نوفمبر ٢٠١٠. تم الاطلاع عليه بتاريخ ١٩ ديسمبر ٢٠١٣ .
  4. 1 2 3 4 5 دليل مستخدم لغة النمذجة الموحدة (الطبعة الثانية ). أديسون-ويسلي. 2005. ص 496. ISBN   0321267974. اطلع على المحتوى النموذجي: ابحث عن السجل
  5. "ISO/IEC 19501:2005 - تكنولوجيا المعلومات - المعالجة الموزعة المفتوحة - لغة النمذجة الموحدة (UML) الإصدار 1.4.3" . Iso.org. 1 أبريل 2005. تم الاطلاع عليه بتاريخ 7 مايو 2015 .
  6. "ISO/IEC 19505-1:2012 - تكنولوجيا المعلومات - لغة النمذجة الموحدة لمجموعة إدارة الكائنات (OMG UML) - الجزء 1: البنية التحتية" . Iso.org. 20 أبريل 2012. تم الاطلاع عليه بتاريخ 10 أبريل 2014 .
  7. سيباستيان بالتس؛ ستيفان ديهل (11 نوفمبر 2014). "الرسومات التخطيطية والمخططات في الممارسة العملية" . وقائع الندوة الدولية الثانية والعشرين لجمعية ACM SIGSOFT حول أسس هندسة البرمجيات . FSE 2014. جمعية آلات الحوسبة . الصفحات 530-541 . arXiv : 1706.09172 . doi : 10.1145/2635868.2635891 . ISBN  978-1-4503-3056-5. S2CID 2436333 . 
  8. كونالين، جيم (1999). "نمذجة بنى تطبيقات الويب باستخدام لغة النمذجة الموحدة" (ملف PDF) . مجلة اتصالات رابطة مكائن ​​الحوسبة . 42 (10): 63-70 . doi : 10.1145/317665.317677 .
  9. جاكوبسون، إيفار ؛ جرادي بوتش؛ جيمس رامبو (1998). عملية تطوير البرمجيات الموحدة . أديسون ويسلي لونجمان. ISBN 0-201-57169-2.
  10. جون هانت (2000). العملية الموحدة للممارسين: التصميم الموجه للكائنات، ولغة النمذجة الموحدة (UML)، ولغة جافا . سبرينغر، 2000. ISBN 1-85233-275-1ص.  5. باب
  11. ساتيش ميشرا (1997). "النمذجة المرئية ولغة النمذجة الموحدة (UML): مقدمة إلى UML". مؤرشف في 20 يوليو 2011 على موقع Wayback Machine . شركة Rational Software. تاريخ الوصول: 9 نوفمبر 2008.
  12. 1 2 "UML، قصص النجاح" . تم الاطلاع عليه في 9 أبريل 2014 .
  13. "أهمية لغة النمذجة الموحدة (UML)" .
  14. 1 2 3 "لغة النمذجة الموحدة OMG (OMG UML)، البنية الفوقية. الإصدار 2.4.1" . مجموعة إدارة الكائنات . تم الاطلاع عليه في 9 أبريل 2014 .
  15. ^ هيوبرت تارديو، أرنولد روتشفيلد ورينيه كوليتي La Methode MERISE: Principes et outils (غلاف ورقي – 1983)
  16. Elmasri, Ramez, B. Shamkant, Navathe, Fundamentals of Database Systems, third ed., Addison-Wesley, Menlo Park, CA, USA, 2000.
  17. باولو أتزيني؛ ويسلي تشو؛ هونغجون لو؛ شويغينغ تشو؛ توك وانغ لينغ، محررون. (27 أكتوبر 2004). النمذجة المفاهيمية - مؤتمر ER 2004: المؤتمر الدولي الثالث والعشرون حول النمذجة المفاهيمية، شنغهاي، الصين، 8-12 نوفمبر 2004. سلسلة محاضرات في علوم الحاسوب 3288 ( طبعة 2004). سبرينغر . ISBN  3540237232.
  18. إنجو فاينر (مارس 2007). معالجة رسمية لمخططات فئات UML كطريقة فعالة لإدارة التكوين (ملف PDF) (أطروحة دكتوراه في العلوم التقنية). فيينا: جامعة فيينا التقنية. مؤرشف من الأصل (ملف PDF) في 29 يونيو 2024. تم الاطلاع عليه في 25 مايو 2024 .
  19. جيمس دوليا؛ إيل-يول سونغ؛ إيوانا لامبرو (1 نوفمبر 2003). "تحليل الصلاحية الهيكلية في نمذجة علاقات الكيانات". هندسة البيانات والمعرفة . 47 (2): 167-205 . doi : 10.1016/S0169-023X(03)00049-1 .
  20. سفين هارتمان (17 يناير 2003). الاستدلال حول قيود المشاركة وقيود تشين . وقائع المؤتمر الأسترالي الآسيوي الرابع عشر لقواعد البيانات ADC '03. الجمعية الأسترالية للحاسبات . الصفحات 105-113 . أيقونة الوصول المفتوح
  21. 1 2 3 "القطع الأثرية". لغة النمذجة الموحدة 2.5.1 . رقم وثيقة OMG: official/2017-12-05. منظمة تطوير معايير مجموعة إدارة الكائنات (OMG SDO). ديسمبر 2017. ص 656. 
  22. إيمان بورنومو (2006) " مرفق الكائنات الفوقية مُؤرشف في 30 يونيو 2016 على موقع Wayback Machine " في: وقائع مؤتمر SAC '06، وقائع ندوة ACM لعام 2006 حول الحوسبة التطبيقية ، الصفحات 1845-1849
  23. "بنية UML 2.4.1 التحتية" . Omg.org. 5 أغسطس 2011. تم الاطلاع عليه في 10 أبريل 2014 .
  24. برايان هندرسون-سيلرز ؛ سيزار غونزاليس-بيريز (1 أكتوبر 2006). "استخدامات وإساءة استخدام آلية النمط النمطي في UML 1.x و2.0". MoDELS '06: وقائع المؤتمر الدولي التاسع حول لغات وأنظمة هندسة النماذج . سلسلة محاضرات في علوم الحاسوب 4199. برلين ، ألمانيا: سبرينغر-فيرلاغ : 16-26 . doi : 10.1007/11880240_2 . ISBN 978-3-540-45772-5.
  25. جون هولت، معهد مهندسي الكهرباء (2004). لغة النمذجة الموحدة لهندسة النظم: مراقبة العجلات ، معهد مهندسي الكهرباء، 2004، رقم ISBN 0-86341-354-4ص  ٥٨
  26. ^ مانويل ألمندروس خيمينيز، خيسوس وإيريبارن، لويس. (2007). وصف علاقات حالة الاستخدام مع المخططات التسلسلية. حساب. ج.. 50. 116-128. 10.1093/comjnl/bxl053.
  27. "UML 2.5: هل يهمك الأمر أصلاً؟" . دكتور دوبس ."لغة النمذجة الموحدة (UML) منتشرة في كل مكان حقًا"
  28. "الموت بسبب حمى لغة النمذجة الموحدة" .
  29. "إيفار جاكوبسون يتحدث عن UML و MDA ومستقبل المنهجيات" .
  30. كريل، بول (18 أكتوبر 2016). "سيتم حذف لغة النمذجة الموحدة (UML) من مايكروسوفت فيجوال ستوديو" . إنفوورلد . تم الاطلاع عليه في 5 يناير 2026 .
  31. أندرياس زيندلر (1997) مفاهيم متقدمة، نماذج دورة الحياة، وأدوات لتطوير البرمجيات الموجهة للكائنات . ص 122
  32. "مواصفات لغة النمذجة الموحدة (UML) الإصدار 1.1 (وثيقة OMG ad/97-08-11)" . Omg.org . تم الاطلاع عليه بتاريخ 22 سبتمبر 2011 .
  33. "UML" . Omg.org . تم الاطلاع عليه بتاريخ 10 أبريل 2014 .
  34. جينوفا وآخرون 2004 "قضايا مفتوحة في نمذجة حالات الاستخدام الصناعي"
  35. "UML 2.0" . Omg.org . تم الاطلاع عليه بتاريخ 22 سبتمبر 2011 .
  36. 1 2 3 "UML" . Omg.org . تم الاطلاع عليه بتاريخ 22 سبتمبر 2011 .
  37. OMG. "مواصفات OMG الرسمية (فقرة النمذجة والبيانات الوصفية)" . تم الاطلاع عليه بتاريخ 12 فبراير 2016 .
  38. يا إلهي. "حول مواصفات لغة النمذجة الموحدة" . تم الاطلاع عليه بتاريخ 22 فبراير 2020 .
  39. "قائمة بريدية لفريق عمل مراجعة UML 2.6" . Omg.org . تم الاطلاع عليه بتاريخ 10 أبريل 2014 .

للمزيد من القراءة