---
title: Architecture pilotée par les modèles avec Altova UModel
date: 2012-02-14
tags:
  - uml
  - uml-tool
  - umodel
  - v2012
description: UModel prend en charge l'architecture basée sur les modèles, en utilisant des modèles indépendants de la plateforme et des transformations de modèles qui convertissent tous les éléments de modélisation pertinents vers et depuis UML, C#, Visual Basic, Java, les bases de données et les schémas XML
---
Status: #blog

Tags:  #uml #uml-tool #umodel #v2012

Categories: [Altova](/blog/fr/category/altova.md) 
# Architecture pilotée par les modèles avec Altova UModel

 [UModel](https://www.altova.com/fr/umodel.html) prend en charge l'architecture pilotée par les modèles (MDA) grâce à des modèles indépendants de la plateforme et une fonctionnalité de transformation de modèles qui convertit tous les éléments de modélisation pertinents vers et depuis UML, C#, Visual Basic, Java, les bases de données et les schémas XML. **Transformation de modèles** Une approche de l'ingénierie logicielle basée sur l'architecture pilotée par les modèles, avec des modèles indépendants de la plateforme, offre deux avantages principaux :

- Pendant la phase de conception, les développeurs n'ont pas besoin de se préoccuper des détails et des variations entre les langages de programmation  
    
- Un projet UModel existant peut être converti d'un langage de code source à un autre. Par exemple, un modèle UML pour une application C# peut être transformé en un projet Java ou Visual Basic

Les utilisateurs peuvent même appliquer des transformations de modèle à des projets qui ont été générés à partir de code source existant. Par exemple, une application Java existante peut être analysée et transformée par UModel, puis convertie en classes Visual Basic, et de nombreuses autres possibilités sont disponibles. 

[![Dialogue de transformation de modèles dans Altova UModel](https://lh5.ggpht.com/-vlDqDh0bm04/TzGCelTJU_I/AAAAAAAAAmo/5iBbBSXMQN8/clip_image001_thumb.png?imgmax=800 "Model Transformation Dialog")](http://lh4.ggpht.com/-IkLLlKyafts/TzGCeZSd8gI/AAAAAAAAAmk/l08wEfYKH04/s1600-h/clip_image001%25255B3%25255D.png) 

## Modèles indépendants de la plateforme
L'Architecture dirigée par les modèles est un ensemble de standards et de méthodes pour appliquer l'UML (Unified Modeling Language) administré par le Groupe de gestion d'objet. Dans l'Architecture dirigée par les modèles, le modèle UML d'un projet de logiciel est un modèle indépendant de toute plateforme (PIM) qui peut être entièrement décrit sans se soucier des détails des langues de programmation spécifique. Cette stratégie de développement permet aux architectes de logiciel et à d'autres développeurs de se concentrer exclusivement sur la logique requise par le domaine sujet, au lieu de se concentrer sur les caractéristiques d'une langue de programmation. 

## Correspondance des types
Lors de la transformation de modèles, UModel associe les types de données de la source à la cible afin de tenir compte des différences entre les langages. La fenêtre de dialogue "Correspondance des types" vous permet de consulter, voire de modifier, les paires de correspondance des types. 

[![Correspondance des types pour la transformation de modèles UML](https://lh5.ggpht.com/-wv6KDewZJG8/TzGCfHTDz8I/AAAAAAAAAm8/2HbRCTFxdoQ/clip_image002_thumb.png?imgmax=800 "Type Mapping for UML Model Transformation")](http://lh4.ggpht.com/-rEbyMfbBpyQ/TzGCesGg87I/AAAAAAAAAm0/bxq-gJkEpxA/s1600-h/clip_image002%25255B3%25255D.png) 

UModel ajoute également automatiquement le profil de la langue cible au projet transformé. 

## Diagrammes de classe UML 
Dans le cadre de la transformation du modèle, UModel crée de nouvelles classes UML et des diagrammes de classes pour la cible, reflétant les classes et les diagrammes de classes du projet d'origine. La capture d'écran ci-dessous montre le diagramme de hiérarchie des comptes pour Visual Basic après la transformation du modèle à partir de Java. La nouvelle classe "Compte" dans le nouveau dossier nommé "VB Target" dans l'arborescence du modèle contient la syntaxe Visual Basic pour toutes les propriétés et opérations. Par exemple, la nouvelle propriété "solde" est définie comme le type de données Visual Basic "Single", alors que dans Java, le type de données était "float". Après la transformation, la classe "Compte" d'origine pour Java est conservée dans le modèle, à son emplacement d'origine dans l'arborescence du modèle. La conception UML d'origine pour Java générera désormais du code dans plusieurs langages de programmation : Java et Visual Basic. 

[![Diagramme de classes UModel et arborescence du modèle](https://lh4.ggpht.com/-YLCTivkFrmA/TzGCfqos7qI/AAAAAAAAAnM/LXPoJNJq2w8/clip_image003_thumb.png?imgmax=800 "UModel class diagram and Model Tree")](http://lh4.ggpht.com/-szjiBcB8F-k/TzGCfaRJyVI/AAAAAAAAAnE/BG4Wj_kpps8/s1600-h/clip_image003%25255B3%25255D.png) 

## Paramètres de transformation permanents 
Le paradigme de transformation s'étend à la mise à jour des transformations existantes et à l'intégration de ces mises à jour dans les modèles cibles spécifiés. Les paramètres de transformation sont stockés dans un profil de transformation de modèle au sein du modèle. Ce profil peut être configuré pour exécuter automatiquement les transformations avant la génération de code (forward engineering) et/ou après l'ingénierie inverse, afin de mettre à jour les éléments pour un langage cible en fonction des modifications apportées aux éléments du modèle pour un autre langage. 

[![Paramètres de transformation UModel stockés avec le modèle](https://lh4.ggpht.com/-Bx5vm9d3qxs/TzGCgsJoN9I/AAAAAAAAAnc/7ztagxEOGsM/clip_image004_thumb.png?imgmax=800 "UModel Model Transformation Parameters")](http://lh4.ggpht.com/-DHWJQT8EZsI/TzGCgI86yiI/AAAAAAAAAnU/rgnof3YteXc/s1600-h/clip_image004%25255B3%25255D.png) 

Ces paramètres du profil de transformation peuvent également être modifiés à tout moment. 

[![Paramètres du profil de transformation UModel](https://lh6.ggpht.com/-sReAh4mAWY0/TzGChB9cMlI/AAAAAAAAAns/4VUGEppaMGo/clip_image005_thumb.png?imgmax=800 "Transformation Profile Settings")](http://lh3.ggpht.com/-f4vf3DYtxLU/TzGCgzLGIDI/AAAAAAAAAnk/l2ck6BKgv3w/s1600-h/clip_image005%25255B3%25255D.png) 

Cette fonctionnalité permet à UModel d'automatiser une grande partie de la maintenance de plusieurs langages de code source, au fur et à mesure que votre modèle multiplateforme évolue. Si vous souhaitez essayer l'architecture pilotée par les modèles et la transformation de modèles avec UModel 2012, vous pouvez [télécharger une version d'essai gratuite de 30 jours](https://www.altova.com/fr/download/umodel/uml_tool_enterprise.html).
