Модельно-ориентированное проектирование
Эта статья включает список общих ссылок , но в ней отсутствуют достаточные соответствующие встроенные цитаты . ( Август 2014 г. ) |
Часть серии о |
Разработка программного обеспечения |
---|
Модельно-ориентированное проектирование ( MDE ) — это методология разработки программного обеспечения , которая фокусируется на создании и использовании моделей предметной области , которые представляют собой концептуальные модели всех тем, связанных с конкретной проблемой. Следовательно, он выделяет и нацелен на абстрактные представления знаний . и действий, которые управляют конкретной областью приложения , а не на вычислительные (т. е. алгоритмические) концепции
MDE — это подобласть подхода к проектированию программного обеспечения , называемого комплексным проектированием . Область применения MDE гораздо шире, чем у архитектуры, управляемой моделями . [1]
Обзор [ править ]
Подход MDE предназначен для повышения производительности за счет максимизации совместимости между системами (за счет повторного использования стандартизированных моделей), упрощения процесса проектирования (за счет моделей повторяющихся шаблонов проектирования в области приложения) и содействия общению между отдельными людьми и командами, работающими над системой. (путем стандартизации терминологии и лучших практик, используемых в области применения). Например, при разработке на основе модели технические артефакты, такие как исходный код, документация, тесты и т. д., генерируются алгоритмически на основе модели предметной области. [2]
Парадигма моделирования для MDE считается эффективной, если ее модели имеют смысл с точки зрения пользователя, знакомого с предметной областью, и если они могут служить основой для реализации систем. Модели разрабатываются посредством широкого общения между менеджерами по продуктам, дизайнерами, разработчиками и пользователями области приложений. По мере того, как модели приближаются к завершению, они позволяют разрабатывать программное обеспечение и системы.
Некоторые из наиболее известных инициатив MDE:
- Инициатива Object Management Group (OMG) Model-Driven Architecture (MDA), которая используется в нескольких их стандартах, таких как Meta-Object Facility , XMI , CWM , CORBA , Unified Modeling Language (если точнее, OMG в настоящее время продвигает использование подмножества UML, называемого fUML, вместе с его языком действий ALF для архитектуры, управляемой моделью, вместо этого полагалось на Executable UML и OCL ) и QVT . [3]
- Eclipse Modeling «Эко-система» инструментов программирования и моделирования Eclipse, представленная в общих чертах ( Framework ). Эта структура позволяет создавать инструменты, реализующие стандарты MDA OMG; но его также можно использовать для реализации других инструментов, связанных с моделированием.
История [ править ]
Первыми инструментами для поддержки MDE были инструменты компьютерной разработки программного обеспечения ( CASE ), разработанные в 1980-х годах. Такие компании, как Integrated Development Environments (IDE - StP), Higher Order Software (ныне Hamilton Technologies, Inc., HTI), Cadre Technologies, Bachman Information Systems и Logic Works (BP-Win и ER-Win), были пионерами в этой области.
Правительство США приняло участие в разработке определений моделирования, создав спецификации IDEF . Имея несколько вариаций определений моделирования (см. Буча , Рамбо , Джейкобсона , Гэйна и Сарсона, Харела , Шлаера и Меллора и др.), они в конечном итоге объединились, создав унифицированный язык моделирования (UML). Rational Rose , продукт для реализации UML, был создан корпорацией Rational Corporation (Booch). Автоматизация обеспечивает более высокий уровень абстракции при разработке программного обеспечения. Эта абстракция продвигает более простые модели с большим вниманием к проблемному пространству. В сочетании с исполняемой семантикой это повышает общий возможный уровень автоматизации. Группа управления объектами (OMG) разработала набор стандартов, называемых архитектурой, управляемой моделями (MDA), которые закладывают основу для этого передового подхода, ориентированного на архитектуру.
Преимущества [ править ]
По словам Дугласа К. Шмидта , инженерные технологии, основанные на моделях, предлагают многообещающий подход к решению проблемы неспособности языков третьего поколения облегчить сложность платформ и эффективно выражать концепции предметной области. [4]
Инструменты [ править ]
Известные программные инструменты для проектирования на основе моделей включают:
- AADL от Института разработки программного обеспечения Карнеги-Меллона.
- Acceleo — генератор кода с открытым исходным кодом от Obeo.
- Источник ресурсов
- AgileUML — набор инструментов MDE с открытым исходным кодом от AgileMDE Ltd.
- Язык трансформации ATLAS или ATL, язык преобразования моделей от Obeo.
- DUALly , платформа MDE для обеспечения совместимости.
- Платформа моделирования Eclipse (EMF)
- Корпоративный архитектор из Sparx Systems
- eTrice — реализация с открытым исходным кодом стандарта объектно-ориентированного моделирования в реальном времени .
- Общая система моделирования затмений (GEMS)
- GeneXus — основанное знаниях . на декларативное , многоплатформенное и многоязычное решение для разработки,
- Структура графического моделирования (GMF)
- JetBrains MPS — система метапрограммирования от JetBrains.
- MagicDraw от No Magic Inc.
- MERODE JMermaid от KU Leuven (обучающий)
- MetaEdit+ от MetaCase
- ModelCenter от Phoenix Integration
- Открыть МодельСферу
- OptimalJ от Compuware
- PREEvision от Вектор Информатика
- Рапсодия от IBM
- PowerDesigner от SAP
- Simulink от MathWorks
- Разработчик идей программного обеспечения от Душана Родина
- Sirius — проект Eclipse с открытым исходным кодом для создания пользовательских инструментов графического моделирования.
- Вместе Архитектор от Borland
- Зонт от KDE
- Умпл из Университета Оттавы
- Uniface от Compuware
- Инструмент YAKINDU Statechart Tools с открытым исходным кодом, созданный на основе Eclipse
См. также [ править ]
- Управление жизненным циклом приложений (ALM)
- Модель бизнес-процессов и нотация (BPMN)
- Развитие, ориентированное на бизнес (BDD)
- Доменно-ориентированное проектирование (DDD)
- Доменно-ориентированный язык (DSL)
- Специализированное моделирование (DSM)
- Специализированное мультимоделирование
- Языко-ориентированное программирование (ЛОП)
- Список инструментов унифицированного языка моделирования
- Преобразование модели (например, с использованием QVT )
- Тестирование на основе моделей (MBT)
- Моделирование уровня зрелости (MML)
- Системное проектирование на основе моделей (MBSE)
- сервис-ориентированного моделирования (SOMF) Платформа
- Фабрика программного обеспечения (СФ)
- Моделирование на основе историй (SDM)
- Открытый API , спецификация с открытым исходным кодом для описания моделей и операций для взаимодействия HTTP и REST APIc.
Ссылки [ править ]
- ^ «8 причин, почему подходы, основанные на моделях, терпят неудачу» . ИнфоQ . Проверено 26 июля 2023 г.
- ^ Флэтт, Амели; Лангнер, Арне; Лепс, Олоф (2022). Разработка профилей приложений Akoma Ntoso на основе моделей - концептуальная основа для создания подсхем XML на основе моделей (1-е изд.). Гейдельберг: Природа спринтера. ISBN 978-3-031-14131-7 .
- ^ Группа управления объектами (24 мая 2006 г.). «Торговые марки OMG» . Проверено 26 февраля 2008 г.
- ^ Шмидт, округ Колумбия (февраль 2006 г.). «Модельно-ориентированная инженерия» (PDF) . IEEE-компьютер . 39 (2). дои : 10.1109/MC.2006.58 . S2CID 10006139 . Архивировано из оригинала (PDF) 9 сентября 2006 г. Проверено 16 мая 2006 г. « Многообещающий подход к решению проблемы сложности платформы — и неспособности языков третьего поколения облегчить эту сложность и эффективно выражать концепции предметной области — заключается в разработке технологий модельно-ориентированного проектирования (MDE)…»
Дальнейшее чтение [ править ]
- Дэвид С. Франкель , Архитектура, управляемая моделями: применение MDA к корпоративным вычислениям , John Wiley & Sons, ISBN 0-471-31920-1
- Марко Брамбилла, Джорди Кэбот, Мануэль Виммер, Модельно-ориентированная разработка программного обеспечения на практике , предисловие Ричарда Соли ( председателя OMG ), Morgan & Claypool, США, 2012, Обобщающие лекции по программной инженерии № 1. 182 страницы. ISBN 9781608458820 (мягкая обложка), ISBN 9781608458837 (электронная книга). http://www.mdse-book.com
- да Силва, Альберто Родригес (2015). «Инжиниринг, основанный на моделях: исследование, подкрепленное единой концептуальной моделью» . Компьютерные языки, системы и структуры . 43 (43): 139–155. дои : 10.1016/j.cl.2015.06.001 .