Enginyeria basada en modelsL'enginyeria basada en models (EDM) és una metodologia de desenvolupament de programari que se centra en la creació i l'explotació de models de domini, que són models conceptuals de tots els temes relacionats amb un problema específic. Per tant, destaca i pretén representacions abstractes del coneixement i les activitats que governen un domini d'aplicació concret, en lloc dels conceptes informàtics (és a dir, algorítmics).[1] L'arquitectura basada en models (MDE) és un subcamp d'un enfocament de disseny de programari conegut com a enginyeria d'anada i tornada. L'abast de l'MDE és molt més ampli que el de l'arquitectura basada en models.[2] ![]() Visió generalL'enfocament MDE pretén augmentar la productivitat maximitzant la compatibilitat entre sistemes (mitjançant la reutilització de models estandarditzats), simplificant el procés de disseny (mitjançant models de patrons de disseny recurrents en el domini de l'aplicació) i promovent la comunicació entre individus i equips que treballen al sistema (mitjançant l'estandardització de la terminologia i les millors pràctiques utilitzades en el domini de l'aplicació). Per exemple, en el desenvolupament basat en models, els artefactes tècnics com ara el codi font, la documentació, les proves i més es generen algorítmicament a partir d'un model de domini.[3] Un paradigma de modelització per a MDE es considera eficaç si els seus models tenen sentit des del punt de vista d'un usuari familiaritzat amb el domini i si poden servir com a base per implementar sistemes. Els models es desenvolupen mitjançant una comunicació extensa entre gestors de productes, dissenyadors, desenvolupadors i usuaris del domini de l'aplicació. A mesura que els models s'acosten a la seva finalització, permeten el desenvolupament de programari i sistemes.[4] Algunes de les iniciatives MDE més conegudes són:
Història![]() Les primeres eines que van donar suport a l'enginyeria de programari assistida per ordinador (MDE) van ser les eines d'enginyeria de programari assistida per ordinador (CASE) desenvolupades a la dècada del 1980. Empreses com Integrated Development Environments (IDE – StP), Higher Order Software (ara Hamilton Technologies, Inc., HTI), Cadre Technologies, Bachman Information Systems i Logic Works (BP-Win i ER-Win) van ser pioneres en aquest camp. El govern dels EUA es va involucrar en les definicions de modelització creant les especificacions IDEF. Amb diverses variacions de les definicions de modelització (vegeu Booch, Rumbaugh, Jacobson, Gane i Sarson, Harel, Shlaer i Mellor, i altres), finalment es van unir creant el Llenguatge Unificat de Modelització (UML). Rational Rose, un producte per a la implementació d'UML, va ser realitzat per Rational Corporation (Booch) que respon a l'automatització produint nivells més alts d'abstracció en el desenvolupament de programari. Aquesta abstracció promou models més simples amb un major enfocament en l'espai del problema. Combinat amb la semàntica executable, això eleva el nivell total d'automatització possible. L'Object Management Group (OMG) ha desenvolupat un conjunt d'estàndards anomenats Model-Driven Architecture (MDA), construint una base per a aquest enfocament avançat centrat en l'arquitectura. AvantatgesSegons Douglas C. Schmidt, les tecnologies d'enginyeria basades en models ofereixen un enfocament prometedor per abordar la incapacitat dels llenguatges de tercera generació per alleujar la complexitat de les plataformes i expressar conceptes de domini de manera eficaç. Referències
|