MDA

Архитектура, управляемая моделью (Model Driven Architecture, MDA) — создаваемая консорциумом OMG разновидность концепции «Разработка, управляемая моделями» (англ. model-driven development): модельно-ориентированного подхода к разработке программного обеспечения. Его суть состоит в построении абстрактной метамодели управления и обмена метаданными (моделями) и задании способов ее трансформации в поддерживаемые технологии программирования (Java, CORBA, XML и др.). Создание метамодели определяется технологией моделирования MOF (Meta Object Facility), являющейся частью концепции MDA. Название концепции не совсем удачно, так как она определяет вовсе не архитектуру а именно метод разработки программного обеспечения.

OMG UML (http://www.uml.org/) принес парадигму множественности методов/групп описаний в мейнстрим программной инженерии. Его 5 типов диаграмм позволили связно отражать различные аспекты программных систем. Более того, UML расширяем стандартным способом, и системная инженерия с десятилетним лагом (как обычно) к программной инженерии получила средство для описания этого множества методов/групп описаний в форме SysML, являющегося расширением UML. ISO 42010 (стандарт рекомендованной практики архитектурных описаний) получил язык для своей поддержки.

UML вместе с MOF (Meta Object Facility, http://www.omg.org/mof, обеспечивает взаимосвязанность всех моделей на UML) является основным языком MDA (http://www.omg.org/mda) консорциума по стандартизации OMG. MDA уже переосмысливается, чтобы ее предмет был расширен с программной инженерии на системную инженерию (http://www.calimar.com/Papers/Model%20Driven%20Architecture%20for%20SE-Why%20Care.pdf, http://www.lboro.ac.uk/departments/el/sedc/documents/presentations/model-driven-architecture.pdf и много других).

Достоинства MDA

  • множество уровней абстракции (иерархия уровней метамоделирования);
  • множество обеспечиваемых метамоделями методов описания с прописанными правилами соответствия методов описаний (viewpoint correspondence rules).

Недостаток MDA

  • ограниченность этой архитектуры языком UML. В междисциплинарном проекте мы не можем ожидать, что все специалисты-пользователи говорят на UML или SysML, даже если мы расширим эти языки специфичными для предметных областей стереотипами.

Интеграция моделей жизненного цикла

Модели жизненного цикла - модели, которые порождаются и используются в какой-либо момент прохождения системой её жизненного цикла. Для их интеграции используются следующие подходы:

  • ISO 15926 - стандарт представления данных, опирающийся на идеологию семантических сетей и Resource Description Framework
  • DANSE - работы по архитектуре семантической интеграции данных системноинженерных моделей для случая, когда моделирование шло для независимо разрабатываемых систем (инженерия систем систем, Systems of Systems, SoS), и нельзя ожидать использования общего для всех инструментария моделирования и предписанной последовательности использования инструментов (Tool Chain). В этом случае говорят о Tool-Net (сети инструменов) и semantic mediation (основанной на стандартах Semantic Web): 1, (работа заняла первое место на INCOSE International Workshop 2013г. 2).
  • OSLC - устанавливает набор гибко связанных стандартов, общих форматов и служб, созданных для упрощения обмена и использования совместных ресурсов