UML-Designer – Modellieren, Verstehen, Programmieren

UML-Designer in CodeRoom

Objektorientierung verstehen – vom Modell direkt zum Code.

Mit dem UML-Designer entwickeln Schülerinnen, Schüler und Studierende Klassenmodelle visuell, beschreiben Beziehungen verständlich und erzeugen daraus direkt eine Codebasis für Python, Java oder Ruby.

Visueller UML-Designer Geführter Beziehungsassistent PlantUML integriert Direkte Codegenerierung
UML-Designer in CodeRoom mit Klassendiagramm, Beziehungen und PlantUML
Visuelle UML-Modellierung im CodeRoom Designer

Modell und Programm verbinden

UML ist kein Tafelbild, sondern Teil des Programmierprozesses.

Lernende erstellen Klassen, Attribute, Methoden und Beziehungen direkt im visuellen Designer. Parallel bleibt das Modell als PlantUML sichtbar und kann auch dort bearbeitet werden.

Aus dem fertigen Modell erzeugt CodeRoom anschließend eine strukturierte Codebasis. So wird unmittelbar sichtbar, wie aus einem Klassendiagramm Klassen, Vererbung und Objektbeziehungen im Programm entstehen.

  • Klassen, Attribute und Methoden direkt im Diagramm bearbeiten
  • Beziehungen fachlich beschreiben statt Pfeilsyntax auswendig lernen
  • PlantUML und grafisches Modell synchron verwenden
  • Aus dem Entwurf direkt eine programmierbare Codebasis erzeugen

Neuer Beziehungsassistent

Beziehungen verstehen, bevor UML-Symbole ins Spiel kommen.

Statt technische Pfeile und PlantUML-Syntax auswählen zu müssen, werden Lernende Schritt für Schritt durch die fachliche Bedeutung einer Beziehung geführt.

Normale Beziehung

Zwei Klassen stehen fachlich miteinander in Beziehung. Zum Beispiel: Ein Autor schreibt Bücher.

Erst anschließend wird festgelegt, wie viele Objekte beteiligt sein können und ob die Beziehung nur in eine Richtung navigierbar ist.

Ganzes und Teil

Ein Objekt besteht aus Bestandteilen, die fest zu ihm gehören. Zum Beispiel: Eine Bestellung enthält Bestellpositionen.

CodeRoom erzeugt daraus eine Komposition und ordnet Ganzes und Bestandteil automatisch richtig zu.

Ist-ein-Beziehung

Eine Klasse ist eine speziellere Form einer anderen Klasse. Zum Beispiel: Ein Auto ist ein Fahrzeug.

Daraus entsteht eine Vererbungsbeziehung zwischen Unterklasse und Oberklasse.

Schritt für Schritt

Von der fachlichen Aussage zur korrekten UML-Beziehung.

Der Assistent trennt fachliches Verständnis bewusst von technischer Notation. Dadurch können Lernende zuerst über ihr Modell nachdenken und sehen anschließend, wie daraus UML entsteht.

1. Beziehung verstehen

Normale Beziehung, Ganzes und Teil oder Ist-ein-Beziehung auswählen. Die Entscheidung erfolgt anhand verständlicher Beispiele statt anhand von UML-Pfeilen.

2. Klassen verbinden

Die beteiligten Klassen werden direkt ausgewählt. Je nach Beziehung spricht CodeRoom beispielsweise von Ganzem und Bestandteil oder Unterklasse und Oberklasse.

3. Bedeutung präzisieren

Beschriftung, Kardinalitäten und bei normalen Beziehungen optional die Navigierbarkeit werden verständlich ergänzt. Erst danach entsteht automatisch die passende UML-Notation.

UML-Beziehungen und Kardinalitäten im CodeRoom Designer

Kardinalitäten verständlich erfassen

„Wie viele?“ statt kryptischer UML-Eingabe.

Kardinalitäten beschreiben, wie viele Objekte an einer Beziehung beteiligt sein können. CodeRoom unterstützt typische Werte wie 1, 0..1, *, 0..* und 1..*.

Im Assistenten werden diese Angaben inhaltlich eingeordnet. So entsteht beispielsweise aus der Aussage „Eine Bestellung enthält mindestens eine Bestellposition“ automatisch die passende UML-Beziehung.

  • Kardinalitäten direkt an beiden Beziehungsenden
  • Beziehungsbeschriftungen wie „enthält“, „besitzt“ oder „schreibt“
  • Optionale Navigierbarkeit bei normalen Assoziationen
  • PlantUML bleibt im Hintergrund vollständig sichtbar

Verbessertes Diagramm-Rendering

Beziehungen bleiben lesbar – auch bei komplexeren Diagrammen.

Verbindungen werden automatisch an geeigneten Seiten der Klassen angedockt und um andere Klassen herumgeführt. Dadurch bleiben Diagramme auch dann verständlich, wenn mehrere Beziehungen gleichzeitig dargestellt werden.

  • Robustere Auswahl geeigneter Andockpunkte
  • Automatische Umgehung von Klassenboxen
  • Zuverlässige Fallback-Routen bei engen Abständen
  • Beziehungsbeschriftungen bleiben über Linien gut lesbar
  • Verbindungen aktualisieren sich beim Verschieben von Klassen
Übersichtliches Routing von Beziehungen in einem UML-Klassendiagramm
Vom UML-Klassendiagramm zum generierten Programmcode

Vom Modell zur Implementierung

Beziehungen werden im generierten Code sichtbar.

CodeRoom erzeugt nicht nur leere Klassen. Auch ausgewählte UML-Beziehungen und Kardinalitäten können in die erzeugte Programmstruktur übernommen werden.

  • Klassen und Vererbung werden in Programmstrukturen übertragen
  • Beziehungen können als Referenzen oder Collections entstehen
  • Mehrfachbeziehungen werden als Listen bzw. Collections vorbereitet
  • Generierter Code dient als verständlicher Ausgangspunkt für weitere Aufgaben
  • Unterstützung für Python, Java und Ruby

Didaktischer Mehrwert

Modellieren und Programmieren werden zu einem zusammenhängenden Lernprozess.

UML wird nicht isoliert gelernt. Die Lernenden sehen unmittelbar, welche Bedeutung eine Modellierungsentscheidung später im Programm hat.

Strukturen erkennen

Klassen und Verantwortlichkeiten werden sichtbar, bevor sich Lernende mit Implementierungsdetails beschäftigen müssen.

Beziehungen verstehen

Assoziationen, Kompositionen und Vererbungen werden über ihre fachliche Bedeutung eingeführt und erst danach technisch dargestellt.

Auswirkungen im Code sehen

Aus Klassen, Vererbung und Beziehungen entsteht Code, der anschließend ausgeführt, analysiert und weiterentwickelt wird.

Schule und Hochschule

Vom Einstieg in OOP bis zum Software Engineering.

Der UML-Designer eignet sich sowohl für einen ersten strukturierten Zugang zu objektorientierter Programmierung als auch für umfangreichere Modellierungsaufgaben.

Für Schulen

Schülerinnen und Schüler können zuerst fachlich überlegen, welche Objekte es gibt und wie diese zusammengehören. Der Designer übersetzt diese Entscheidungen anschließend in ein korrektes UML-Modell.

  • Geeignet für objektorientierte Programmierung
  • Beziehungen ohne unnötige UML-Syntaxhürde einführen
  • Kardinalitäten anschaulich erarbeiten
  • Modell und Programmcode direkt miteinander vergleichen

Für Hochschulen

In Übungen und Vorlesungen können Modelle gemeinsam entwickelt, über PlantUML präzisiert und anschließend unmittelbar in Programmstrukturen überführt werden.

  • Software Engineering und objektorientierter Entwurf
  • PlantUML und grafische Modellierung parallel nutzen
  • Architekturentscheidungen direkt im Code nachvollziehen
  • Modelle als Startpunkt für Implementierungsaufgaben verwenden

Durchgängiger Workflow

Verstehen → Modellieren → Generieren → Programmieren

CodeRoom verbindet die Modellierungsphase direkt mit der anschließenden Implementierung.

1. Modellieren

Klassen, Attribute, Methoden und fachliche Beziehungen werden visuell aufgebaut.

2. Verstehen

Kardinalitäten, Vererbung und Navigierbarkeit machen sichtbar, wie Objekte strukturell zusammenarbeiten.

3. Programmieren

Aus dem Modell entsteht eine Codebasis, die unmittelbar getestet, ergänzt und weiterentwickelt werden kann.

UML nicht nur zeichnen – verstehen, modellieren und direkt programmieren.

CodeRoom verbindet verständliche UML-Modellierung, PlantUML und Codegenerierung in einer durchgängigen Lernumgebung für Schulen und Hochschulen.