Метамодель — это модель модели, а метамоделирование — это процесс создания таких метамоделей. Таким образом, метамоделирование или метамоделирование — это анализ, построение и разработка фреймов, правил, ограничений, моделей и теорий, применимых и полезных для моделирования предопределенного класса проблем. Как следует из названия, эта концепция применяет понятия мета- и моделирования в программной инженерии и системной инженерии . Метамодели бывают многих типов и имеют разнообразные приложения. [2]
Обзор
Метамодель/суррогатная модель — это модель модели, т. е. упрощенная модель фактической модели схемы, системы или программно-подобной сущности. [3] [4] Метамодель может быть математическим отношением или алгоритмом, представляющим входные и выходные отношения. Модель — это абстракция явлений в реальном мире ; метамодель — это еще одна абстракция, подчеркивающая свойства самой модели. Модель соответствует своей метамодели так же, как компьютерная программа соответствует грамматике языка программирования, на котором она написана. Различные типы метамоделей включают полиномиальные уравнения, нейронные сети, кригинг и т. д. «Метамоделирование» — это построение коллекции «концепций» (вещей, терминов и т. д.) в определенной области. Метамоделирование обычно включает изучение выходных и входных отношений, а затем подбор правильных метамоделей для представления этого поведения.
Распространенные области применения метамоделей:
Как схема для семантических данных, которые необходимо обменивать или хранить
Как язык, поддерживающий определенный метод или процесс
Как язык для выражения дополнительной семантики существующей информации
Как механизм для создания инструментов, работающих с широким классом моделей во время выполнения
В качестве схемы для моделирования и автоматического исследования предложений языка с приложениями для автоматического синтеза тестов
В качестве приближения к модели с более высокой точностью для использования в случаях, когда необходимо сократить время, стоимость или вычислительные усилия.
Типичные спецификации метамоделирования, предлагаемые OMG, — это UML , SysML , SPEM или CWM. ISO также опубликовала стандартную метамодель ISO/IEC 24744. [ 6] Все представленные ниже языки могут быть определены как метамодели MOF.
Метамодели тесно связаны с онтологиями . Оба часто используются для описания и анализа отношений между концепциями: [7]
Онтологии: выражают что-то значимое в указанной вселенной или области дискурса , используя грамматику для использования словаря. Грамматика определяет, что значит быть правильно сформированным утверждением, утверждением, запросом и т. д. (формальные ограничения) того, как термины в контролируемом словаре онтологии могут использоваться вместе. [8]
Мета-моделирование: может рассматриваться как явное описание (конструкции и правила) того, как строится доменно-специфическая модель. В частности, это включает формализованную спецификацию доменно-специфических нотаций. Обычно метамодели являются — и всегда должны следовать — строгим наборам правил. [9] «Допустимая метамодель — это онтология, но не все онтологии моделируются явно как метамодели». [8]
Типы метамоделей
В программной инженерии можно выделить несколько типов моделей (и соответствующих им видов деятельности по моделированию):
Библиотека подобных метамоделей была названа Зоопарком метамоделей. [11]
Существует несколько типов зоопарков метамоделей. [12] Некоторые из них выражены в ECore. Другие написаны в MOF 1.4 – XMI 1.2. Метамодели, выраженные в UML - XMI 1.2, могут быть загружены в Poseidon для UML, инструмент UML CASE .
^ Дэвид Р. Соллер и др. (2001) Отчет о ходе работы над Национальной базой данных геологических карт, Фаза 3: Онлайновая база данных картографической информации. Методы цифрового картирования '01 — Труды семинара. Отчет Геологической службы США в открытом доступе 01-223.
^ Сараджу Моханти , Глава 12 Методологии проектирования быстрых AMS-SoC на основе метамоделей, «Проектирование наноэлектронных систем со смешанными сигналами», ISBN 978-0071825719 и 0071825711, 1-е издание, McGraw-Hill, 2015.
↑ Олег Гарицелов, Сараджу Моханти и Элиас Кугианос, «Сравнительное исследование метамоделей для быстрого и точного моделирования схем нано-КМОП. Архивировано 23 сентября 2015 г. в Wayback Machine », IEEE Transactions on Semiconductor Manufacturing (TSM), том 25, № 1, февраль 2012 г., стр. 26–36.
^ Сараджу Моханти. Исследование сверхбыстрого проектирования наносхем с помощью метамоделирования. Архивировано 23 сентября 2015 г. на Wayback Machine , приглашенный доклад, Semiconductor Research Corporation (SRC), Техасский аналоговый центр передового опыта (TxACE), 27 апреля 2012 г.
^ FEA (2005) Профиль управления записями FEA, версия 1.0. 15 декабря 2005 г.
^ Международная организация по стандартизации/Международная электротехническая комиссия, 2007. ISO/IEC 24744. Программная инженерия — метамодель для методологий разработки.
^ E. Söderström и др. (2001) «К фреймворку для сравнения языков моделирования процессов», в: Lecture Notes In Computer Science ; Vol. 2348. Труды 14-й Международной конференции по передовой инженерии информационных систем. Страницы: 600 – 611, 2001
^ ab Pidcock, Woody (2003), Каковы различия между словарем, таксономией, тезаурусом, онтологией и метамоделью?, архивировано из оригинала 14 октября 2009 г. , извлечено 10 октября 2009 г.
↑ Эрнст, Йоханнес (2002), Что такое метамоделирование и для чего оно нужно?, архивировано из оригинала 9 октября 2011 г. , извлечено 9 октября 2009 г.
^ Сараджу Моханти и Элиас Кугианос, «Быстрая оптимизация схем генераторов нано-КМОП на основе полиномиальной метамодели. Архивировано 10 августа 2014 г. на Wayback Machine », журнал Springer Analog Integrated Circuits and Signal Processing Journal, том 79, выпуск 3, июнь 2014 г., стр. 437–453.
^ Жан-Мари Фавр: На пути к базовой теории для моделирования инженерного дела. Архивировано 15 октября 2006 г. на Wayback Machine .
↑ AtlanticZoo Архивировано 29 апреля 2006 г. на Wayback Machine .
Дальнейшее чтение
На Викискладе есть медиафайлы по теме «Метамоделирование» .
Сараджу Моханти (2015). "Глава 12. Методологии проектирования быстрых AMS-SoC на основе метамоделей". Проектирование наноэлектронных систем со смешанными сигналами. McGraw-Hill. ISBN978-0071825719.
Буч, Г., Рамбо, Дж., Якобсон, И. (1999), Руководство пользователя унифицированного языка моделирования , Редвуд-Сити, Калифорния: Addison Wesley Longman Publishing Co., Inc.
JP van Gigch , Моделирование проектирования систем и метамоделирование , Plenum Press, Нью-Йорк, 1991
Гопи Булусу, hamara.in, 2004 Трансформация на основе модели
П. К. Смолик, Среда метамоделирования Mambo, докторская диссертация, Технический университет Брно. 2006
Гонсалес-Перес, К. и Б. Хендерсон-Селлерс, 2008. Метамоделирование для разработки программного обеспечения. Чичестер (Великобритания): Wiley. 210 стр. ISBN 978-0-470-03036-3
MA Jeusfeld, M. Jarke и J. Mylopoulos , 2009. Метамоделирование для разработки методов. Кембридж (США): The MIT Press. 424 стр. ISBN 978-0-262-10108-0 , открытый доступ через http://conceptbase.sourceforge.net/2021_Metamodeling_for_Method_Engineering.pdf
Филл, Х.-Г., Карагианнис, Д., 2013. О концептуализации методов моделирования с использованием платформы метамоделирования ADOxx, Корпоративное моделирование и архитектура информационных систем, т. 8, выпуск 1, стр. 4-25.