Из Википедии, бесплатной энциклопедии
  (Перенаправлено из Meta Object Facility )
Перейти к навигации Перейти к поиску
Иллюстрация мета-объекта.

Facility Meta-Object ( MOF ) представляет собой стандарт Object Management Group (OMG) стандарт на основе моделей техники . Его цель - предоставить систему типов для сущностей в архитектуре CORBA и набор интерфейсов, с помощью которых можно создавать эти типы и управлять ими. Официальную справочную страницу можно найти на веб-сайте OMG. [1]

Обзор [ править ]

MOF был разработан для обеспечения системы типов для использования в архитектуре CORBA , набора схем, с помощью которых можно было определять структуру, значение и поведение объектов, и набора интерфейсов CORBA, с помощью которых эти схемы могли создаваться, храниться и управляться. . [2]

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

Помимо M3-модели, MOF описывает средства для создания и управления моделями и метамоделями, определяя интерфейсы CORBA, которые описывают эти операции. Из-за сходства между M3-моделью MOF и моделями структуры UML, метамодели MOF обычно моделируются как диаграммы классов UML. Поддерживающим стандартом MOF является XMI , который определяет формат обмена на основе XML для моделей на уровне M3, M2 или M1.

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

MOF - это закрытая архитектура метамоделирования; он определяет M3-модель, которая соответствует самой себе. MOF допускает строгую архитектуру мета-моделирования; каждый элемент модели на каждом слое строго соответствует модельному элементу слоя выше. MOF предоставляет только средства для определения структуры или абстрактного синтаксиса языка или данных. Для определения метамоделей MOF играет именно ту роль, которую EBNF играет для определения грамматик языков программирования. MOF - это язык, специфичный для домена (DSL), используемый для определения метамоделей, точно так же, как EBNF - это DSL для определения грамматик. Подобно EBNF, MOF может быть определен в MOF.

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

По состоянию на май 2006 года OMG определила две точки соответствия для Минфина:

  • EMOF для Essential MOF [3]
  • CMOF для полного MOF [3]

В июне 2006 года OMG выпустила запрос предложений для третьего варианта, SMOF (Semantic MOF).

Вариант ECore , который был определен в Eclipse Modeling Framework , более или менее соответствует EMOF OMG.

Другой родственный стандарт - OCL , который описывает формальный язык, который можно использовать для определения ограничений модели в терминах логики предикатов .

QVT , который предоставляет средства для запроса, просмотра и преобразования моделей на основе MOF, является очень важным стандартом, одобренным в 2008 году. См. « Язык преобразования моделей» для получения дополнительной информации.

Международный стандарт [ править ]

MOF - это международный стандарт:

MOF 2.4.2
ISO / IEC 19508: 2014 Информационные технологии - Ядро средства метаобъекта (MOF) группы управления объектами
MOF 1.4
ISO / IEC 19502: 2005 Информационные технологии - средство метаобъектов (MOF)

MOF можно рассматривать как стандарт для написания метамоделей , например, для моделирования абстрактного синтаксиса языков, специфичных для предметной области . Kermeta - это расширение MOF, позволяющее присоединять исполняемые действия к метамоделям EMOF, что позволяет также моделировать операционную семантику DSL и легко получать для нее интерпретатор.

JMI определяет Java API для управления моделями MOF.

MOF OMG не следует путать с форматом управляемых объектов (MOF), определенным Целевой группой по распределенному управлению (DMTF) в разделе 6 Спецификации инфраструктуры общей информационной модели (CIM), версия 2.5.0. [4]

См. Также [ править ]

  • Метамодель Common Warehouse
  • Доменный язык
  • Kermeta
  • КМ3
  • Метамоделирование
  • Метаданные
  • Модельно-управляемая архитектура
  • OGML
  • Платформенно-независимая модель
  • Платформенная модель
  • QVT
  • СПЭМ
  • Обмен метаданными XML

Ссылки [ править ]

  1. ^ Функция метаобъектов OMG
  2. ^ «Общие средства RFP-5: средство мета-объекта» (PDF) . Группа управления объектами. 2 мая 1996 . Проверено 14 января 2014 года .
  3. ^ a b «Основная спецификация OMG Meta-Object Facility (MOF), версия 2.4.1» . Группа управления объектами . п. 1 . Проверено 17 февраля 2014 года .
  4. ^ Структура интерфейса модели общего интерфейса (CIM), версия 2.5.0

Дальнейшее чтение [ править ]

  • Официальная спецификация MOF от OMG
  • Ральф Собек, Министерство финансов, спецификация документов
  • Йоханнес Эрнст, Что такое метамоделирование?
  • Вуди Пидкок, В чем разница между словарем, таксономией, тезаурусом, онтологией и метамоделью?
  • Анна Гербер и Керри Раймонд, MOF to EMF и Back Again.
  • Встраивание исполняемости в объектно-ориентированные метаязыки
  • Поддержка MOF для семантических структур RFP Запрос предложения по SMOF

Внешние ссылки [ править ]

  • Группа управления объектами
  • Объект OMG MetaObject
  • M3Actions: операционная семантика MOF