---
title: Modellbasierte Architektur mit Altova UModel
date: 2012-02-14
tags:
  - uml
  - uml-tool
  - umodel
  - v2012
description: UModel unterstützt die Model-Driven-Architecture (MDA) mit plattformunabhängigen Modellen und Modelltransformationen, die alle relevanten Modellierungselemente in und aus UML, C#, Visual Basic, Java, Datenbanken und XML-Schemas umwandeln
---
Status: #blog

Tags:  #uml #uml-tool #umodel #v2012

Categories: [Altova](/blog/de/category/altova.md) 
# Modellbasierte Architektur mit Altova UModel

 [UModel](https://www.altova.com/de/umodel.html) unterstützt die Model-Driven-Architecture (MDA) mit plattformunabhängigen Modellen und einer Funktion zur Modelltransformation, die alle relevanten Modellierungselemente in und aus UML, C#, Visual Basic, Java, Datenbanken und XML-Schemas umwandelt. **Modelltransformation** Ein Ansatz der Softwareentwicklung basierend auf der Model-Driven-Architecture mit plattformunabhängigen Modellen bietet zwei Hauptvorteile:

- Während der Designphase müssen Entwickler sich keine Gedanken über die Details und Unterschiede zwischen verschiedenen Programmiersprachen machen  
    
- Ein bestehendes UModel-Projekt kann von einer Quellsprache in eine andere umgewandelt werden. Beispielsweise kann ein UML-Modell für eine C#-Anwendung in ein Java- oder Visual-Basic-Projekt umgewandelt werden

Benutzer können sogar Modelltransformationen auf Projekte anwenden, die aus bestehendem Quellcode rückentwickelt wurden. Beispielsweise kann eine bestehende Java-Anwendung mit UModel rückentwickelt und anschließend in Visual Basic-Klassen transformiert werden, und es stehen viele weitere Möglichkeiten zur Verfügung. 

[![Dialog zur Modelltransformation 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) 

## Plattformunabhängige Modelle
Bei MDA (Model Driven Architecture) handelt es sich um eine Gruppe von Standards und Methoden zur Anwendung des UML-Standards, der von der OMG (Object Management Group) gepflegt wird. In MDA wird das UML-Modell eines Software-Projekts als plattformunabhängiges Modell (PIM) behandelt, das vollständig beschrieben werden kann, ohne dass sich der Designer um die Details der jeweiligen Programmiersprache kümmern muss. Dank dieser Strategie können sich Software-Architekten und Entwickler ausschließlich auf die Logik des jeweiligen Themenbereichs konzentrieren, ohne die Eigenheiten von Programmiersprachen berücksichtigen zu müssen. 

## Typzuordnung
Während der Modelltransformation ordnet UModel Datentypen vom Quellmodell auf das Zielmodell zu, um Unterschiede zwischen den Sprachen zu berücksichtigen. Das Dialogfenster "Typzuordnung" ermöglicht es Ihnen, die Typzuordnungen einzusehen oder sogar zu bearbeiten. 

[![Typzuordnung für die Transformation von UML-Modellen](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 fügt dem transformierten Projekt außerdem automatisch das Sprachprofil für die Zielsprache hinzu. 

## UML-Klassendiagramme 
Im Rahmen der Modelltransformation erstellt UModel neue UML-Klassen und Klassendiagramme für das Zielsystem, wobei die Klassen und Klassendiagramme des ursprünglichen Projekts berücksichtigt werden. Der Screenshot unten zeigt das Diagramm "Hierarchie der Konten" für Visual Basic nach der Modelltransformation von Java. Die neue Klasse "Account" im neuen Ordner "VB Target" im Modellbaum enthält die Visual-Basic-Syntax für alle Eigenschaften und Operationen. Beispielsweise ist die neue Eigenschaft "Saldo" als Datentyp "Single" in Visual Basic definiert, während sie in Java als "float" definiert war. Nach der Transformation wird die ursprüngliche Klasse "Account" für Java im Modell an ihrem ursprünglichen Speicherort im Modellbaum beibehalten. Das ursprüngliche UML-Design für Java generiert nun Code in mehreren Quellsprachen: Java und Visual Basic. 

[![UModel-Klassendiagramm und Modellbaum](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) 

## Permanente Transformationsparameter 
Das Transformationsparadigma umfasst die Aktualisierung bestehender Transformationen und die Integration dieser Aktualisierungen in die vorgegebenen Zielmodelle. Die Transformationsparameter werden in einem Modelltransformationsprofil innerhalb des Modells gespeichert. Dieses Transformationsprofil kann so konfiguriert werden, dass Transformationen automatisch vor der Codeerstellung (forward engineering) und/oder nach der Codeanalyse (reverse engineering) ausgeführt werden, um Elemente für eine bestimmte Zielsprache basierend auf Änderungen an Modellelementen für eine andere Sprache zu aktualisieren. 

[![Die Transformationsparameter von UModel werden zusammen mit dem Modell gespeichert](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) 

Diese Einstellungen für das Transformationsprofil können jederzeit geändert werden. 

[![Einstellungen für das UModel-Transformationsprofil](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) 

Diese Funktion ermöglicht es UModel, einen Großteil der Wartung für verschiedene Programmiersprachen zu automatisieren, während Ihr plattformübergreifendes Modell weiterentwickelt wird. Wenn Sie die Model-Driven-Architecture und die Modelltransformation mit UModel 2012 ausprobieren möchten, können Sie [eine kostenlose 30-Tage-Testversion herunterladen](https://www.altova.com/de/download/umodel/uml_tool_enterprise.html).
