Метаобъектное средство


Мета-объектное средство (MOF, Meta-Object Facility) — это стандарт для разработки, управляемой моделями, разработанный OMG.

Обзор

MOF возникло из UML. OMG нуждался в архитектуре метамоделирования для определения UML. MOF реализовано как четырехслойная архитектура. Ядром всего проекта является мета-мета модель M3 на верхнем уровне. Она определяет язык, используемый MOF для создания метамоделей, называемых M2-моделями. Наиболее ярким примером модели 2-го уровня MOF является метамодель UML: модель, которая описывает сам язык UML. Эти M2-модели описывают элементы M1 слоя: M1-модели. Это могут быть, например, модели, написанные на UML. Последний слой — M0-слой или слой данных. Он используется для описания объектов реального мира.

MOF призван служить мостом между разными метамоделями, поскольку представляет собой мощную основу для их описания. Если две разные метамодели конформны MOF (то есть могут быть описаны средствами M3), то все конкретные модели (M1), базирующиеся на них, могут хранится в общем репозитории и совместно обрабатываться средствами модельных трансформаций.

В рамках M3-модели MOF описывает средства для создания и редактирования моделей и метамоделей путём определения CORBA-интерфейсов, которые описывают эти операции.

Архитектура метамоделирования

MOF — это закрытая архитектура метамоделирования; она определяет M3-модель, конформную самой себе. MOF позволяет строгую архитектуру мета-моделирования, каждый элемент модели на каждом слое строго соответствует одному элементу модели вышележащего слоя. MOF только обеспечивает средства для определения структуры или абстрактного синтаксиса языка или данных. Для определения метамодели MOF играет ту же роль, которую расширенная форма Бэкуса — Наура (РБНФ) играет для определения грамматики языка программирования. MOF является предметно-ориентированным языком программирования (ПОЯ) и используется для определения метамодели, как РБНФ является ПОЯ для определения грамматик. Аналогично РБНФ, MOF может быть определён в самом MOF.

Из-за сходства между MOF M3-моделью и структурными моделями UML, метамодели MOF обычно моделируются в виде UML-класс-диаграмм. (MOF-класс, подобно обычному Java-классу, имеет атрибуты, операции, наследование и пр.) Иначе говоря, MOF использует нотацию MOF::Classes (не путать с UML::Classes), как они используются в объектно-ориентированном программировании, для определения понятий (элементов модели) на метауровне. MOF может быть использовано для определения как объектно-ориентированных метамоделей (как например UML), так и не объектно-ориентированных метамоделей (как метамоделей для сетей Петри или веб-служб.

Определены два варианта MOF:

  • EMOF (Essential MOF) — подмножество MOF 2.0, которое служит для того, чтобы создавать простые метамодели простыми средствами — без необходимости понимать MOF в полном варианте. EMOF в очень большой степени совместим с распространённой метамоделью ECore, определённой в Eclipse Modeling Framework.
  • CMOF (Complete MOF) содержит полный объем языковых средств.

В июне 2006 года OMG был выпущен запрос предложений (request for proposal) на третий вариант, SMOF (Semantic MOF), но особого развития этой темы в интернете не видно. Этот факт может говорить о том, что существующие версии ориентированы скорей на синтаксис, чем на семантику.

OMG MOF не следует путать с Managed Object Format (MOF), определённым en:Distributed Management Task Force (DMTF) в разделе 6 документа «Common Information Model (CIM) Infrastructure Specification», версия 2.5.0.

Стандарты

Сам MOF является международным стандартом ISO/IEC 19502:2005 Информационные технологии — Метаобъектное средство (MOF).

MOF можно рассматривать как стандарт для написания метамоделей, например, для того, чтобы смоделировать абстрактный синтаксис ПОЯ.

Родственные стандарты:

  • Поддерживающим стандартом для MOF является стандарт XMI (XML Metadata Interchange), который определяет основанный на XML формат обмена для моделей на M3-, М2- или М1-слое.
  • JMI (Java Metadata Interface) определяет Java API для работы с моделями MOF.
  • Object Constraint Language описывает формальный язык, который может быть использован для определения ограничений модели в терминах логики предикатов.
  • MOF Model to Text Transformation Language — это спецификация OMG для языка трансформации моделей. В частности, этот язык может быть использован для преобразования модели в текст, например платформ-ориентированной модели в исходный код или документацию.
  • Язык Kermeta является расширением MOF, позволяющим добавлять исполняемые действия в EMOF мета-модели, что делает возможным моделировать операционную семантику ПОЯ и легко получать интерпретатор для него.
  • Очень важным является новый стандарт QVT, который вводит средства запроса, представления и преобразования моделей, основанных на MOF (см. языки трансформации моделей для получения дополнительной информации).
  • MOF to IDL Mapping — отображение в CORBA IDL для доступа к репозиториям моделей в произвольных языках и распределенных системах.

Похожие новости:

Онтология (информатика)

Онтология (информатика)
Онтология в информатике (новолат. ontologia от др.-греч. ὤν род. п. ὄντος — сущее, то, что существует и λόγος — учение, наука) — это попытка всеобъемлющей и подробной формализации некоторой области

Диван с кушеткой: особенности выбора

Диван с кушеткой: особенности выбора
Ни одно жилье невозможно представить без дивана, причем он должен быть красивым, качественным и надежным. Например, в последнее время все большую популярность завоевывают особенные диваны с кушеткой.

Каркасные бассейны

Каркасные бассейны
Между надувными и каркасными моделями бассейнов выбирать приходится в том случае, если требуется мобильная версия таких конструкций. Более прочными и надежными считаются компактные каркасные модели.

Как выбрать газонокосилку для дачи?

Как выбрать газонокосилку для дачи?
Для стрижки лужайки идеально подойдет газонокосилка. Из самых популярных моделей в России выделяются три – газонокосилка, триммер и мотокоса. Как подобрать оптимальную, именно для своего участка и не
Комментариев пока еще нет. Вы можете стать первым!

Добавить комментарий!

Ваше Имя:
Ваш E-Mail:
Введите два слова, показанных на изображении: *
Популярные статьи
Почему террасная доска из ДПК – это идеальное решение для вашего сада
Почему террасная доска из ДПК – это идеальное решение для вашего сада
В мире садового дизайна существует множество материалов для создания уникальных и стильных террас....
Технология 3D печати и сканирования – что нужно знать
Технология 3D печати и сканирования – что нужно знать
3D печать и 3D сканирование – это две инновационные технологии, которые не только изменили облик...
Стеклянные перегородки: создание комфортных пространств
Стеклянные перегородки: создание комфортных пространств
Современный дизайн офисных и жилых пространств всё чаще включает в себя элементы из стекла, которые...
Все новости