Метамоделирование
Мета-модель (мета- обозначает находящийся вне, за пределами, сверх). ‑ это модель, которая описывает структуру, характеристики и принципы действия другой модели. Любая программная модель может быть описана (определена) с помощью соответствующей уникальной метамодели. Метамодель обычно используется · Как схемы для семантических данных (например, схемы репозитория инструментальной системы поддержки процесса сопровождения программных систем Rational ClearQuest). · Как язык, который поддерживает конкретный метод или процесс. · Как язык для выражения дополнительной семантики существующей информации. Поскольку MDA базируется на унифицированном языке объектно-ориентированного моделирования UML, то для описания этого языка и решения некоторых других задач, связанных с обслуживанием программных объектов в распределённых программных системах и репозиториях метаданных, в OMG был разработан стандарт под названием Meta Object Facility (MOF) – службы мета-объектов. Международная организация стандартов (ISO) также предложила стандарт мета-моделирования под названием ISO/IEC 24744. Мета-моделирование. Мета-моделированием называют процессы анализа, конструирования и разработки фреймов, продукционных правил, ограничений, моделей и теорий, применимых и полезных для моделирования интеллектуальных и программных информационных систем. Связь мета-моделей с онтологиями. Понятие «мета-модель» тесно связано с понятием «онтология». Метамоделирование можно рассматривать как явное описание (в виде конструкций и правил) того, как построена модель конкретной предметной области. Обычно, мета-модели всегда следуют набору строгих правил. «Правильная» метамодель является онтологией, но не все онтологии явно представляются мета-моделями. Типы мета-моделей. В программной инженерии различают следующие типы мета-моделей: · Моделирование мета-данных (MetaData Model) · Моделирование мета-процессов (MetaProcess Model) · Исполняемое мета-моделирование (Executable Meta-Modeling) – сильно расширенная комбинация двух предыдущих типов, как в общецелевом языке мета-моделирования и программирования Kermeta[11]. · Язык трансформации моделей (Model Transformation Language, MTL) Моделирование мета-процессов. Моделирование мета-процессов направлено на создание гибких моделей процессов. Целью моделей процессов является документирование и коммуникации процессов, а также их усовершенствование и повторное использование. Это улучшает понимание и исполнение процессов. В результате использования моделей мета-процессов возрастает продуктивность работы инженеров-разработчиков, и улучшается качество разрабатываемых ими моделей. Моделирование мета-процессов сфокусировано на поддержке процесса конструирования моделей процессов. Главная его цель ‑ улучшение моделей процессов и их развитие, что, в свою очередь, будет поддерживать процесс разработки систем. Это важно, благодаря тому, что как процессы, так и их модели изменяются со временем. Таким образом, должны строиться новые процессы и модели, а существующие должны совершенствоваться. Необходимо повышать уровень формализации моделей процессов для того, чтобы сделать возможным их внедрение в среду процессно-ориентированного ПО. Мета-модель процесса – это такая мета-модель, которая описывает (на уровне мета-типа) модель процесса. Существуют стандарты процессных мета-моделей для следующих областей (доменов): · Разработка ПО (Software Engineering) · Software Process Engineering Metamodel (SPEM), которая определена OMG как профиль UML.
|