Zum Inhalt springen
YellowBlue
IT-Grundlagen5 Min. Lesezeit

UML-Grundlagen: Klassendiagramm und Use Cases

Kurzantwort

UML ist eine standardisierte grafische Sprache, um Software zu modellieren, bevor sie programmiert wird. Am wichtigsten für die Ausbildung sind das Klassendiagramm, das den statischen Aufbau aus Klassen, Attributen und Beziehungen zeigt, und das Anwendungsfalldiagramm, das aus Nutzersicht darstellt, wer welche Funktionen nutzt. UML ist sprachunabhängig und dient der Verständigung im Team.

Teil des Lernpfads Programmieren und Softwareentwicklung · Schritt 11 von 18

Zuletzt aktualisiert am

Bevor ein Haus gebaut wird, gibt es einen Bauplan. Für Software ist UML dieser Bauplan: eine Zeichnung, die zeigt, wie das System aufgebaut ist und wer es wie nutzt – verständlich für alle im Team, egal in welcher Programmiersprache später gearbeitet wird.

Was ist UML?

UML (Unified Modeling Language) ist eine standardisierte grafische Sprache zur Modellierung von Software. „Standardisiert" heißt: Die Symbole bedeuten überall dasselbe, sodass ein Diagramm ohne Erklärung lesbar ist.

UML kennt viele Diagrammtypen. Für die Ausbildung sind zwei zentral: das Klassendiagramm und das Anwendungsfalldiagramm.

Das Klassendiagramm

Es zeigt den statischen Aufbau: aus welchen Klassen das System besteht und wie sie zusammenhängen. Jede Klasse ist ein Kasten mit drei Feldern:

┌─────────────────────┐
│      Kunde          │   ← Name
├─────────────────────┤
│ - name: String      │   ← Attribute (Daten)
│ - kundennummer: int │
├─────────────────────┤
│ + bestellen()       │   ← Methoden (Verhalten)
│ + adresseAendern()  │
└─────────────────────┘

Das - bedeutet privat (nur innerhalb der Klasse sichtbar), das + öffentlich (von außen nutzbar) – das ist die Kapselung aus der objektorientierten Programmierung.

Beziehungen und Multiplizität

Zwischen Klassen bestehen Verbindungen, beschriftet mit der Multiplizität (wie viele hängen zusammen):

NotationBedeutung
1genau eins
0..1keins oder eins
1..*mindestens eins
*beliebig viele

Beispiel: Ein Kunde hat 1..* Bestellungen, jede Bestellung gehört zu genau 1 Kunde.

UML-Verbindungstypen: Assoziation, Aggregation, Komposition, Vererbung

Neben der einfachen Verbindung kennt UML mehrere Beziehungstypen, die du an der Linie erkennst:

VerbindungstypDarstellungBedeutungBeispiel
Assoziationeinfache LinieKlassen kennen einanderKunde – Bestellung
AggregationLinie mit leerer Raute am GanzenTeil-Ganzes, das Teil kann allein existierenAbteilung – Mitarbeiter
KompositionLinie mit gefüllter Raute am GanzenTeil-Ganzes, das Teil existiert nicht ohne das GanzeRechnung – Rechnungsposition
Vererbung (Generalisierung)Linie mit leerem Dreieck an der Oberklasse„ist ein“-BeziehungAuto – Fahrzeug
Abhängigkeitgestrichelter Pfeileine Klasse nutzt eine andereBericht – Drucker

Merke: leere Raute = lose Verbindung, gefüllte Raute = feste Verbindung. Wird bei der Komposition das Ganze gelöscht, verschwinden auch seine Teile. Mehr zur Vererbung steht im Beitrag Vererbung und Polymorphie.

Das Anwendungsfalldiagramm

Es zeigt aus Nutzersicht, wer welche Funktionen nutzt – ohne jede technische Details. Ausführlich mit Beispiel, include und extend erklärt es der Beitrag Anwendungsfalldiagramm erklärt: Use Cases.

  • Akteur (Strichmännchen): eine Rolle, die mit dem System arbeitet, etwa „Kunde" oder „Administrator".
  • Anwendungsfall (Ellipse): eine Funktion, etwa „Ware bestellen".
  • Linien verbinden, wer was tut.

Wozu der Aufwand?

Selbstkontrolle

Selbstkontrolle

In einem Klassendiagramm steht vor einem Attribut ein Minuszeichen. Was bedeutet das?

Häufige Fragen

Muss ich UML-Diagramme auswendig können?

Die beiden wichtigsten, Klassen- und Anwendungsfalldiagramm, solltest du lesen und in Grundzügen selbst zeichnen können, weil sie in Prüfungen und in der Projektdokumentation vorkommen. Die genaue Notation aller vierzehn Diagrammtypen muss niemand auswendig können. Wichtiger ist, zu verstehen, welches Diagramm welche Frage beantwortet.

Was ist der Unterschied zwischen Assoziation, Aggregation und Komposition?

Alle drei sind Beziehungen zwischen Klassen mit zunehmender Bindung. Die Assoziation ist eine einfache Verbindung. Die Aggregation ist eine Teil-Ganzes-Beziehung, bei der das Teil auch allein existieren kann, etwa Student und Hochschule. Die Komposition ist eine stärkere Form, bei der das Teil ohne das Ganze nicht existiert, etwa Rechnung und Rechnungsposition. In der Prüfung reicht meist, die Aggregation von der Komposition unterscheiden zu können.

Wann nutze ich welches Diagramm?

Das Anwendungsfalldiagramm steht am Anfang, wenn es darum geht, mit dem Kunden zu klären, was das System aus Nutzersicht leisten soll. Das Klassendiagramm kommt später im Entwurf, wenn der innere Aufbau festgelegt wird. Grob gesagt: erst das fachliche Was, dann das technische Wie.

Brauche ich spezielle Software für UML?

Für die Prüfung reicht Papier und Bleistift, und auch im Betrieb entstehen viele Skizzen zunächst am Whiteboard. Für saubere, teilbare Diagramme gibt es Werkzeuge, von einfachen Zeichenprogrammen bis zu textbasierten Generatoren, die aus einer kurzen Beschreibung ein Diagramm erzeugen. Das Werkzeug ist zweitrangig – entscheidend ist, dass die Notation stimmt.

Weiterlesen: Anwendungsfalldiagramm erklärt: Use Cases · ER-Modell erklärt: Entity-Relationship-Modell · Vererbung und Polymorphie in der OOP · Softwaretests: von Unit-Test bis Abnahme · Lastenheft und Pflichtenheft: der Unterschied

Das Wichtigste in Kürze

  • UML ist eine standardisierte, sprachunabhängige grafische Modellierungssprache.
  • Das Klassendiagramm zeigt den statischen Aufbau: Klassen, Attribute, Methoden, Beziehungen.
  • Sichtbarkeit: - privat, + öffentlich; Multiplizität gibt die Anzahl an.
  • Das Anwendungsfalldiagramm zeigt aus Nutzersicht, wer welche Funktion nutzt.
  • Ein Akteur ist eine Rolle, keine konkrete Person.

Verwandte Beiträge

IT-Grundlagen5 Min. Lesezeit

Anwendungsfalldiagramm erklärt: Use Cases

Das UML-Anwendungsfalldiagramm erklärt: Akteure, Use Cases, Systemgrenze sowie include und extend – mit Beispiel und Prüfungstipps für die Ausbildung.

IT-Grundlagen4 Min. Lesezeit

Softwaretests: von Unit-Test bis Abnahme

Warum getestet wird, welche Teststufen es gibt und was Black-Box von White-Box unterscheidet – die Grundlagen des Softwaretestens mit Prüfungsbezug.

IT-Grundlagen4 Min. Lesezeit

Fehlerbehandlung mit Exceptions

Wie Programme mit Fehlern umgehen, ohne abzustürzen: try-catch-finally, was eine Exception ist und warum man erwartbare Fehler gezielt behandelt.