Modelově řízené inženýrství - Model-driven engineering
Vývoj softwaru |
---|
Model-driven engineering ( MDE ) je metodologie vývoje softwaru, která se zaměřuje na vytváření a využívání doménových modelů , což jsou koncepční modely všech témat souvisejících s konkrétním problémem. Z toho důvodu, že upozorňuje a usiluje o abstraktních reprezentací na znalosti a činnosti, které se pojí s určitou aplikační doménu , spíše než výpočetní techniky (tj algoritmické) pojetí.
Přehled
Cílem přístupu MDE je zvýšit produktivitu maximalizací kompatibility mezi systémy (prostřednictvím opětovného použití standardizovaných modelů), zjednodušením procesu návrhu (prostřednictvím modelů opakujících se návrhových vzorů v aplikační doméně) a podporou komunikace mezi jednotlivci a týmy pracujícími na systému (prostřednictvím standardizace terminologie a osvědčených postupů používaných v aplikační doméně).
Modelovací paradigma pro MDE je považována za efektivní, pokud její modely dávají smysl z pohledu uživatele, který je s danou doménou obeznámen, a pokud mohou sloužit jako základ pro implementaci systémů. Modely jsou vyvíjeny prostřednictvím rozsáhlé komunikace mezi produktovými manažery, designéry, vývojáři a uživateli domény aplikace. Když se modely blíží dokončení, umožňují vývoj softwaru a systémů.
Některé ze známějších iniciativ MDE jsou:
- Iniciativa Object Management Group (OMG) Model-Driven Architecture (MDA), kterou využívá několik jejich standardů, jako jsou Meta-Object Facility , XMI , CWM , CORBA , Unified Modeling Language (přesněji řečeno, OMG v současné době propaguje použití podmnožiny UML s názvem fUML společně s jejím akčním jazykem ALF pro architekturu řízenou modelem; dřívější přístup místo toho spoléhal na spustitelný UML a OCL ) a QVT .
- Eclipse „eco-system“ z programování a modelovacích nástrojů zastoupeny v obecné části ( Eclipse Modeling Framework ). Tento rámec umožňuje vytváření nástrojů implementujících standardy MDA OMG; ale je také možné jej použít k implementaci dalších nástrojů souvisejících s modelováním.
Dějiny
Prvními nástroji na podporu MDE byly nástroje Computer-Aided Software Engineering ( CASE ) vyvinuté v 80. letech minulého století. Průkopníky v této oblasti byly společnosti jako Integrated Development Environments (IDE-StP), Software vyššího řádu (nyní Hamilton Technologies, Inc., HTI), Cadre Technologies, Bachman Information Systems a Logic Works (BP-Win a ER-Win).
Americká vláda se zapojila do definic modelování vytvářejících specifikace IDEF . S několika variantami definic modelování (viz Booch , Rumbaugh , Jacobson , Gane a Sarson, Harel , Shlaer a Mellor a další) byli nakonec spojeni a vytvořili Unified Modeling Language (UML). Rational Rose , produkt pro implementaci UML, byl vytvořen odpovědnou automatizací Rational Corporation (Booch), která přináší vyšší úroveň abstrakce ve vývoji softwaru. Tato abstrakce podporuje jednodušší modely s větším zaměřením na problémový prostor. V kombinaci se spustitelnou sémantikou to zvyšuje celkovou možnou úroveň automatizace. Skupina Object Management Group (OMG) vyvinula sadu standardů nazývaných model-driven architecture (MDA), která staví základy pro tento pokročilý přístup zaměřený na architekturu.
Podle Douglase C. Schmidta modelové inženýrské technologie nabízejí slibný přístup k řešení neschopnosti jazyků třetí generace účinně zmírnit složitost platforem a vyjádřit koncepce domén.
Nástroje
Mezi pozoruhodné softwarové nástroje pro modelové inženýrství patří:
- AADL z Carnegie-Mellon Software Engineering Institute
- Acceleo generátor otevřeného zdrojového kódu od Obeo
- Actifsource
- ATLAS Transformation Language nebo ATL, modelový transformační jazyk od Obeo
- Rámec modelování Eclipse (EMF)
- Enterprise Architect od Sparx Systems
- Generic Eclipse Modeling System (GEMS)
- GeneXus je deklarativní , multiplatformní a vícejazyčné vývojové řešení založené na znalostech
- Genio a CASE / RAD ( Rapid Application Development ) / Agile / Model Driven Platform vyvinutý společností Quidgest
- Rámec grafického modelování (GMF)
- JetBrains MPS , metaprogramovací systém od JetBrains
- MagicDraw od No Magic Inc.
- MERODE JMermaid z KU Leuven (vzdělávací)
- MetaEdit+ z MetaCase
- ModelCenter od Phoenix Integration
- Otevřete ModelSphere
- OptimalJ od společnosti Compuware
- PREEvision od Vector Informatik
- Rhapsody od IBM
- RISE Editor z RISE do Bloome Software
- PowerDesigner od společnosti SAP
- Simulink od společnosti MathWorks
- Software Ideas Modeler od Dusan Rodina
- Sirius a projekt Eclipse s otevřeným zdrojovým kódem k vytvoření vlastních pracovních stolů pro grafické modelování
- Společně architekt z Borlandu
- Umple z University of Ottawa
- Uniface od společnosti Compuware
- YAKINDU Statechart Tools open source nástroj postavený na Eclipse
Viz také
- Správa životního cyklu aplikace (ALM)
- Business Process Model and Notation (BPMN)
- Podnikový rozvoj (BDD)
- Design řízený doménou (DDD)
- Jazyk specifický pro doménu (DSL)
- Modelování specifické pro doménu (DSM)
- Multimodelování specifické pro doménu
- Jazykově orientované programování (LOP)
- Seznam nástrojů Unified Modeling Language
- Transformace modelu (např. Pomocí QVT )
- Modelové testování (MBT)
- Modelovací úroveň dospělosti (MML)
- Model-based_systems_engineering (MBSE)
- Servisně orientovaný modelovací rámec (SOMF)
- Softwarová továrna (SF)
- Modelování založené na příběhu (SDM)
Reference
Další čtení
- David S. Frankel , Model Driven Architecture: Application MDA to Enterprise Computing , John Wiley & Sons, ISBN 0-471-31920-1
- Marco Brambilla, Jordi Cabot, Manuel Wimmer, Model Driven Software Engineering in Practice , předmluva Richard Soley ( předseda OMG ), Morgan & Claypool, USA, 2012, Synthesis Lectures on Software Engineering #1. 182 stran. ISBN 9781608458820 (brožováno), ISBN 9781608458837 (ebook). http://www.mdse-book.com
- da Silva, Alberto Rodrigues (2015). „Modelově řízené inženýrství: průzkum podporovaný jednotným koncepčním modelem“ . Počítačové jazyky, systémy a struktury . 43 (43): 139–155. doi : 10,1016/j.cl.2015.06.001 .