Softwareentwicklung · Anwendungsentwicklung
UML-Klassendiagramme lesen und modellieren
Ein UML-Klassendiagramm zeigt die statische Struktur einer Software: Klassen, deren Eigenschaften und Operationen sowie Beziehungen zwischen den Klassen. Prüfungsaufgaben testen oft Notation und fachlich passende Multiplizitäten.
Die drei Bereiche einer Klasse
Ein Klassenkasten enthält gewöhnlich oben den Klassennamen, in der Mitte Attribute und unten Operationen. Attribute beschreiben Zustand, Operationen Verhalten.
Vor einem Element kennzeichnet + die öffentliche, − die private und # die geschützte Sichtbarkeit. Nach einem Doppelpunkt folgt der Datentyp.
- − preis: Decimal ist ein privates Attribut
- + speichern(): Boolean ist eine öffentliche Operation
Beziehungen und Multiplizitäten
Eine einfache Linie stellt eine Assoziation dar. Die Multiplizität am Ende sagt aus, wie viele Instanzen dieser Klasse zu einer Instanz der gegenüberliegenden Klasse gehören dürfen.
Eine ausgefüllte Raute steht für Komposition mit starker Lebenszyklusbindung. Ein hohles Dreieck zeigt bei Generalisierung zur Oberklasse.
- 1 = genau eine
- 0..1 = optional, höchstens eine
- 0..* = keine bis beliebig viele
- 1..* = mindestens eine
Durchgerechnetes Beispiel
Beispiel: Kunde und Bestellung
Jede Bestellung gehört genau einem Kunden. Ein Kunde kann noch keine oder bereits viele Bestellungen haben.
- 1 Am Ende Kunde steht die Multiplizität 1.
- 2 Am Ende Bestellung steht die Multiplizität 0..*.
- 3 Beide Klassen werden durch eine Assoziation verbunden.
Ergebnis: Die Beziehung lautet: Kunde 1 — 0..* Bestellung.
Direkt anwenden
7 Übungen mit Lösungen
Beantworte die Aufgabe zuerst selbst. Öffne danach die Lösung, um Antwort und Rechenweg zu vergleichen.
-
Aufgabe 1
AnwendungsentwicklungEin Patient kann mehrere Termine haben, jeder Termin gehört genau zu einem Patienten. Welche Kardinalität beschreibt die Beziehung?
- A1:1
- Bn:m ohne Zwischentabelle
- C0:0
- D1:n
Lösung anzeigen Lösung ausblenden
Richtige Antwort: 1:n
Von Patient zu Termin liegt eine 1:n-Beziehung vor; jeder einzelne Termin verweist auf genau einen Patienten.
-
Aufgabe 2
AnwendungsentwicklungEin Kunde kann keine oder viele Bestellungen haben; jede Bestellung gehört genau einem Kunden. Welche Multiplizitäten passen?
- AKunde 1 — 0..* Bestellung
- BKunde 0..* — 0..* Bestellung
- CKunde 1 — 1 Bestellung
- DKunde 0..1 — 1 Bestellung
Lösung anzeigen Lösung ausblenden
Richtige Antwort: Kunde 1 — 0..* Bestellung
Am Bestellungsende steht 0..*, am Kundenende 1: Ein Kunde kennt viele Bestellungen, jede Bestellung genau einen Kunden.
-
Aufgabe 3
AnwendungsentwicklungWelches UML-Symbol kennzeichnet eine Komposition am Ende des Ganzen?
- AAusgefüllte Raute
- BLeeres Dreieck
- CGestrichelter Kreis
- DDoppelpfeil
Lösung anzeigen Lösung ausblenden
Richtige Antwort: Ausgefüllte Raute
Eine Komposition wird durch eine ausgefüllte Raute an der Seite des Ganzen dargestellt.
-
Aufgabe 4
AnwendungsentwicklungWohin zeigt bei einer Generalisierung die Linie mit hohlem Dreieck?
- AZur Oberklasse
- BZur Unterklasse
- CZum Attribut
- DZur Multiplizität
Lösung anzeigen Lösung ausblenden
Richtige Antwort: Zur Oberklasse
Das hohle Dreieck zeigt von der spezialisierten Unterklasse zur allgemeineren Oberklasse.
-
Aufgabe 5
AnwendungsentwicklungWelches Sichtbarkeitssymbol steht in UML üblicherweise für ein privates Attribut?
- A−
- B+
- C#
- D~
Lösung anzeigen Lösung ausblenden
Richtige Antwort: −
Das Minuszeichen kennzeichnet private Sichtbarkeit. Plus steht für public, Raute für protected und Tilde für package.
-
Aufgabe 6
AnwendungsentwicklungWelche Schreibweise beschreibt eine öffentliche Methode ohne Parameter mit dem Rückgabetyp Boolean?
- A+ istAktiv(): Boolean
- B− istAktiv: Boolean()
- CBoolean + istAktiv
- D# Boolean(istAktiv)
Lösung anzeigen Lösung ausblenden
Richtige Antwort: + istAktiv(): Boolean
Eine öffentliche Operation beginnt mit +. Hinter der Parameterliste folgt nach einem Doppelpunkt der Rückgabetyp.
-
Aufgabe 7
AnwendungsentwicklungWas beschreibt die Multiplizität 1..* an einem Assoziationsende?
- AGenau eine Instanz
- BKeine oder eine Instanz
- CEine oder mehrere Instanzen
- DGenau zwei Instanzen
Lösung anzeigen Lösung ausblenden
Richtige Antwort: Eine oder mehrere Instanzen
1..* bedeutet mindestens eine Instanz, nach oben ohne feste Grenze: also eine oder mehrere.
Kurz erklärt
Häufige Fragen
Auf welcher Seite steht eine Multiplizität?
Sie steht an dem Assoziationsende, dessen erlaubte Anzahl sie für jeweils eine Instanz der Gegenseite beschreibt.
Was ist der Unterschied zwischen Aggregation und Komposition?
Die Komposition modelliert eine starke Teil-Ganzes-Beziehung mit gemeinsamer Lebensdauer. Die Aggregation ist eine schwächere Teil-Ganzes-Beziehung.
Wohin zeigt der Vererbungspfeil?
Das hohle Dreieck zeigt von der spezialisierteren Unterklasse zur allgemeineren Oberklasse.
Fachliche Referenz: IHK-Beispielaufgabe IT-Abschlussprüfung Teil 1. Die Erklärungen und Aufgaben auf dieser Seite sind eigenständig formuliert.
Weiterlernen