MOF — различия между версиями
Admin (обсуждение | вклад) м |
Admin (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
'''Мета-объектное средство''' (MOF, Meta-Object Facility) — стандарт [[MBSE|моделеориентированной инженерии]], разработанный Object Management Group ([[OMG]]). | '''Мета-объектное средство''' (MOF, Meta-Object Facility) — стандарт [[MBSE|моделеориентированной инженерии]], разработанный Object Management Group ([[OMG]]). | ||
+ | == Архитектура MOF == | ||
MOF возникло из [[UML]]. OMG нуждался в архитектуре метамоделирования для определения UML. MOF реализовано как четырехслойная архитектура: | MOF возникло из [[UML]]. OMG нуждался в архитектуре метамоделирования для определения UML. MOF реализовано как четырехслойная архитектура: | ||
{| class="wikitable" | {| class="wikitable" |
Версия 13:19, 18 мая 2016
Мета-объектное средство (MOF, Meta-Object Facility) — стандарт моделеориентированной инженерии, разработанный Object Management Group (OMG).
Архитектура MOF
MOF возникло из UML. OMG нуждался в архитектуре метамоделирования для определения UML. MOF реализовано как четырехслойная архитектура:
Уровень | Описание | Определение OMG | Пример |
---|---|---|---|
М3 | Верхний уровень, ядро всего проекта.
Определяется язык, используемый MOF для создания метамоделей М2 |
Meta-metamodel | MOF |
М2 | Определяется метамодель языка | Metamodel,
meta-metadata |
Метамодель UML,
Метамодель CWM |
М1 | Модели, написанные на языке, определенном в M2 | Model,
metadata |
Модель UML |
М0 | Используется для описания объектов реального мира | Object,
data |
Моделируемая система,
Данные хранилища |
MOF призван служить мостом между разными метамоделями, поскольку представляет собой мощную основу для их описания. Если две разные метамодели конформны MOF (то есть могут быть описаны средствами M3), то все конкретные модели (M1), базирующиеся на них, могут хранится в общем репозитории и совместно обрабатываться средствами модельных трансформаций.
В рамках M3-модели MOF описывает средства для создания и редактирования моделей и метамоделей путём определения CORBA-интерфейсов, которые описывают эти операции.