Где находится ядро UML в UML 2.5?
Фон
До UML 2.5 UML определялся двумя документами: инфраструктурой UML и надстройкой UML. MOF 2, тесно связанный стандарт OMG, относится к ядру UML и определен таким образом, чтобы MOF 2 и UML 2 разделяли некоторые спецификации. Инфраструктура UML 2.4, явно определяющая это ядро UML. UML 2.5, который является полным переписыванием UML 2, теперь поставляется как единый документ и, кроме того, больше не определяет явно ядро UML или не называет его так же.
Вопрос
Я не верю, что MOF 2 и UML 2 стали не синхронизированы только с введением UML 2.5, поскольку UML 2.5 считается незначительной ревизией UML 2.4, поэтому я считаю, что MOF 2 по-прежнему определяется по частям спецификациями, импортированными из 2.5, и просто интересно, что такое ядро UML в UML 2.5. Эта глава 7 называется "Общая структура"?
1 ответ
Разница между UML 2.4.1 (текущая) и 2.5 - более короткая и реструктурированная документация и, возможно, некоторые косметические различия в предмете. (До сих пор я не нашел ни одного). Это просто попытка создать более понятную документацию.
Итак, MOF 2, версия 2.4.1 (текущая), где сказано:
Данная спецификация MOF 2 Core обеспечивает основу для определения метамодели в семействе языков OMA OMG и основана на упрощении возможностей моделирования классов UML2.
не нужно менять и остается прежним.
Он НЕ включен непосредственно в документацию UML 2.5. Та часть, которая "основана на упрощении возможностей моделирования классов в UML2", близка к главе 7 стандарта 2.5. Но мета-проблемы (например, рефлексия) остаются только в МФ. И они являются наиболее важной частью MOF.
Похоже, что теперь, когда OMG пытается сделать более простой стандарт, эти сложные мета проблемы вообще не появятся в стандарте UML. Стандарт - для пользователей, MOF - для "суперпользователей".
ИМХО, они должны меньше опираться на собственную метамодель, а больше на реальные проблемы современных языков. Например, представление анонимных классов в современном UML просто отвратительно.