---
title: Modelgestuurde architectuur met Altova UModel
date: 2012-02-14
tags:
  - uml
  - uml-tool
  - umodel
  - v2012
description: UModel ondersteunt Model Driven Architecture (MDA) met platformonafhankelijke modellen en modeltransformatie, waarbij alle relevante modeleringselementen worden omgezet naar en vanuit UML, C#, Visual Basic, Java, databases en XML-schema's
---
Status: #blog

Tags:  #uml #uml-tool #umodel #v2012

Categories: [Altova](/blog/nl/category/altova.md) 
# Modelgestuurde architectuur met Altova UModel

 [UModel](https://www.altova.com/nl/umodel.html) ondersteunt Model Driven Architecture (MDA) met platformonafhankelijke modellen en een functie voor modeltransformatie die alle relevante modeleringselementen omzet naar en vanuit UML, C#, Visual Basic, Java, databases en XML-schema's. **Modeltransformatie** Een Model Driven Architecture-aanpak voor softwareontwikkeling met platformonafhankelijke modellen biedt twee belangrijke voordelen:

- Tijdens de ontwerpfase hoeven ontwikkelaars zich geen zorgen te maken over de details en verschillen tussen verschillende programmeertalen  
    
- Een bestaand UModel-project kan worden omgezet van de ene programmeertaal naar een andere. Zo kan bijvoorbeeld een UML-model voor een C#-applicatie worden omgezet in een Java- of Visual Basic-project

Gebruikers kunnen zelfs modeltransformaties toepassen op projecten die zijn gegenereerd door het omkeren van bestaande broncode. Zo kan bijvoorbeeld een bestaande Java-applicatie worden omgekeerd met UModel en vervolgens worden getransformeerd om Visual Basic-klassen te genereren, en er zijn nog veel meer mogelijkheden. 

[![Modeltransformatie-dialoogvenster in 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) 

## Platformonafhankelijke modellen
Model Driven Architecture (MDA) is een verzameling standaarden en methoden voor het toepassen van UML (Unified Modeling Language), beheerd door de Object Management Group. Binnen Model Driven Architecture is het UML-model van een softwareproject een platformonafhankelijk model (PIM) dat volledig beschreven kan worden zonder rekening te houden met de details van een specifieke programmeertaal. Deze ontwikkelstrategie stelt softwarearchitecten en andere ontwikkelaars in staat zich uitsluitend te concentreren op de logica die vereist is door het betreffende vakgebied, in plaats van op de kenmerken van een specifieke programmeertaal. 

## Type-mapping
Tijdens het modeltransformatieproces wijst UModel gegevenstypen toe van de bron naar de doelomgeving om verschillen tussen de programmeertalen te overbruggen. Met het dialoogvenster "Type-mapping" kunt u de toegewezen typen bekijken of zelfs aanpassen. 

[![Type-mapping voor UML-modeltransformaties](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 voegt automatisch het taalprofiel van de doeltaal toe aan het getransformeerde project. 

## UML-classdiagrammen 
Als onderdeel van de modeltransformatie creëert UModel nieuwe UML-klassen en klassendiagrammen voor het doel, waarbij de klassen en klassendiagrammen uit het oorspronkelijke project worden weergegeven. De onderstaande screenshot toont het "Hierarchy of Account"-diagram voor Visual Basic na modeltransformatie vanuit Java. De nieuwe "Account"-klasse in de nieuwe map met de naam "VB Target" in de modelboom bevat Visual Basic-syntaxis voor alle eigenschappen en bewerkingen. Zo is de nieuwe "balance"-eigenschap bijvoorbeeld gedefinieerd als het Visual Basic "Single"-datetype, terwijl het in Java het "float"-datetype was. Na de transformatie blijft de oorspronkelijke "Account"-klasse voor Java behouden in het model, op dezelfde locatie in de modelboom. Het oorspronkelijke UML-ontwerp voor Java genereert nu code in meerdere programmeertalen: Java en Visual Basic. 

[![UModel-classdiagram en modelboom](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) 

## Aanhoudende transformatieparameters 
Het transformatieparadigma omvat het bijwerken van bestaande transformaties en het integreren van deze updates in de gespecificeerde doelmodellen. De transformatieparameters worden opgeslagen in een Modeltransformatieprofiel in het model. Dit transformatieprofiel kan worden ingesteld om transformaties automatisch uit te voeren vóór het genereren van code (forward engineering), en/of na het omzetten van code naar een model (reverse engineering), om elementen voor één doeltaal bij te werken op basis van wijzigingen in modelonderdelen voor een andere taal. 

[![Modeltransformatieparameters die samen met het model worden opgeslagen](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) 

Deze instellingen voor het transformatieprofiel kunnen op elk moment worden gewijzigd. 

[![Instellingen voor het UModel transformatieprofiel](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) 

Deze functionaliteit stelt UModel in staat om een groot deel van het onderhoud van verschillende programmeertalen te automatiseren, naarmate uw platformonafhankelijke model zich verder ontwikkelt. Als u Model Driven Architecture en modeltransformatie met UModel 2012 wilt uitproberen, kunt u [een gratis proefversie van 30 dagen downloaden](https://www.altova.com/nl/download/umodel/uml_tool_enterprise.html).
