Насколько Eclipse EMF связан со стандартом OMG MDA?

Я ищу новый инструмент MDA для моделирования и генерации кода. Это пока не для какого-либо проекта, связанного с работой, а для целей тестирования. До сих пор я использовал только подход Merode (используя jMermaid для моделирования и сопровождающий генератор кода), но хочу попробовать что-то новое.

Поскольку EMF интегрирован в Eclipse, я вижу много положительных причин попробовать его. Но после прочтения некоторой документации и онлайн-статей мне стало интересно, насколько он соответствует стандартам OMG MDA, а насколько нет.

Например, я нашел следующий текст

Если, с другой стороны, вы уже увлеклись идеей моделирования и даже общей картины Model Driven Architecture (MDA)3, вам следует думать об EMF как о технологии, которая движется в этом направлении, но медленнее, чем сразу. широкое распространение. Вы можете думать об ЭМП как о МДА на тренировочных колесах.

на http://www.informit.com/articles/article.aspx?p=1323360&seqNum=2

Но я нигде не могу найти краткий список того, какие пункты стандарта OMG реализованы, а какие опущены или интерпретированы по-другому. Любой, кто может помочь с этим? (И если есть другие, более рекомендуемые инструменты, я всегда открыт для предложений.)


person Yoh    schedule 17.02.2013    source источник


Ответы (3)


Отношения очень мало. EMF — это фреймворк для создания (мета)моделей с очень простыми возможностями генерации кода (в основном только прямой перевод Java). Цель EMF не в том, чтобы быть платформой MDA, а в том, чтобы быть строительным блоком, на основе которого другие инструменты могут создавать более сложные решения (например, проверьте инструмент Eclipse Acceleo с открытым исходным кодом).

А МДА - это всего лишь философия. Само по себе это даже не конкретный метод. Руководство MDA, стандартный документ OMG, объясняющий MDA, представляет собой просто набор принципов для разработки на основе моделей с использованием технологий OMG, но не идет дальше этого (при необходимости вы можете проверить разницу между всеми этими акронимами MD*).

Таким образом, вы можете найти инструменты на основе EMF, которые следуют принципам MDA, но EMF как таковой не претендует на это.

person Jordi Cabot    schedule 18.02.2013
comment
Джорди, спасибо за ответ. Я уже нашел веб-сайт, на который вы ссылаетесь, и это одна из причин, по которой возник этот вопрос. Ваш ответ также подтверждает то, как я начал об этом думать. Я все еще заинтригован EMF и продолжу его изучение. - person Yoh; 22.02.2013

EMF соответствует упрощенной реализации MOF OMG (http://www.omg.org/mof/ ), предоставляя средства для выражения пользовательских метамоделей и создания компонентов Java для создания экземпляров моделей.

MDA — это особая философия, основанная на моделях, основанная на нескольких типах моделей (CIM, PIM, PSM...) и направленная на то, чтобы предоставить способ ориентироваться на несколько технических архитектур (PSM) из уникальной функциональной модели (PIM).

Вы можете использовать EMF для любой основанной на модели философии MBE, MDE, MDD или MDA. Это фундаментальный строительный блок, который позволяет вам определять свои собственные метамодели и модели. Проще говоря, EMF предоставляет модели, и вы можете использовать его для любого подхода, основанного на моделях, включая MDA.

person Romain Bernard    schedule 20.04.2018

В FAQ по EMF есть вопрос "Какова связь EMF с OMG MDA?" в котором говорится

«По сути, EMF поддерживает ключевую концепцию MDA, заключающуюся в использовании моделей в качестве входных данных для инструментов разработки и интеграции, которые создают представления на нескольких языках программирования (Java в случае Eclipse EMF) или в формате обмена данными (XML)».

person Vladimir Vaschenko    schedule 08.10.2015