Übung 2.3: PiggyBank-Domänenmodelldiagramm erstellen

In der vorliegenden Übung werden Sie den Funktionsbereich 'Account Operations (Kontooperationen) sowie das PiggyBank-Domänenmodelldiagramm erstellen. Das Domänenmodelldiagramm beschreibt die Domäne des PiggyBank-Systems. Hierzu wird ein Klassendiagramm verwendet, das die wichtigsten Klassen des Systems darstellt.

Das Analysemodell basiert auf dem Funktionsbereich 'Account Operations', der in Modul 1 ermittelt wurde. Das Paket 'Account Operations' umfasst das Unterpaket 'Account Operations Analysis Elements' (Analyseelemente der Kontooperationen) sowie die Anwendungsfallrealisierungen für Display Balance, Transfer Money und Cash Check. Das Unterpaket 'Account Operations Analysis Elements' umfasst die Analyseelemente für Rational Unified Process® (RUP®), die bei der Modellierung der statischen Struktur des Modells erstellt werden. Das Paket umfasst außerdem das Analyseelementdiagramm für Kontooperationen, das als Arbeitsbereich zur Erstellung der Diagramme auf Domänenebene eingesetzt wird.

Das Domänendiagramm ist ein spezieller Typ eines Klassendiagramms, in dem die Hauptklassen des PiggyBank-Online-Banking-Systems dargestellt werden. Das einfache Klassendiagramm zeigt die Hauptklassen, die Sie in der vorangegangenen Übung ermittelt haben, sowie die Attribute dieser Klassen und alle Beziehungen zwischen den Klassen. Das Domänenmodell beschreibt nur die Domäne des Systems und nicht die Details der Anwendung selbst. Hierzu werden im Domänenmodell ausschließlich die Entitätsklassen des Systems und deren Beziehungen zueinander modelliert. Das Domänendiagramm wird als statisch bezeichnet, da es lediglich die Struktur des Systems nachbildet. In dieser Übung werden Sie die Entitätsklassen erstellen und deren Attribute modellieren. Sie ermitteln und modellieren die Operationen aller Entitäten beim Erstellen des Ablaufdiagramms der verschiedenen Anwendungsfälle.

Das Modellieren ist ein iterativer Prozess. Ihr Domänenmodell wird kontinuierlich mit den Informationen, die zu dem zu modellierenden System gefunden werden, abgeändert. Im vorliegenden Lernprogramm werden Sie das grundlegende Domänendiagramm erstellen und alle Attribute der verwendeten Entitäten modellieren.

Funktionsbereich erstellen

Da das Analysemodell auf dem Anwendungsfallmodell aufbaut, werden die PiggyBank-Analyseelemente und die Anwendungsfallrealisierungen im Funktionsbereich 'Account Operations' gespeichert. Im Stammelement des Modells muss deswegen ein neuer Funktionsbereich 'Account Operations' erstellt werden.

Gehen Sie wie folgt vor, um einen Funktionsbereich 'Account Operations' zu erstellen:
  1. Erweitern Sie in der Modellexplorersicht zuerst das Element für das Analysemodell und dann das Element für «ModelLibrary» Analysis Building Blocks. Klicken Sie anschließend mit der rechten Maustaste auf das Paket ${functional.area} und dann auf Kopieren.
  2. Klicken Sie mit der rechten Maustaste auf das Stammelement für das Paket Analysemodell und dann auf Einfügen.
  3. Klicken Sie mit der rechten Maustaste auf ${functional.area} und dann auf Suchen/Ersetzen.
  4. Geben Sie im Feld Zu suchendes Element die Zeichenfolge ${functional.area} ein, und klicken Sie dann auf Ersetzen.
  5. Geben Sie im Feld Ersetzen durch die Zeichenfolge Account Operations ein, und klicken Sie dann auf OK.

Gehen Sie wie folgt vor, um die Anwendungsfallrealisierung für Display Balance zum Funktionsbereich 'Account Operations' hinzuzufügen:
  1. Erweitern Sie in der Modellexplorersicht zuerst das Element für das Analysemodell und dann das Element für «ModelLibrary» Analysis Building Blocks. Klicken Sie anschließend mit der rechten Maustaste auf das Paket ${use.case} und dann auf Kopieren.
  2. Klicken Sie mit der rechten Maustaste auf das Paket Account Operations und dann auf Einfügen.
  3. Klicken Sie mit der rechten Maustaste auf ${use.case} und anschließend auf Suchen/Ersetzen.
  4. Geben Sie im Feld Zu suchendes Element die Zeichenfolge ${use.case} ein, und klicken Sie dann auf Ersetzen.
  5. Geben Sie im Feld Ersetzen durch die Zeichenfolge Display Balance ein, und klicken Sie dann auf OK.
Gehen Sie wie folgt vor, um die Anwendungsfallrealisierung für Transfer Money zum Funktionsbereich 'Account Operations' hinzuzufügen:
  1. Erweitern Sie in der Modellexplorersicht zuerst das Element für das Analysemodell und dann das Element für «ModelLibrary» Analysis Building Blocks. Klicken Sie anschließend mit der rechten Maustaste auf das Paket ${use.case} und dann auf Kopieren.
  2. Klicken Sie mit der rechten Maustaste auf das Paket Account Operations und dann auf Einfügen.
  3. Klicken Sie mit der rechten Maustaste auf ${use.case} und anschließend auf Suchen/Ersetzen.
  4. Geben Sie im Feld Zu suchendes Element die Zeichenfolge ${use.case} ein, und klicken Sie dann auf Ersetzen.
  5. Geben Sie im Feld Ersetzen durch die Zeichenfolge Transfer Money ein, und klicken Sie dann auf OK.
Gehen Sie wie folgt vor, um die Anwendungsfallrealisierung für Cash Check zum Funktionsbereich 'Account Operations' hinzuzufügen:
  1. Erweitern Sie in der Modellexplorersicht zuerst das Element für das Analysemodell und dann das Element für «ModelLibrary» Analysis Building Blocks. Klicken Sie anschließend mit der rechten Maustaste auf das Paket ${use.case} und dann auf Kopieren.
  2. Klicken Sie mit der rechten Maustaste auf das Paket Account Operations und dann auf Einfügen.
  3. Klicken Sie mit der rechten Maustaste auf ${use.case} und anschließend auf Suchen/Ersetzen.
  4. Geben Sie im Feld Zu suchendes Element die Zeichenfolge ${use.case} ein, und klicken Sie dann auf Ersetzen.
  5. Geben Sie im Feld Ersetzen durch die Zeichenfolge Cash Check ein, und klicken Sie dann auf OK.

Der Funktionsbereich 'Account Operations' enthält die Anwendungsfallrealisierungen und Analyseelemente des PiggyBank-Analysemodells. Das Unterpaket 'Account Operations Analysis Elements' umfasst alle Analyseelemente des Projekts. Sie können das Klassendiagramm für die Analyseklassen der Kontooperationen als Arbeitsbereich zum Erstellen der PiggyBank-Domänendiagramme benutzen.

Domänenmodelldiagramm erstellen

Das Domänenmodelldiagramm wird im Funktionsbereich 'Account Operations' erstellt. Anschließend werden die dargestellten Modellelemente in das Paket '«perspective» Overviews' der Analysemodellschablone kopiert. Das Diagramm für 'Account Operations Analysis Elements' stellt den Arbeitsbereich zum Erstellen von Diagrammen dar, während das Paket '«perspective» Overviews' nur die endgültige Kopie der Diagramme, nicht jedoch der Klassen enthält.

Gehen Sie wie folgt vor, um ein Domänendiagramm zu erstellen:
  1. Erweitern Sie in der Modellexplorersicht das Element für das Analysemodell und dann das Element für Account Operations (Kontooperationen).
  2. Doppelklicken Sie im Paket für Account Operations Analysis Elements (Analyseelemente der Kontooperationen) auf Account Operations Analysis Classes (Analyseklassen für Kontooperationen).

Sie haben nun das Diagramm der PiggyBank-Analyseelemente erstellt. Dieses Diagramm stellt einen Arbeitsbereich dar, in dem Sie Klassen innerhalb der Struktur des Funktionsbereichs erstellen und darstellen können. In diesem Paket sollten Sie die Klassendiagramme auf Domänenebene erstellen und anschließend die vollständigen Diagramme ins Paket '«perspective» Overviews' ziehen, um das Modell zu vervollständigen.

Klasse 'Account' erstellen

Die Klasse 'Account' (Konto) stellt das PiggyBank-Benutzerkonto dar. Die Klasse 'Account' dient zur Beschreibung der funktionalen Tasks, die dieser zugeordnet sind, z. B. getBalance und findForCustomer.

Gehen Sie wie folgt vor, um die Klasse 'Account' zu modellieren:
  1. Doppelklicken Sie in der Palette auf Klasse, und ordnen Sie der Klasse den Namen Account zu.
  2. Klicken Sie im Diagrammeditor auf die Klasse Account und dann in der Eigenschaftensicht auf der Seite Stereotype auf Stereotype hinzufügen.
  3. Wählen Sie im Fenster Stereotype anwenden das Kontrollkästchen Entität aus, und klicken Sie dann auf OK.
  4. Klicken Sie im Diagrammeditor mit der rechten Maustaste auf die Klasse Account und dann auf UML hinzufügen > Attribut. Ordnen Sie dem Attribut anschließend den Namen balance zu.
  5. Klicken Sie im Diagrammeditor in der Klasse Account auf das Attribut balance und in der Eigenschaftensicht auf der Seite Allgemein auf Typ auswählen.
  6. Erweitern Sie im Fenster Element auswählen das Element für UML2, klicken Sie dann auf Integer und anschließend auf OK.
  7. Klicken Sie im Diagrammeditor mit der rechten Maustaste auf die Klasse Account und dann auf UML hinzufügen > Attribut. Ordnen Sie dem Attribut anschließend den Namen number zu.
  8. Klicken Sie im Diagrammeditor in der Klasse Account auf das Attribut number.
  9. Klicken Sie in der Eigenschaftensicht auf der Seite Allgemein auf Typ auswählen.
  10. Erweitern Sie im Fenster Element auswählen das Element für UML2, klicken Sie dann auf String und anschließend auf OK.
Sie haben nun die Klasse Account modelliert.
Hinweis: Die Analysemodellschablone umfasst leere Klassen, die anhand der RUP-Stereotype für Analyseelemente in Gruppen eingeteilt wurden. Anstatt neue Klassen zu erstellen und Stereotype auf diese anzuwenden, können Sie auch die Analyseelemente in Ihren Funktionsbereich kopieren und diese dann umbenennen. Zur Verwendung der vorhandenen RUP-Analyseelemente müssen Sie in der Modellexplorersicht im Paket «ModelLibrary» building Blocks mit der rechten Maustaste auf ein Analysemodell und dann auf Kopieren klicken. Klicken Sie anschließend mit der rechten Maustaste auf den Funktionsbereich und dann auf Einfügen.

Klasse 'Transfer' erstellen

Die Klasse 'Transfer' (Überweisung) dient zur Beschreibung der Transaktion, die ausgeführt wird, wenn ein Kunde Geld von einem Konto auf ein anderes überweist. Die Klasse 'Transfer' verfügt über zwei Assoziationen zur Klasse 'Account'.

Gehen Sie wie folgt vor, um die Klasse 'Transfer' zu modellieren:
  1. Doppelklicken Sie in der Palette auf Klasse, und ordnen Sie der Klasse den Namen Transfer zu.
  2. Klicken Sie im Diagrammeditor auf die Klasse Transfer und dann in der Eigenschaftensicht auf der Seite Stereotype auf Stereotype hinzufügen.
  3. Wählen Sie im Fenster Stereotype anwenden das Kontrollkästchen Entität aus, und klicken Sie dann auf OK.
  4. Klicken Sie im Diagrammeditor mit der rechten Maustaste auf die Klasse Transfer und dann auf UML hinzufügen > Attribut. Ordnen Sie dem Attribut anschließend den Namen amount zu.
  5. Klicken Sie im Diagrammeditor in der Klasse Transfer auf das Attribut amount.
  6. Klicken Sie in der Eigenschaftensicht auf der Seite Allgemein auf Typ auswählen.
  7. Erweitern Sie im Fenster Element auswählen das Element für UML2, klicken Sie dann auf Integer und anschließend auf OK.

Sie haben die Klasse 'Transfer' modelliert.

Beziehungen zwischen 'Transfer' und 'Account' modellieren

Die Klasse 'Transfer' ist von der Klasse 'Account' abhängig.

Gehen Sie wie folgt vor, um die Beziehungen zwischen 'Transfer' und 'Account' zu modellieren:
  1. Klicken Sie in der Palette neben Abhängigkeit auf den Abwärtspfeil und anschließend auf Verwendung.
  2. Positionieren Sie den Cursor im Diagrammeditor auf der Klasse Transfer, und ziehen Sie diese auf die Klasse Account.

Sie haben nun die Beziehungen der Klasse 'Transfer' modelliert. Ihr Diagramm wird jetzt wie in der folgenden Abbildung aufgeführt dargestellt:

Die Beziehungen zwischen 'Account' und 'Transfer'.

Klasse 'Check' erstellen

Die Klasse 'Check' (Scheck) dient zur Beschreibung eines Schecks, der bei der PiggyBank eingelöst wird.

Gehen Sie wie folgt vor, um die Klasse 'Check' zu modellieren:
  1. Doppelklicken Sie in der Palette auf Klasse, und ordnen Sie der Klasse den Namen Check zu.
  2. Klicken Sie im Diagrammeditor auf die Klasse Check.
  3. Klicken Sie in der Eigenschaftensicht auf der Seite Stereotype auf Stereotype hinzufügen.
  4. Wählen Sie im Fenster Stereotype anwenden das Kontrollkästchen Entität aus, und klicken Sie dann auf OK.
  5. Klicken Sie im Diagrammeditor mit der rechten Maustaste auf die Klasse Check und dann auf UML hinzufügen > Attribut. Ordnen Sie dem Attribut anschließend den Namen amount zu.
  6. Klicken Sie im Diagrammeditor in der Klasse Check auf das Attribut amount.
  7. Klicken Sie in der Eigenschaftensicht auf der Seite Allgemein auf Typ auswählen.
  8. Erweitern Sie im Fenster Element auswählen das Element für UML2, klicken Sie dann auf Integer und anschließend auf OK.
  9. Klicken Sie im Diagrammeditor in der Klasse Check auf das Attribut amount.
  10. Klicken Sie in der Eigenschaftensicht auf der Seite Allgemein neben Sichtbarkeit auf öffentlich.
  11. Klicken Sie im Diagrammeditor mit der rechten Maustaste auf die Klasse Check und dann auf UML hinzufügen > Attribut. Ordnen Sie dem Attribut anschließend den Namen reference zu.
  12. Klicken Sie im Diagrammeditor in der Klasse Check auf das Attribut reference.
  13. Klicken Sie in der Eigenschaftensicht auf der Seite Allgemein auf Typ auswählen.
  14. Erweitern Sie im Fenster Element auswählen das Element für UML2, klicken Sie dann auf String und anschließend auf OK.
  15. Klicken Sie im Diagrammeditor in der Klasse Check auf das Attribut reference.
  16. Klicken Sie in der Eigenschaftensicht auf der Seite Allgemein neben Sichtbarkeit auf öffentlich.

Sie haben die Klasse 'Check' modelliert. Ihr Diagramm wird jetzt wie in der folgenden Abbildung aufgeführt dargestellt:

Die Klasse 'Check' mit den beiden Attributen 'amount' und 'reference'.

Beziehungen zwischen 'Check' und 'Account' modellieren

Die Klasse 'Check' ist von der Klasse 'Account' abhängig.

Gehen Sie wie folgt vor, um die Beziehungen zwischen 'Check' und 'Account' zu modellieren:
  1. Klicken Sie in der Palette auf Verwendung.
  2. Positionieren Sie den Cursor im Diagrammeditor auf der Klasse Check, und ziehen Sie diese auf die Klasse Account.

Sie haben nun die Beziehungen der Klasse Check modelliert.

Klasse 'Customer' erstellen

Die Klasse 'Customer' (Kunde) dient zur Beschreibung eines PiggyBank-Kunden.

Gehen Sie wie folgt vor, um die Klasse 'Customer' zu modellieren:
  1. Doppelklicken Sie in der Palette auf Klasse, und ordnen Sie der Klasse den Namen Customer zu.
  2. Klicken Sie im Diagrammeditor auf die Klasse Customer.
  3. Klicken Sie in der Eigenschaftensicht auf der Seite Stereotype auf Stereotype hinzufügen.
  4. Wählen Sie im Fenster Stereotype anwenden das Kontrollkästchen Entität aus, und klicken Sie dann auf OK.
  5. Klicken Sie im Diagrammeditor mit der rechten Maustaste auf die Klasse Customer und dann auf UML hinzufügen > Attribut. Ordnen Sie dem Attribut anschließend den Namen loginId zu.
  6. Klicken Sie im Diagrammeditor in der Klasse Customer auf das Attribut loginId.
  7. Klicken Sie in der Eigenschaftensicht auf der Seite Allgemein auf Typ auswählen.
  8. Erweitern Sie im Fenster Element auswählen das Element für UML2, klicken Sie dann auf String und anschließend auf OK.
  9. Klicken Sie im Diagrammeditor in der Klasse Check auf das Attribut loginId.
  10. Klicken Sie in der Eigenschaftensicht auf der Seite Allgemein neben Sichtbarkeit auf öffentlich.
  11. Klicken Sie im Diagrammeditor mit der rechten Maustaste auf die Klasse Check und dann auf UML hinzufügen > Attribut. Ordnen Sie dem Attribut anschließend den Namen name zu.
  12. Klicken Sie im Diagrammeditor in der Klasse Check auf das Attribut name.
  13. Klicken Sie in der Eigenschaftensicht auf der Seite Allgemein auf Typ auswählen.
  14. Erweitern Sie im Fenster 'Element auswählen' das Element für UML2, klicken Sie dann auf String und anschließend auf OK.
  15. Klicken Sie im Diagrammeditor in der Klasse Check auf das Attribut name.
  16. Klicken Sie in der Eigenschaftensicht auf der Seite Allgemein neben Sichtbarkeit auf öffentlich.

Sie haben die Klasse 'Customer' modelliert.

Beziehungen zwischen 'Account' und 'Customer' modellieren

Die Klasse 'Account' ist von der Klasse 'Customer' abhängig.

Gehen Sie wie folgt vor, um die Beziehungen zwischen 'Account' und 'Customer' zu modellieren:
  1. Klicken Sie in der Palette auf Verwendung.
  2. Positionieren Sie den Cursor im Diagrammeditor auf der Klasse Account, und ziehen Sie diese auf die Klasse Customer.

Sie haben nun die Beziehungen der Klasse 'Customer' modelliert. Darüber hinaus haben Sie den grundlegenden Entwurf des Domänendiagramms fertig gestellt. Ihr Diagramm wird jetzt wie in der folgenden Abbildung aufgeführt dargestellt:

Der grundlegende Entwurf des PiggyBank-Domänendiagramms.

Das Diagramm dient zur Modellierung der Basisdomäne des Systems. Hierzu wird die Struktur der Hauptklassen des Systems und der Beziehungen beschrieben, die zwischen diesen Klassen definiert sind. Ein Kunde, der durch eine eindeutige Anmelde-ID und einen Namen identifiziert wird, kann z. B. über mehrere Konten verfügen, ein Konto kann hingegen immer nur einem bestimmten Kunden zugeordnet sein.

Übersichtsdiagramm des Domänenmodells erstellen

Sie werden nun das PiggyBank-Domänenmodelldiagramm im Paket '«perspective» Overviews' erstellen. Hierbei handelt es sich um die Endversion des Diagramms, das Übersichts- und Navigationsinformationen enthält.

Gehen Sie wie folgt vor, um das PiggyBank-Domänenübersichtsdiagramm zu erstellen:
  1. Erweitern Sie in der Modellexplorersicht das Element für Analysemodell und dann das Element für «perspective» Overviews. Klicken Sie anschließend mit der rechten Maustaste auf ${project} Domain Model und dann auf Suchen/Ersetzen.
  2. Geben Sie im Feld Zu suchendes Element die Zeichenfolge ${project} ein, und klicken Sie dann auf Ersetzen.
  3. Geben Sie im Feld Ersetzen durch die Zeichenfolge PiggyBank ein, und klicken Sie dann auf OK.
  4. Doppelklicken Sie auf das Diagramm für das PiggyBank-Domänenmodell.
  5. Erweitern Sie in der Modellexplorersicht das Element für Account Operations (Kontooperationen) und anschließend das Element für Account Operations Analysis Elements (Analyseelemente für Kontooperationen).
  6. Klicken Sie in der Modellexplorersicht auf das Analyseelement Customer, und ziehen Sie dieses in das Diagramm.
  7. Klicken Sie in der Modellexplorersicht auf das Analyseelement Account, und ziehen Sie dieses in das Diagramm.
  8. Klicken Sie in der Modellexplorersicht auf das Analyseelement Transfer, und ziehen Sie dieses in das Diagramm.
  9. Klicken Sie in der Modellexplorersicht auf das Analyseelement Check, und ziehen Sie dieses in das Diagramm.

Sie haben nun das PiggyBank-Domänenmodelldiagramm im Paket '«perspective» Overviews' erstellt. Dies ist die Endversion Ihres Diagramms. Sie können das Diagramm der Analyseklassen für die Kontooperationen als Entwurfsarbeitsbereich zum Erstellen der Teilnehmerdiagramme für die Anwendungsfälle benutzen.

Rechtliche Hinweise | Feedback
(C) Copyright IBM Corporation 2004, 2005. Alle Rechte vorbehalten.