الهندسة القائمة على النماذج
هندسة البرمجيات الموجهة بالنماذج ( MDE ) هي منهجية لتطوير البرمجيات تركز على إنشاء نماذج المجال واستخدامها ، وهي نماذج مفاهيمية لجميع المواضيع المتعلقة بمشكلة محددة. وبالتالي، فهي تسلط الضوء على التمثيلات المجردة للمعرفة والأنشطة التي تحكم مجال تطبيق معين ، بدلاً من المفاهيم الحاسوبية (أي الخوارزمية ).
هندسة البرمجيات الموجهة بالنماذج (MDE) هي فرع من منهج تصميم البرمجيات المعروف باسم هندسة الرحلة ذهابًا وإيابًا . ويتجاوز نطاق هندسة البرمجيات الموجهة بالنماذج نطاق هندسة البرمجيات الموجهة بالنماذج بكثير . [ 1 ]
ملخص
يهدف منهج هندسة النماذج (MDE) إلى زيادة الإنتاجية من خلال تعظيم التوافق بين الأنظمة (عبر إعادة استخدام النماذج الموحدة)، وتبسيط عملية التصميم (عبر نماذج أنماط التصميم المتكررة في مجال التطبيق)، وتعزيز التواصل بين الأفراد والفرق العاملة على النظام (عبر توحيد المصطلحات وأفضل الممارسات المستخدمة في مجال التطبيق). على سبيل المثال، في تطوير النماذج، تُولَّد العناصر التقنية، مثل شفرة المصدر والوثائق والاختبارات وغيرها، خوارزميًا من نموذج المجال. [ 2 ]
يُعتبر نموذج هندسة النماذج فعالاً إذا كانت نماذجه منطقية من وجهة نظر المستخدم المُلمّ بالمجال، وإذا كانت تُشكّل أساساً لتنفيذ الأنظمة. تُطوّر هذه النماذج من خلال تواصل مكثف بين مديري المنتجات والمصممين والمطورين ومستخدمي مجال التطبيق. ومع اقتراب النماذج من الاكتمال، تُصبح مُيسّرة لتطوير البرمجيات والأنظمة.
من بين مبادرات MDE الأكثر شهرة ما يلي:
- مبادرة مجموعة إدارة الكائنات (OMG) للهندسة المعمارية الموجهة بالنموذج (MDA) والتي تستفيد منها العديد من معاييرها مثل مرفق الكائنات الفوقية ، وXMI ، وCWM ، وCORBA ، ولغة النمذجة الموحدة (وبشكل أدق، تشجع OMG حاليًا على استخدام مجموعة فرعية من UML تسمى fUML مع لغة الإجراءات الخاصة بها، ALF ، للهندسة المعمارية الموجهة بالنموذج؛ واعتمد النهج السابق على Executable UML و OCL بدلاً من ذلك)، و QVT . [ 3 ]
- يُمثل إطار عمل Eclipse Modeling Framework (إطار عمل Eclipse Modeling Framework ) بشكل عام "النظام البيئي" لأدوات البرمجة والنمذجة . يتيح هذا الإطار إنشاء أدوات تُطبق معايير MDA الخاصة بـ OMG، كما يُمكن استخدامه أيضًا لتنفيذ أدوات أخرى ذات صلة بالنمذجة.
تاريخ

كانت الأدوات الأولى لدعم هندسة البرمجيات القائمة على النماذج هي أدوات هندسة البرمجيات بمساعدة الحاسوب ( CASE ) التي تم تطويرها في الثمانينيات. وكانت شركات مثل بيئات التطوير المتكاملة (IDE – StP)، وبرمجيات الترتيب العالي (الآن Hamilton Technologies, Inc., HTI)، وتقنيات كادر، وأنظمة معلومات باخمان ، ولوجيك ووركس (BP-Win وER-Win) من الرواد في هذا المجال.
انخرطت الحكومة الأمريكية في وضع تعريفات النمذجة، فأنشأت مواصفات IDEF . ومع وجود عدة اختلافات في تعريفات النمذجة (انظر Booch و Rumbaugh و Jacobson وGane وSarson و Harel و Shlaer وMellor وغيرهم)، تم دمجها في النهاية لتكوين لغة النمذجة الموحدة (UML). وقد طورت شركة Rational Corporation (Booch) برنامج Rational Rose ، وهو منتج لتطبيق UML، مما أدى إلى أتمتة الاستجابة التي تُحقق مستويات أعلى من التجريد في تطوير البرمجيات. ويُعزز هذا التجريد نماذج أبسط مع تركيز أكبر على نطاق المشكلة. وبالاقتران مع الدلالات القابلة للتنفيذ، يرفع هذا من مستوى الأتمتة الممكنة. وقد طورت مجموعة إدارة الكائنات (OMG) مجموعة من المعايير تُسمى هندسة البرمجيات الموجهة بالنماذج (MDA)، مما أرسى أساسًا لهذا النهج المتقدم الذي يركز على الهندسة المعمارية.
يبدو أن أول ورقة بحثية تشير صراحةً إلى هندسة النماذج هي [ 4 ] . وقد نشأت هذه الأفكار من عمل مجموعة "Precise UML" (pUML) من الباحثين، بمن فيهم روبرت فرانس ، وبرنهارد رومبي ، وكيفن لانو، وآخرون.
المزايا
بحسب دوغلاس سي. شميدت ، فإن تقنيات الهندسة القائمة على النماذج تقدم نهجاً واعداً لمعالجة عجز لغات الجيل الثالث عن تخفيف تعقيد المنصات والتعبير عن مفاهيم المجال بفعالية. [ 5 ]
أدوات
تشمل أدوات البرمجيات البارزة للهندسة القائمة على النماذج ما يلي:
- AADL من معهد هندسة البرمجيات بجامعة كارنيجي ميلون
- Acceleo هو مولد أكواد مفتوح المصدر من Obeo
- مصدر نشط
- AgileUML هي مجموعة أدوات MDE مفتوحة المصدر من شركة AgileMDE المحدودة.
- إطار عمل Ash هو إطار عمل مفتوح المصدر للتطبيقات التصريحية قائم على لغة Elixir
- لغة تحويل أطلس أو ATL، وهي لغة لتحويل النماذج من شركة Obeo
- DUALLy ، إطار عمل MDE لإنشاء قابلية التشغيل البيني
- إطار عمل نمذجة إكليبس (EMF)
- مهندس معماري مؤسسي من شركة سباركس سيستمز
- eTrice هو تطبيق مفتوح المصدر لمعيار نمذجة الكائنات في الوقت الحقيقي
- نظام نمذجة الكسوف العام (GEMS)
- GeneXus هو حل تطوير قائم على المعرفة ، وتصريحي ، ومتعدد المنصات، ومتعدد اللغات
- إطار النمذجة الرسومية (GMF)
- JetBrains MPS ، نظام برمجة فوقية من شركة JetBrains
- ماجيك درو من نو ماجيك إنك
- MDriven – منصة تطوير تعتمد على نموذج UML، تقوم بإنشاء تطبيقات .NET وتطبيقات الويب من نماذج قابلة للتنفيذ.
- MERODE JMermaid من جامعة KU Leuven (تعليمية)
- MetaEdit+ من MetaCase
- مركز النماذج من شركة Phoenix Integration
- نموذج مفتوح
- OptimalJ من شركة Compuware
- PREEvision من Vector Informatik
- رابسودي من آي بي إم
- برنامج PowerDesigner من SAP
- برنامج Simulink من شركة MathWorks
- مصمم أفكار البرمجيات من دوسان رودينا
- سيريوس هو مشروع مفتوح المصدر لبيئة إكليبس لإنشاء بيئات عمل مخصصة للنمذجة الرسومية
- مهندس معماري من شركة بورلاند
- مظلة من KDE
- أومبل من جامعة أوتاوا
- يونيفيس من كومبيوير
- أداة YAKINDU Statechart Tools مفتوحة المصدر مبنية على Eclipse
انظر أيضاً
- إدارة دورة حياة التطبيقات (ALM)
- نموذج وتدوين عمليات الأعمال (BPMN)
- التطوير الموجه نحو الأعمال (BDD)
- التصميم الموجه بالمجال (DDD)
- لغة خاصة بالمجال (DSL)
- النمذجة الخاصة بالمجال (DSM)
- النمذجة المتعددة الخاصة بالمجال
- البرمجة الموجهة نحو اللغة (LOP)
- قائمة أدوات لغة النمذجة الموحدة
- تحويل النموذج (على سبيل المثال باستخدام QVT )
- الاختبار القائم على النموذج (MBT)
- مستوى نضج النمذجة (MML)
- هندسة الأنظمة القائمة على النماذج (MBSE)
- إطار نمذجة موجه نحو الخدمات (SOMF)
- مصنع البرمجيات (SF)
- نمذجة تعتمد على القصة (SDM)
- Open API ، مواصفات مفتوحة المصدر لوصف النماذج والعمليات الخاصة بالتوافق بين HTTP وREST APIc
مراجع
- ↑ "ثمانية أسباب لفشل المناهج القائمة على النماذج" . InfoQ . تم الاطلاع عليه بتاريخ 26-07-2023 .
- ↑ فلات، أميلي؛ لانجنر، آرني؛ ليبس، أولوف (2022). تطوير ملفات تعريف تطبيقات أكوما نتوسو باستخدام النماذج - إطار مفاهيمي لتوليد المخططات الفرعية لـ XML باستخدام النماذج ( الطبعة الأولى). هايدلبرغ: سبرينتر نيتشر. ISBN 978-3-031-14131-7.
- ↑ مجموعة إدارة الكائنات (24-05-2006). "علامات OMG التجارية" . تم الاطلاع عليه بتاريخ 26-02-2008 .
- ↑ كينت، ستيوارت (2002). "الهندسة الموجهة بالنماذج" . الأساليب الرسمية المتكاملة . سلسلة محاضرات في علوم الحاسوب. المجلد 2335. الصفحات 286-298 . doi : 10.1007/3-540-47884-1_16 . ISBN 978-3-540-43703-1.
- ↑ شميدت، دي سي (فبراير 2006). "الهندسة القائمة على النماذج" (ملف PDF) . مجلة IEEE Computer . 39 (2). doi : 10.1109/MC.2006.58 . S2CID 10006139. مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 9 سبتمبر 2006. تاريخ الاسترجاع: 16 مايو 2006 . " يُعدّ تطوير تقنيات هندسة النماذج (MDE) نهجًا واعدًا لمعالجة تعقيد المنصات - وعدم قدرة لغات الجيل الثالث على تخفيف هذا التعقيد والتعبير عن مفاهيم المجال بشكل فعال ... "
للمزيد من القراءة
- ديفيد س. فرانكل ، هندسة البرمجيات الموجهة بالنماذج: تطبيق هندسة البرمجيات الموجهة بالنماذج على الحوسبة المؤسسية ، جون وايلي وأولاده، رقم ISBN 0-471-31920-1
- ماركو برامبيلا، جوردي كابوت، مانويل ويمر، هندسة البرمجيات الموجهة بالنماذج في الممارسة ، مقدمة بقلم ريتشارد سولي ( رئيس مجلس إدارة OMG )، مورغان وكلايبول، الولايات المتحدة الأمريكية، 2012، سلسلة محاضرات توليفية في هندسة البرمجيات #1. 182 صفحة. ISBN 9781608458820(غلاف ورقي)، رقم ISBN 9781608458837(كتاب إلكتروني). https://www.mdse-book.com
- دا سيلفا، ألبرتو رودريغز (2015). "الهندسة الموجهة بالنماذج: دراسة استقصائية مدعومة بنموذج مفاهيمي موحد" . لغات الحاسوب، والأنظمة، والهياكل . 43 (43): 139-155 . doi : 10.1016/j.cl.2015.06.001 .
روابط خارجية
- هندسة البرمجيات الموجهة بالنماذج: الرؤية والمعايير والتقنيات الناشئة على موقع omg.org
- هندسة النظم
- لغة النمذجة الموحدة
