Vous avez dit MDA

Henry Cesbron Lavau

MDA = Model Driven Architecture

- Titre : Vous avez dit MDA

- Auteur : Henry Cesbron Lavau

- Parution : 9 octobre 2002

- Licence : Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright ® 2013 Henry Cesbron Lavau. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- Voilà un acronyme qui ne restera pas longtemps bizarre

Voilà un acronyme qui ne restera pas longtemps bizarre

En effet, s'il a fait un chemin relativement discret depuis plusieurs années au sein de l'OMG (Object Management Group), le voilà mûr avec l'arrivée des outils qui permettent de l'implémenter. Dans son analyse 2002-2004, le cabinet PwC (PricewaterhouseCoopers) reconnaît le MDA comme hautement stratégique pour les développeurs.

L'idée de base est simple : il s'agit de penser l'application au niveau du modèle et de laisser le soin de l'implémentation aux outils. Ce paradigme est omniprésent en informatique : les langages nous ont affranchis des processeurs et ils nous affranchissent maintenant des systèmes d'exploitation.

Pour le dire brièvement, l'interopérabilité prend de la hauteur.

La continuité d'un si bon chemin est le MDA : l'interopérabilité au niveau des modèles. Il s'agit d'avoir la possibilité d'écrire et de faire évoluer le modèle en fonction de l'organisation à la vitesse requise par l'organisation et non plus par les plates-formes.

Au niveau de l'organisation, on parle de PIM (Plateform Independant Model) ; au niveau des plates-formes, de PSM (Plateform Specific Model).

Une application complète de MDA se composera donc d'un PIM et d'un ou de plusieurs PSM.
On retrouve à un niveau d'abstraction supérieur la démarche qui avec le même langage Delphi permet d'obtenir par la CLX un exécutable qui pourra faire appel aux API Windows ou à Linux, avec la même source.

Le langage de choix dans lequel écrire le MDA est UML. C'est en effet un standard depuis son adoption par l'OMG en 1997. L'application sera ensuite implémentée sur un large éventail de systèmes : des ordinateurs de bureau, aux serveurs, aux mainframes et au travers d'Internet. Les PSM peuvent communiquer entre eux en faisant intervenir plusieurs plates-formes qui ont à échanger des données : le développement de CORBA continuera d'être favorisé par l'OMG dans ce sens. La demande croissante des utilisateurs en temps réel, en système embarqué, en système tolérant et en systèmes d'entreprises va accélérer le rythme de standardisation de CORBA. Les services de CORBA permettront de synchroniser rapidement quatre services dominants identifiés par l'OMG dans le MDA :

- services d'annuaire ;

- services de Transaction ;

- services de sécurité ;

- services distribués d'événement et d'avis ;

- d'autres viendront s'ajouter à cette liste.

.NET et ONE sont des plates-formes au-dessus desquelles se place l'architecture conduite par le modèle : MDA. Cette approche globale de haut niveau présente beaucoup d'avantages par rapport aux approches spécifiques. En effet, le partage d'une logique commune au sein d'une industrie réduit d'emblée les nombreux problèmes d'interconnexion de systèmes qu'ont fait surgir au fil du temps les particularismes développés sans concertations. Le MDA est l'outil qui permet à une industrie de décrire ses fonctions indépendamment des implémentations. Cette approche contribue à l'émergence de normes en offrant une lisibilité que peuvent partager une masse critique d'entreprises.

MDA™ émane donc de l'OMG. Il est de plus soutenu par de nombreux constructeurs, développeurs et utilisateurs comme le montre le succès croissant des réunions d'une part autour de ce sujet, mais surtout les lancements anticipés de travaux d'applications.

En effet les avantages que retirent les entreprises sur le MDA sont principalement

- le fait qu'une architecture basée sur MDA est prête pour les évolutions technologiques ;

- la plus grande facilité d'intégration des applications et des systèmes autour d'une architecture partagée ;

- une interopérabilité plus large permettant de ne pas être lié à une plate-forme.

En termes de produits, MDA est implémenté dans un outil qui intègre la modélisation et le développement. Il gère des classes servant les objets métiers, leur présentation et leur persistance.

Delphi Architecte permet de développer une application MDA depuis le PIM (Plateform Independant Model) jusqu'aux PSM (Plateform Specific Model). Bold intégré à Delphi permet cette architecture de développement conduite par le modèle. Par exemple, la base de données ainsi que les fonctions d'accès sont mises en place, suivies, modifiées directement depuis le modèle. C'est un gain énorme en cohérence de projet dans la durée, dans la réutilisation de modules fiables et dans l'indépendance par rapport aux systèmes d'exploitation et aux bases de données.

En unissant Bold dans Delphi, cette architecture trouve une implémentation qui bénéficie de l'efficacité et des performances de Delphi. Le fait que Delphi tourne sous Windows 32 bit, sous .NET et sous Linux s'inscrit parfaitement dans la logique MDA en offrant les PSM d'implémentation. En amont, Bold, livré avec la version Architecte de Delphi permet d'établir et de conduire le modèle qui soutient l'application. Le modèle peut être écrit à l'aide de Rational Rose ou de ModelMaker. L'avantage de ce dernier est qu'il est livré avec Delphi.

La puissance de l'approche MDA dans Delphi a été mise en oeuvre par Bold pour développer de manière très efficace, des applications dans des domaines variés :

- Système d'attributions de fonds pour l'industrie marines
150 classes, deux millions d'objets
dans une institution de financement internationale

- Système de gestion de l'imposition des personnes physiques et des entreprises
130 classes, 10 millions d'objets
utilisé par 200 administrateurs

- ERP
Gestion de ressources en personnel et en équipements
300 classes, deux millions d'objets
utilisé par 200 personnes d'une chaîne de télévision

- Logistique
Analyse des besoins en temps réel, planification des ventes et de la distribution
230 classes, 2 millions d'objets

- e-Banking
Middleware pour rendre un AS/400 bancaire compatible COM
60 classes, 5000 objets au format XML.

Avec Delphi Architecte, nous disposons maintenant d'un véritable studio de développement.

Pour aller plus loin, consultez :

- Matrice produit, catalogue Delphi 7 en français

- Site MDA de l'OMG (Object Management Group)

- ModelMaker de Delphi 7

Interbase

Ma première base InterBase

Delphi 6 et InterBase 6

dbExpress avec Delphi 6

Delphi 6 Relationnel

Le bon PLAN d'InterBase

MDA (Model Driven Architecture)

MDA

Programmez avec les diagrammes de Delphi 7

Les objets métiers avec ModelMaker de Delphi 7

Les Design Patterns avec ModelMaker de Delphi 7

Autres articles

Les transactions

Mise à jour de Delphi 6