Разработка, управляемая моделями
Разработка, управляемая моделями, (англ. model-driven development) — это стиль разработки программного обеспечения, когда модели становятся основными артефактами разработки, из которых генерируется код и другие артефакты[1].
Модель — это абстрактное описание программного обеспечения, которое скрывает информацию о некоторых аспектах с целью представления упрощенного описания остальных. Модель может быть исходным артефактом в разработке, если она фиксирует информацию в форме, пригодной для интерпретаций людьми и обработки инструментами. Модель определяет нотацию и метамодель. Нотация представляет собой совокупность графических элементов, которые применяются в модели и могут быть интерпретированы людьми. Метамодель описывает понятия используемые в модели и фиксирует информацию в виде метаданных, которые могут быть обработаны инструментами.
Модели описанные на предметно-ориентированном языке программирования могут быть использованы, как точки расширения каркасов.
Наиболее известными MDE-инициативами являются:
- концепция модельно-ориентированного подхода к разработке программного обеспечения (архитектура, управляемая моделью), разрабатываемая консорциумом OMG.
- Eclipse Modeling Framework — свободный фреймворк, основанный на Eclipse, для генерации кода, инструментов и прочих приложений на основе структурированной модели данных (метамодели).
Примечания
- Stahl T., Völter M., Efftinge S. Modellgetriebene Softwareentwicklung. Techniken, Engineering, Management. — Heidelberg, Dpunkt-Verlag, 2007, ISBN=978-3-89864-448-8
Литература
- David S. Frankel, Model Driven Architecture: Applying MDA to Enterprise Computing, John Wiley & Sons, ISBN 0-471-31920-1
- Marco Brambilla, Jordi Cabot, Manuel Wimmer, Model Driven Software Engineering in Practice, foreword by Richard Soley (OMG Chairman), Morgan & Claypool, USA, 2012, Synthesis Lectures on Software Engineering #1. 182 pages. ISBN 9781608458820 (paperback), ISBN 9781608458837 (ebook). http://www.mdse-book.com
Ссылки
- Model-Driven Architecture: Vision, Standards And Emerging Technologies at omg.org
- On the Unification Power of Models.
- Model-Driven Software Development Course, B. Tekinerdogan, Bilkent University
- A podcast discussion on Model-Driven Software Development.
- Making model-based code generation work (недоступная ссылка)
- International School on Model-Driven Design for Distributed, Realtime, Embedded Systems (MDD4DRES)
- VisSim: A Visual Language for Model-Based Design and Embedded Development
- DPF: Diagram Predicate Framework, a formal framework for MDE
- Very Rapid Application Development with a VRAD framework
- ACM/IEEE International Conference on Model Driven Engineering Languages and Systems (Proceedings)
- European Conference on Modelling Foundations and Applications (ECMFA) (Proceedings)
- Why modelling is the most advanced in telecommunication (статья)