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.
Image non disponible

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 :