Jump to content

Язык преобразования модели

Язык преобразования моделей в системной и программной инженерии — это язык, предназначенный специально для преобразования моделей .

Идея трансформации модели занимает центральное место в разработке, основанной на модели . Преобразование модели, которое по сути представляет собой программу, работающую с моделями, может быть написано на языке программирования общего назначения, таком как Java . Однако языки преобразования моделей специального назначения могут иметь преимущества, такие как синтаксис, упрощающий обращение к элементам модели. Для написания двунаправленных преобразований моделей, которые поддерживают согласованность между двумя или более моделями, особенно важен специальный язык двунаправленных преобразований моделей, поскольку он может помочь избежать дублирования, которое могло бы возникнуть в результате написания каждого направления преобразования отдельно.

В настоящее время большинство языков преобразования моделей разрабатываются в научных кругах. OMG QVT стандартизировало семейство языков преобразования моделей под названием , но эта область все еще незрела. [1]

Продолжаются споры о преимуществах специализированных языков преобразования моделей по сравнению с использованием языков программирования общего назначения (GPL), таких как Java . [2] Хотя лицензии GPL имеют преимущества с точки зрения более широко доступных практических знаний и поддержки инструментов, специализированные языки преобразований предоставляют больше декларативных возможностей и более мощные специализированные функции для поддержки преобразований моделей. [3]

Доступные языки трансформации

[ редактировать ]
  • ATL : язык трансформации, разработанный INRIA.
  • Beanbag (см. [1] ): язык, основанный на операциях, для постепенного установления согласованности данных.
  • GReAT : язык трансформации, доступный в GME.
  • Семейство Epsilon (см. [2] ): платформа управления моделями, которая предоставляет языки преобразования для преобразований «модель-модель», «модель-текст», «обновление на месте», миграция и слияние моделей.
  • F-Alloy [3] : DSL, повторно использующий часть синтаксиса Alloy и обеспечивающий краткую спецификацию эффективно вычислимых преобразований модели.
  • Henshin (см. [4] ): язык преобразования моделей для EMF , основанный на концепциях преобразования графов , обеспечивающий возможности исследования пространства состояний.
  • JTL : язык двунаправленных преобразований моделей, специально разработанный для поддержки небиективных преобразований и распространения изменений (см. [5] ).
  • Kermeta : язык моделирования и программирования общего назначения, также способный выполнять преобразования.
  • Семейство Lx (см. [6] ): набор языков преобразования низкого уровня.
  • M2M — это в Eclipse. реализация OMG QVT стандарта
  • Mia-TL: язык трансформации, разработанный Mia-Software.
  • Язык преобразования модели MOF в текст : OMG определил стандарт для выражения преобразований M2T.
  • MOLA (см. [7] ): графический язык преобразований высокого уровня, встроенный в Lx.
  • MT: язык трансформации, разработанный в Королевском колледже Лондона (Великобритания) (на основе Converge PL ).
  • QVT : OMG определил стандарт для выражения преобразований M2M, называемый MOF/QVT или сокращенно QVT.
  • SiTra [8] : прагматичный подход к преобразованию, основанный на использовании стандартного языка программирования, например Java, C#.
  • Stratego/XT : язык трансформации, основанный на переписывании с помощью программируемых стратегий.
  • Tefkat : язык трансформации и механизм трансформации моделей.
  • Том : язык, основанный на переписывании исчисления, с сопоставлением шаблонов и стратегиями.
  • UML-RSDS [9] : преобразование модели и подход MDD с использованием UML и OCL.
  • VIATRA : структура среды верификации и валидации на основе преобразований
  • YAMTL (см. [10] ): внутренний DSL для преобразования модели в языках JVM (Java, Groovy, Xtend, Kotlin), обладающий такими ключевыми характеристиками, как производительность во время выполнения, повторное использование логики преобразования, инкрементное выполнение и независимость от IDE.

См. также

[ редактировать ]
  1. ^ Франция, Роберт; Румпе, Бернхард (2007). Разработка сложного программного обеспечения на основе моделей: план исследований . Будущее программной инженерии (FOSE '07). arXiv : 1409.6620 . дои : 10.1109/FOSE.2007.14 .
  2. ^ https://www.jot.fm/issues/issue_2019_03/article7.pdf.
  3. ^ Хеппнер, Стефан; Хаас, Ив; Тичи, Матиас; Юнке, Катарина (2022). «Преимущества и недостатки (специальных) языков преобразования моделей» . Эмпирическая программная инженерия . 27 (6). arXiv : 2201.13348 . дои : 10.1007/s10664-022-10194-7 . S2CID   251644010 .

Дальнейшее чтение

[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 69a37647bb8986b31c0c450e9c0e21c6__1719380460
URL1:https://arc.ask3.ru/arc/aa/69/c6/69a37647bb8986b31c0c450e9c0e21c6.html
Заголовок, (Title) документа по адресу, URL1:
Model transformation language - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)