Modelldrevet prosjektering - Model-driven engineering
Programvare utvikling |
---|
Model-driven engineering ( MDE ) er en programvareutviklingsmetodikk som fokuserer på å lage og utnytte domenemodeller , som er konseptuelle modeller av alle temaene knyttet til et bestemt problem. Derfor fremhever den og tar sikte på abstrakte representasjoner av kunnskap og aktiviteter som styrer et bestemt applikasjonsdomene , i stedet for databehandling (dvs. algoritmiske) konsepter.
Oversikt
MDE -tilnærmingen er ment å øke produktiviteten ved å maksimere kompatibiliteten mellom systemer (via gjenbruk av standardiserte modeller), forenkle designprosessen (via modeller av gjentagende designmønstre i applikasjonsdomenet) og fremme kommunikasjon mellom enkeltpersoner og team som jobber med systemet (via en standardisering av terminologien og de beste fremgangsmåtene som brukes i applikasjonsdomenet).
Et modelleringsparadigme for MDE anses som effektivt hvis modellene gir mening fra en bruker som er kjent med domenet, og hvis de kan tjene som grunnlag for implementering av systemer. Modellene utvikles gjennom omfattende kommunikasjon mellom produktledere, designere, utviklere og brukere av applikasjonsdomenet. Når modellene nærmer seg ferdigstillelse, muliggjør de utvikling av programvare og systemer.
Noen av de mer kjente MDE -initiativene er:
- The Object Management Group (OMG) initiativ Model-Driven Architecture (MDA) som utnyttes av flere av sine standarder som Meta-Object Facility , XMI , CWM , CORBA , Unified Modeling Language (for å være mer presis, OMG dag fremmer bruk av en undersett av UML kalt fUML sammen med handlingsspråket, ALF , for modelldrevet arkitektur; en tidligere tilnærming stolte på kjørbar UML og OCL , i stedet) og QVT .
- Den Eclipse "øko-system" av programmering og modelleringsverktøy er representert generelt ved ( Eclipse Modeling Framework ). Dette rammeverket tillater opprettelse av verktøy som implementerer MDA -standardene i OMG; men det er også mulig å bruke den til å implementere andre modelleringsrelaterte verktøy.
Historie
De første verktøyene for å støtte MDE var Computer-Aided Software Engineering ( CASE ) -verktøyene som ble utviklet på 1980-tallet. Selskaper som Integrated Development Environments (IDE-StP), Higher Order Software (nå Hamilton Technologies, Inc., HTI), Cadre Technologies, Bachman Information Systems og Logic Works (BP-Win og ER-Win) var pionerer innen feltet.
Den amerikanske regjeringen engasjerte seg i modelleringsdefinisjonene som opprettet IDEF -spesifikasjonene. Med flere varianter av modelleringsdefinisjonene (se Booch , Rumbaugh , Jacobson , Gane og Sarson, Harel , Shlaer og Mellor og andre) ble de til slutt sluttet til å lage Unified Modelling Language (UML). Rational Rose , et produkt for UML -implementering, ble utført av Rational Corporation (Booch) som reagerte på automatisering gir høyere abstraksjon i programvareutvikling. Denne abstraksjonen fremmer enklere modeller med større fokus på problemrom. Kombinert med kjørbar semantikk øker dette det totale automatiseringsnivået. The Object Management Group (OMG) har utviklet et sett av standarder som kalles modell-drevet arkitektur (MDA), og bygge et fundament for denne avanserte arkitektur-fokusert tilnærming.
Ifølge Douglas C. Schmidt tilbyr modelldrevne ingeniørteknologier en lovende tilnærming for å håndtere manglende evne til tredje generasjons språk for å lette kompleksiteten til plattformer og uttrykke domenekonsepter effektivt.
Verktøy
Kjente programvareverktøy for modelldrevet prosjektering inkluderer:
- AADL fra Carnegie-Mellon Software Engineering Institute
- Acceleo en åpen kildekodegenerator fra Obeo
- Actifsource
- ATLAS Transformation Language eller ATL, et modell transformasjonsspråk fra Obeo
- Eclipse Modeling Framework (EMF)
- Enterprise Architect fra Sparx Systems
- Generic Eclipse Modelling System (GEMS)
- GeneXus en kunnskapsbasert , deklarativ , multi-plattform, flerspråklig utviklingsløsning
- Genio a CASE / RAD ( Rapid Application Development ) / Agile / Model Driven Platform utviklet av Quidgest
- Grafisk modelleringsramme (GMF)
- JetBrains MPS , et metaprogrammeringssystem fra JetBrains
- MagicDraw fra No Magic Inc.
- MERODE JMermaid fra KU Leuven (pedagogisk)
- MetaEdit+ fra MetaCase
- ModelCenter fra Phoenix Integration
- Åpen ModelSphere
- OptimalJ fra Compuware
- PREEvision fra Vector Informatik
- Rhapsody fra IBM
- RISE Editor fra RISE til Bloome Software
- PowerDesigner fra SAP
- Simulink fra MathWorks
- Software Ideas Modeler fra Dusan Rodina
- Sirius et Eclipse Open Source -prosjekt for å lage tilpassede grafiske modelleringsbenker
- Sammen Arkitekt fra Borland
- Umple fra University of Ottawa
- Uniface fra Compuware
- YAKINDU Statechart Tools open source -verktøy bygget på toppen av Eclipse
Se også
- Administrasjon av applikasjonslivssyklus (ALM)
- Business Process Model and Notation (BPMN)
- Forretningsdrevet utvikling (BDD)
- Domenedrevet design (DDD)
- Domenespesifikt språk (DSL)
- Domenespesifikk modellering (DSM)
- Domenespesifikk multimodellering
- Språkorientert programmering (LOP)
- Liste over verktøy for Unified Modeling Language
- Modell transformasjon (for eksempel ved bruk av QVT )
- Modellbasert testing (MBT)
- Modellering av modenhetsnivå (MML)
- Modellbasert_systemer_ingeniør (MBSE)
- Tjenesteorientert modelleringsramme (SOMF)
- Programvarefabrikk (SF)
- Historiedrevet modellering (SDM)
Referanser
Videre lesning
- David S. Frankel , modelldrevet arkitektur: Bruk av MDA til Enterprise Computing , John Wiley & Sons, ISBN 0-471-31920-1
- Marco Brambilla, Jordi Cabot, Manuel Wimmer, Model Driven Software Engineering in Practice , forord av Richard Soley ( OMG -leder), Morgan & Claypool, USA, 2012, Syntese -forelesninger om programvareutvikling #1. 182 sider. ISBN 9781608458820 (pocket), ISBN 9781608458837 (e -bok ). http://www.mdse-book.com
- da Silva, Alberto Rodrigues (2015). "Modelldrevet konstruksjon: En undersøkelse støttet av en enhetlig konseptuell modell" . Dataspråk, systemer og strukturer . 43 (43): 139–155. doi : 10.1016/j.cl.2015.06.001 .
Eksterne linker
- Modelldrevet arkitektur: Visjon, standarder og nye teknologier på omg.org