RECHERCHER

BOURSES & MARCHES

CAC 40 4.14 %

SBF 120 4.04 %

Nasdaq 1.22 %

Or 1.00 %

Petrole (NY) 0.66 %

Tous les cours


ANNUAIRES

 
 TUTORIEL ALGO/METHODES 
Introduction au processus MDA
La Model Driven Architecture a été conçue afin de séparer les contraintes fonctionnelles des contraintes techniques. Décryptage. (07/07/2004)

En matière de développement logiciel, l'un des principaux objectifs est la pérennité, et donc par extension la portabilité. Par ailleurs, il devient crucial de définir une application une seule fois, morceau par morceau, et de faire en sorte que le développement puisse être aussi rapide que possible. C'est dans cet objectif que le concept de modélisation a été inventé.

Nombreuses ont été les tentatives de définition d'une architecture de conception efficace, notamment le concept CASE (pour Computer Aided Software Engineering, dans les années 70). L'architecture MDA, conçue et promue par l'OMG (Object Management Group), a le mérite d'être élevée au rang de standard et de profiter des travaux passés. C'est elle qui pour l'heure tient le haut du pavé en matière de conception logicielle, notamment au travers de la méthode de conception UML, très en vogue depuis quelques années.

De quoi s'agit-il ?
La MDA, pour Model-Driven Architecture (Architecture basée sur les modèles), a été conçue afin de séparer les contraintes fonctionnelles des contraintes techniques.
MDA se présente sous la forme d'un jeu de standards proches (mais non co-dépendants), utilisés pour créer un modèle et l'affiner jusqu'à obtenir, idéalement, un produit fini, comme du code source.
En pratique, on rencontre le plus souvent la MDA en définissant une application avec UML et en générant automatiquement l'exécutable lié, grâce à des générateurs Java, C# ou autre...
Ainsi, la proposition de MDA est de définir les fonctionnalités système dans un modèle indépendant de la plate-forme (PIM : Platform Independant Model) à l'aide d'un langage de spécification, et de le traduire en un modèle spécifique à une plate-forme (PSM : Platform Spécific Model), pour enfin générer le code compilable (ou compilé) pour cette plate-forme. Rien n'empêche a priori, à partir d'un PIM, d'obtenir plusieurs PSM pour plusieurs plate-formes. Le concept MDA propose donc une approche ouverte à l'interopérabilité des systèmes.

Plusieurs standards
Les différents langages de spécification associés à MDA sont UML, MOF, XMI, CWM et OCL.

MOF (Meta-Object Facility)

Un ensemble d'interfaces standards permettant de définir et modifier des meta-modèles et leurs modèles correspondants. Le MOF est un moyen de définir la syntaxe et la sémantique d'un langage de modélisation - il a donc été créé par l'OMG afin de définir la notation UML, par exemple. C'est un standard de métamodélisation.

UML (Unified Modeling Language)
Un langage visuel permettant de modéliser des besoins d'un système à l'aide de diagrammes et de textes. Il permet aussi de décrire des architectures, des solutions ou des points de vue.

XMI (XML Metadata Interchange)
Un standard d'échange de métadonnées.

CWM (Common Warehouse Metamodel)
Une interface servant à faciliter les échanges de métadonnées entre outils, plates-formes et bibliothèques de métadonnées dans un environnement hétérogène.
Il est basé sur UML, MOF et XMI.

OCL (Object Constraint Language)
Un ajout à UML 1.1, lui apportant la capacité de formaliser l'expression des contraintes. Il est désormais intégré à UML.

  Forum

Réagissez dans les forums de JDN Développeurs

Est-ce vraiment intéressant ?
La MDA est un apport majeur au monde du développement, car elle autorise la création efficace de modèles non liés à une plate-forme et leur réutilisation à l'envie, ainsi qu'un support total des meilleures pratiques disponibles.
De même, le fait de travailler sur un PIM avant de passer au PSM permet de faciliter la validation d'un modèle sans être gêné par les détails techniques spécifiques à une plate-forme.
Par ailleurs, il est plus simple et rapide de gérer les différentes implémentations d'un système a partir de modèles abstraits que de devoir s'y prendre une fois arrivé au niveau système, où le portage se complique.

Nous aurons l'occasion de revenir sur les différentes caractéristiques de la MDA lors de prochains articles...

 
Xavier Borderie, JDN Développeurs
 
Accueil | Haut de page
 
 





Quand achetez-vous le plus en ligne ?
Du lundi au vendredi
Le samedi
Le dimanche

Tous les sondages

 

 
 
Nos autres sites Société | Mentions légales | Contacts | Publicité | PA Emploi | Presse | Recrutement | Tous nos sites | Données personnelles
© Benchmark Group, 69/71 avenue Pierre Grenier. 92517 Boulogne Billancourt Cedex