QVT

QVT ( الاستعلام/العرض/التحويل ) هي مجموعة قياسية من اللغات لتحويل النماذج تم تعريفها بواسطة مجموعة إدارة الكائنات . [ 1 ]
ملخص
يُعدّ تحويل النموذج تقنيةً أساسيةً في بنية البرمجيات الموجهة بالنموذج . وكما يشير اسم QVT، فإن معيار OMG يشمل التحويلات والعروض والاستعلامات معًا. ويمكن اعتبار استعلامات النموذج وعروض النموذج أنواعًا خاصة من تحويل النموذج، شريطة استخدام تعريف واسع النطاق لتحويل النموذج: تحويل النموذج هو برنامج يعمل على النماذج.
يُحدد معيار QVT ثلاث لغات لتحويل النماذج. تعمل جميعها على نماذج تتوافق مع نماذج البيانات الوصفية لمرفق الكائنات الوصفية (MOF) 2.0؛ ويُحدد التحويل نماذج البيانات الوصفية المستخدمة. يُمكن اعتبار أي تحويل في أي من لغات QVT الثلاث نموذجًا بحد ذاته، متوافقًا مع أحد نماذج البيانات الوصفية المحددة في المعيار. يدمج معيار QVT معيار OCL 2.0 ويُضيف إليه ميزات إجرائية.
- QVT-Operational هي لغة أمرية مصممة لكتابة التحويلات أحادية الاتجاه.
- لغة QVT-Relations هي لغة وصفية مصممة للسماح بكتابة تحويلات النماذج أحادية الاتجاه وثنائية الاتجاه. يجسد التحويل علاقة اتساق بين مجموعات النماذج. يمكن التحقق من الاتساق بتنفيذ التحويل في وضع التحقق فقط؛ حيث يُرجع التحويل القيمة "صحيح" إذا كانت مجموعة النماذج متسقة وفقًا للتحويل، و"خطأ" في غير ذلك. يمكن استخدام التحويل نفسه في وضع الإنفاذ لمحاولة تعديل أحد النماذج بحيث تصبح مجموعة النماذج متسقة. تتميز لغة QVT-Relations ببنية نحوية نصية ورسومية.
- لغة QVT-Core هي لغة تصريحية مصممة لتكون بسيطة ولتكون هدفًا للترجمة من لغة QVT-Relations. مع ذلك، لم تُطبَّق QVT-Core بشكل كامل، وهي في الواقع أقل تعبيرًا من QVT-Relations. [ 2 ] لذا، فإن بنية QVT الموضحة أعلاه مُضلِّلة: فالتحويل من QVT-Relations إلى QVT-Core الوارد في معيار QVT لا يحافظ على الدلالات.
وأخيرًا، QVT-BlackBox هي آلية لاستدعاء مرافق التحويل المعبر عنها بلغات أخرى (على سبيل المثال XSLT أو XQuery ).
على الرغم من أن نطاق QVT واسع، إلا أنه لا يشمل كل ما يُعتبر تحويلًا أو عرضًا أو استعلامًا للنموذج. فعلى سبيل المثال، لا تسمح لغات QVT بالتحويلات من وإلى النماذج النصية، إذ يجب أن يتوافق كل نموذج مع نموذج MOF 2.0 الفوقي. ويجري حاليًا توحيد معايير تحويلات النموذج إلى نص بشكل منفصل من قِبل OMG (انظر MOFM2T ).
تاريخ
في عام 2002، أصدرت OMG طلبًا لتقديم مقترحات (RFP) بشأن استعلام/عرض/تحويل MOF للبحث عن معيار متوافق مع مجموعة توصيات هندسة البرمجيات الموجهة بالنموذج (MDA) (UML، MOF، OCL، إلخ).
تلقّت العديد من الشركات والمؤسسات البحثية ردودًا عديدة، تطورت على مدار ثلاث سنوات لتُنتج مقترحًا مشتركًا، استنادًا إلى مسودة أعدها الباحث البريطاني الدكتور لورانس ترات. قُدّمت النسخة الأولى ووُوفق عليها في عام 2005. [ 3 ] صدرت النسخة 1.1 من برنامج QVT في يناير 2011. [ 1 ]
التطبيقات
QVT-Operational:
- يحتوي Borland Together على تطبيق QVT التشغيلي، والذي تمت المساهمة به [ 4 ] في مؤسسة Eclipse ويتم تطويره الآن كمشروع Eclipse M2M التشغيلي QVT.
- Eclipse M2M Operational QVT: التنفيذ الرسمي مفتوح المصدر لـ QVT Operational من Eclipse. [ 5 ]
- يحتوي برنامج MagicDraw على المكون الإضافي QVT الذي يستخدم تطبيق QVT التشغيلي الذي يوفره مشروع Eclipse M2M .
- SmartQVT : تطبيق مفتوح المصدر لـ Eclipse (Orange Labs) للغة QVT-Operational.
QVT-Core:
- أوبتيمال جيه : كان الإصدار 3.4 من أوبتيمال جيه من شركة كومبيوير بمثابة تطبيق تجريبي للغة QVT-Core . ومع ذلك، فقد توقف تطوير أوبتيمال جيه.
العلاقات بين القيم الكمية والنوعية:
- موديل مورف: أداة مملوكة لشركة تاتا للاستشارات المحدودة. متوافقة تمامًا مع لغة QVT-Relations. توفر النسخة التجريبية [ 6 ] أداة سطر أوامر تستهلك وتنتج النماذج بصيغة XMI. تتوفر نسخة كاملة متكاملة مع مستودع كجزء من إطار عمل النمذجة الخاص بهم. [ 7 ]
- MediniQVT: [ 8 ] محرك تحويل قائم على EMF مع ترخيص EPL للمحرك ومحرر/مصحح ترخيص غير تجاري. يستخدم صيغة QVT-Relations، ولكنه يختلف عمدًا عن دلالات معيار OMG. [ 9 ]
- يهدف مشروع Eclipse M2M إلى إنتاج تطبيق لـ QVT Core والعلاقات. [ 5 ]
- Echo، [ 10 ] أداة مفتوحة المصدر تعتمد على EMF لإصلاح النماذج وتحويلها مبنية على أداة البحث عن نموذج Alloy ، والتي توفر تطبيقًا لبنية QVT-Relations، ولكن باستخدام دلالات تختلف عمدًا عن مواصفات OMG.
شبيه بـ QVT:
- jQVT: [ 11 ] محرك QVT مُجمَّع للغة جافا، يستخدم Xbase بدلاً من OCL. يتم أولاً تجميع تحويل QVT-علائقي إلى كود مصدر جافا، والذي يُنتج بعد ذلك النموذج المستهدف مباشرةً من نماذج المصدر في وقت التشغيل، دون الحاجة إلى تفسير قاعدة التحويل مرة أخرى. يدعم نماذج EMF، بالإضافة إلى كائنات جافا العادية.
- تيفكات : تطبيق مفتوح المصدر للغة تيفكات، وهو مشابه أيضًا للغة QVT. مفتوح المصدر.
- ATL : أحد مكونات مشروع M2M Eclipse. ATL هي لغة ومحرك تحويل يشبه QVT، ولها مجتمع مستخدمين كبير ومكتبة مفتوحة المصدر للتحويلات.
- إطار تحويل النموذج (MTF): [ 12 ] مشروع IBM alphaWorks، تم تحديثه آخر مرة في عام 2007.
انظر أيضاً
- قائمة لغات التحويل المتاحة
- لغة تحويل نماذج MOF إلى نصوص - مواصفات لغة التحويل الخاصة بـ OMG للتعبير عن تحويلات M2T
- الهندسة القائمة على النماذج (MDE)
- هندسة البرمجيات الموجهة بالنماذج (MDA): رؤية OMG لهندسة البرمجيات الموجهة بالنماذج
- لغة خاصة بالمجال (DSL)
- مرفق الكائنات الوصفية (MOF): لغة لكتابة النماذج الوصفية
- لغة قيود الكائنات (OCL): لغة قيود النماذج (والاستعلام عنها)
- تحويل النموذج
- لغة تحويل النماذج
- ميتا نموذج
مراجع
- باست ، ويم؛ مورفري، مايكل؛ لولي، مايكل؛ دودي، كيث؛ بيلاوندي، ماريانو؛ غريفين، كاثرين؛ سيندال، شين؛ فويتيسك، ديدييه؛ ستيل، جيم؛ هيلسن، سيمون؛ ترات، لورانس؛ ريدي، سريدهار؛ فينكاتيش، ر.؛ بلانك، خافيير؛ دفوراك، راديك؛ ويلينك، إد (يناير 2011). "مرفق الكائنات الوصفية (MOF) 2.0 الاستعلام/العرض/التحويل (QVT)" (ملف PDF) . مجموعة إدارة الكائنات . تم الاطلاع عليه في 9 مايو 2011 .
- ↑ ستيفنز، بيرديتا (2011). "نهج بسيط قائم على نظرية الألعاب لعلاقات التحقق فقط QVT". نمذجة البرمجيات والأنظمة . 12. برلين / هايدلبرغ: سبرينغر : 175-199 . doi : 10.1007/s10270-011-0198-8 . hdl : 20.500.11820/58a19b4d-3782-4081-ad75-175c4626a62e .
- ↑ باست، ويم؛ مورفري، مايكل؛ لولي، مايكل؛ دودي، كيث؛ بيلاوندي، ماريانو؛ غريفين، كاثرين؛ سيندال، شين؛ فويتيسك، ديدييه؛ ستيل، جيم؛ هيلسن، سيمون؛ ترات، لورانس؛ ريدي، سريدهار؛ فينكاتيش، ر.؛ بلانك، خافيير؛ دفوراك، راديك؛ ويلينك، إد. "مرفق الكائنات الوصفية (MOF) 2.0 الاستعلام/العرض/التحويل (QVT)" (ملف PDF) . مجموعة إدارة الكائنات . تم الاطلاع عليه في 1 نوفمبر 2013 .
- ↑ [m2m-dev ] مساهمة Borland QVT مؤرشفة في 25 فبراير 2012 على Wayback Machine
- مشروع Eclipse M2M . "نموذج إلى نموذج (M2M)" . مؤرشف من الأصل بتاريخ 2012-12-03 . تم الاطلاع عليه بتاريخ 2011-05-09 .تم الاطلاع عليه بتاريخ 9 مايو 2011.
- ↑ نموذج تسجيل ModelMorf التجريبي. "نموذج تسجيل ModelMorf" . مؤرشف من الأصل بتاريخ 23 مارس 2012. تم الاطلاع عليه بتاريخ 9 مايو 2011 .تم الاطلاع عليه بتاريخ 9 مايو 2011.
- ↑ إطار عمل مولد أكواد TCS (المعروف سابقًا باسم MasterCraft). "إطار عمل مولد أكواد TCS: منتجات تقنية TCS: عروض: TCS" . مؤرشف من الأصل في 9 أغسطس 2011. تم الاطلاع عليه في 9 مايو 2011 .تم الاطلاع عليه بتاريخ 9 مايو 2011.
- ↑ ميديني كيو في تي. "ميديني كيو في تي" . مؤرشف من الأصل بتاريخ 29-07-2016 . تم الاطلاع عليه بتاريخ 13-08-2009 .تم الاطلاع عليه بتاريخ 9 مايو 2011.
- ↑ كيجيلاند، ج.؛ إيخلر، هـ. (فبراير 2008)، "ورشة عمل ميديني QVT"، ورشة عمل ميديني QVT ، إنسخيده، معهد تيليماتيكا: شركة ikv++ technologies ag، مؤرشف من الأصل (ppt) بتاريخ 3 مارس 2016 ، تم استرجاعه بتاريخ 24 سبتمبر 2015
- ↑ صدى.تم الاطلاع عليه بتاريخ 2 نوفمبر 2013.
- ↑ jQVT. "تنزيل JQVT | SourceForge.net" . مؤرشف من الأصل بتاريخ 2016-03-07 . تم الاطلاع عليه بتاريخ 2012-11-10 .
- ↑ إطار عمل تحويل النموذج. http://www.alphaworks.ibm.com/tech/mtf مؤرشف بتاريخ 2007-02-02 في أرشيف الإنترنت . تم الاطلاع عليه بتاريخ 9 مايو 2011.
- هندسة النظم
- لغة النمذجة الموحدة
