Übung 2.8: Ablaufdiagramm für Transfer Money erstellen

In der vorliegenden Übung werden Sie das Ablaufdiagramm für Transfer Money erstellen. Das Ablaufdiagramm für Transfer Money zeigt den Arbeitsablauf der funktionalen Task.

Das Teilnehmerdiagramm für Transfer Money stellt ein Modell der Struktur der Klassen bereit, die in der funktionalen Task für Display Balance enthalten sind. Das Diagramm dient darüber hinaus zur Darstellung der Beziehungen, die zwischen den einzelnen Klassen gelten. Der Arbeitsablauf der funktionalen Tasks wird allerdings nicht näher erläutert. Die Anwendungsfallrealisierung verwendet zur Beschreibung dieser statischen Informationen ein Ablaufdiagramm.

Im Ablaufdiagramm für Transfer Money werden die Schritte dargestellt, die ausgeführt werden, wenn der Benutzer im Hauptmenü auf die Option zum Überweisen von Geld (Transfer Money) klickt. Das Ablaufdiagramm modelliert die Teilnehmer am Anwendungsfall als Lebenslinien und den Datenfluss als Nachrichten, um den Arbeitsablauf innerhalb des Anwendungsfalls darzustellen. Wenn Sie den Arbeitsablauf des Anwendungsfalls in einem Ablaufdiagramm modellieren, können Sie die Operationen ermitteln, die in den verschiedenen Klassen verfügbar sind. Durch die Ermittlung und Erstellung der Operationen im Ablaufdiagramm für Transfer Money wird es möglich, das Teilnehmerdiagramm für Transfer Money zu vervollständigen.

Das Modellieren ist ein iterativer Prozess. Sie können das Ablaufdiagramm jederzeit ändern, wenn Sie neue Daten zum System feststellen. In dieser Lerneinheit werden Sie ein vollständiges Ablaufdiagramm für Transfer Money erstellen.

Ablaufdiagramm für Transfer Money und zugehörige Lebenslinien erstellen

Vor dem Modellieren des Arbeitsablaufs müssen Sie zuerst ein Modell der Lebenslinien des Ablaufdiagramms erstellen. Die Teilnehmer des Anwendungsfalls bilden die Lebenslinien des Ablaufdiagramms.

Gehen Sie wie folgt vor, um das Ablaufdiagramm und die Lebenslinien zu erstellen:
  1. Erweitern Sie in der Modellexplorersicht zuerst das Element für Account Operations (Kontooperationen), dann das Element für «use case realization» Transfer Money und «use case realization» Transfer Money - Basic Flow. Doppelklicken Sie dann auf das Diagramm für «use case realization» Transfer Money - Basic Flow.
  2. Erweitern Sie in der Modellexplorersicht zuerst das Element für Use Case Model (Anwendungsfallmodell), und klicken Sie dann im Paket für Account Operations (Kontooperationen) auf den Actor Customer. Ziehen Sie diesen anschließend ins Diagramm.
  3. Klicken Sie in der Modellexplorersicht im Paket Account Operations Analysis Elements (Analyseelemente für Kontooperationen) auf die Klasse MenuForm. Ziehen Sie diese an die Position rechts neben der Lebenslinie für Customer.
  4. Klicken Sie in der Modellexplorersicht im Paket Account Operations Analysis Elements auf die Klasse TransferMenuForm. Ziehen Sie diese an die Position rechts neben der Lebenslinie für MenuForm.
  5. Klicken Sie in der Modellexplorersicht im Paket Account Operations Analysis Elements (Analyseelemente für Kontooperationen) auf die Klasse TransferMoneySummaryForm. Ziehen Sie diese an die Position rechts neben der Lebenslinie für TransferMenuForm.
  6. Klicken Sie in der Modellexplorersicht im Paket Account Operations Analysis Elements auf die Klasse TransferMoneyControl. Ziehen Sie diese an die Position rechts neben der Lebenslinie für TransferMoneySummaryForm.
  7. Klicken Sie in der Modellexplorersicht im Paket Account Operations Analysis Elements auf die Klasse Account. Ziehen Sie diese an die Position rechts neben der Lebenslinie für TransferMoneySummaryForm.
  8. Klicken Sie auf die Lebenslinie für Account, und ordnen Sie in der Eigenschaftensicht auf der Seite Allgemein der Lebenslinie den Namen debit zu.
  9. Klicken Sie in der Modellexplorersicht im Paket Account Operations Analysis Elements (Analyseelemente für Kontooperationen) auf die Klasse Account, und ziehen Sie diese an die Position rechts neben der Lebenslinie für debit:Account.
  10. Klicken Sie auf die Lebenslinie für Account, und ordnen Sie in der Eigenschaftensicht auf der Seite Allgemein der Lebenslinie den Namen credit zu.
  11. Klicken Sie in der Modellexplorersicht im Paket Account Operations Analysis Elements (Analyseelemente für Kontooperationen) auf die Klasse Transfer, und ziehen Sie diese an die Position rechts neben der Lebenslinie für credit:Account.

Sie haben nun die Lebenslinien des Ablaufdiagramms für Transfer Money erstellt. Diese Lebenslinien stellen die Teilnehmer dar, die im Teilnehmerdiagramm für Transfer Money identifiziert wurden. Sie sind sequenziell strukturiert und so angeordnet, dass sich die Primärklassen für die Nachrichtengenerierung im Diagramm links befinden. Beachten Sie, dass der Teilnehmer 'Account' innerhalb des Diagramms zweimal aufgeführt ist. Eine Lebenslinie für 'Account' steht für das Konto, das belastet wird, die andere Lebenslinie für 'Account' hingegen für das Konto, dem der Betrag gutgeschrieben wird.

Nachrichtenfluss modellieren

In dieser Übung werden Sie ein Modell des Nachrichtenflusses innerhalb des Ablaufdiagramms erstellen. Die Nachrichten in einem Ablaufdiagramm stellen den Datenfluss zwischen den Klassen eines Systems dar.

Gehen Sie wie folgt vor, um die Nachricht 'select Transfer Money' zu erstellen:
  1. Klicken Sie in der Palette auf Asynchronnachricht.
  2. Klicken Sie im Diagrammeditor auf die Lebenslinie für Customer, und ziehen Sie diese zur Lebenslinie für MenuForm.
  3. Klicken Sie an einer beliebigen Stelle innerhalb des Diagrammeditors.
  4. Ordnen Sie der Nachricht im Fenster Operationsname eingeben den Namen select Transfer Money (Transfer Money auswählen) zu.
Sie haben den Menüpunkt zum Überweisen von Geld (Transfer Money) modelliert, der der Operation 'select Transfer Money' in der Klasse 'MenuForm' zugeordnet ist. Bei der Erstellung der Nachricht wurden Sie vom System aufgefordert, eine Option aus der Liste 'Neue Operation erstellen' auszuwählen. Durch die Eingabe von 'select Transfer Money' haben Sie eine neue Operation zur Klasse 'MenuForm' hinzugefügt.

Gehen Sie wie folgt vor, um die Anzeigenachricht zu erstellen:
  1. Klicken Sie in der Palette auf Asynchronnachricht.
  2. Klicken Sie im Diagrammeditor auf die Lebenslinie für MenuForm, und ziehen Sie diese zur Lebenslinie für TransferMoneyForm.
  3. Ordnen Sie der Nachricht im Fenster Operationsname eingeben den Namen display (Anzeigen) zu.

Gehen Sie wie folgt vor, um die Nachricht 'fill-in and submit' zu erstellen:
  1. Klicken Sie in der Palette auf Asynchronnachricht.
  2. Klicken Sie im Diagrammeditor auf die Lebenslinie für Customer, und ziehen Sie diese zur Lebenslinie für TransferMoneyForm.
  3. Ordnen Sie der Nachricht in der Eigenschaftensicht auf der Seite Allgemein den Namen fill-in and submit zu.

Gehen Sie wie folgt vor, um die Nachricht 'transfer' zu erstellen:
  1. Klicken Sie in der Palette auf Asynchronnachricht.
  2. Klicken Sie im Diagrammeditor auf die Lebenslinie für TransferMoneyForm, und ziehen Sie diese zur Lebenslinie für TransferMoneyControl.
  3. Ordnen Sie der Nachricht im Fenster Operationsname eingeben den Namen transfer (debit, credit, amount ) zu.

Gehen Sie wie folgt vor, um die Nachricht 'withdraw' zu erstellen:
  1. Klicken Sie in der Palette auf Asynchronnachricht.
  2. Klicken Sie im Diagrammeditor auf die Lebenslinie für TransferMoneyControl, und ziehen Sie diese zur Lebenslinie für debit:Account.
  3. Ordnen Sie der Nachricht im Fenster Operationsname eingeben den Namen withdraw ( amount ) zu.

Gehen Sie wie folgt vor, um die Nachricht 'deposit' zu erstellen:
  1. Klicken Sie in der Palette auf Asynchronnachricht.
  2. Klicken Sie im Diagrammeditor auf die Lebenslinie für TransferMoneyControl, und ziehen Sie diese zur Lebenslinie für credit:Account.
  3. Ordnen Sie der Nachricht im Fenster Operationsname eingeben den Namen deposit ( amount ) zu.

Gehen Sie wie folgt vor, um die Nachricht «create»\CalledOperation\ zu erstellen:
  1. Klicken Sie in der Palette neben Asynchronnachricht auf den Abwärtspfeil und dann auf Nachricht erstellen.
  2. Klicken Sie im Diagrammeditor auf die Lebenslinie für TransferMoneyControl, und ziehen Sie diese zur Lebenslinie für Transfer.

Gehen Sie wie folgt vor, um die Nachricht 'setDebitAccount' zu erstellen:
  1. Klicken Sie in der Palette auf Asynchronnachricht.
  2. Klicken Sie im Diagrammeditor auf die Lebenslinie für TransferMoneyControl, und ziehen Sie diese zur Lebenslinie für Transfer.
  3. Klicken Sie an einer beliebigen Stelle innerhalb des Diagrammeditors.
  4. Ordnen Sie der Nachricht im Fenster Operationsname eingeben den Namen setDebitAccount ( debit ) zu.

Gehen Sie wie folgt vor, um die Nachricht 'setCreditAccount' zu erstellen:
  1. Klicken Sie in der Palette auf Asynchronnachricht.
  2. Klicken Sie im Diagrammeditor auf die Lebenslinie für TransferMoneyControl, und ziehen Sie diese zur Lebenslinie für Transfer.
  3. Klicken Sie an einer beliebigen Stelle innerhalb des Diagrammeditors.
  4. Ordnen Sie der Nachricht im Fenster Operationsname eingeben den Namen setCreditAccount ( credit ) zu.

Gehen Sie wie folgt vor, um die Nachricht 'setAmount' zu erstellen:
  1. Klicken Sie in der Palette auf Asynchronnachricht.
  2. Klicken Sie im Diagrammeditor auf die Lebenslinie für TransferMoneyControl, und ziehen Sie diese zur Lebenslinie für Transfer.
  3. Klicken Sie an einer beliebigen Stelle innerhalb des Diagrammeditors.
  4. Ordnen Sie der Nachricht im Fenster Operationsname eingeben den Namen setAmount ( amount ) zu.

Gehen Sie wie folgt vor, um die Anzeigenachricht zu erstellen:
  1. Klicken Sie in der Palette auf Asynchronnachricht.
  2. Klicken Sie im Diagrammeditor auf die Lebenslinie für TransferMoneyControl, und ziehen Sie diese zur Lebenslinie für TransferMoneySummaryForm.
  3. Ordnen Sie der Nachricht im Fenster Operationsname eingeben den Namen display ( transfer ) zu.

Sie haben nun das Ablaufdiagramm für Transfer Money modelliert. Das Diagramm zeigt die Abfolge der Schritte, die ausgeführt werden, wenn der Benutzer im Hauptmenü auf die Option zum Überweisen von Geld (Transfer Money) klickt. Wenn der Kunde nun auf die Option zum Überweisen von Geld klickt, wird am Bildschirm ein Formular angezeigt. Dieses Formular kann vom Kunden dann ausgefüllt werden. Die ins Formular eingegebenen Daten werden an die Klasse 'TransferMoneyController' gesendet, die ihrerseits eine Nachricht mit den Informationen zur Abhebungstransaktion an die Klasse 'debit:Account' sendet. Die Klasse 'TransferMoney' sendet anschließend die Informationen zur Einzahlungstransaktion an die Klasse 'credit:Account'. Die Klasse 'TransferMoneyController' erstellt das Übertragungsobjekt und übergibt diesem die Informationen zur Abhebungs- und Gutschriftstransaktion sowie zum Betrag, so dass die Transaktion ausgeführt werden kann. Daraufhin wird dem Benutzer eine Nachricht angezeigt. Ihr Diagramm wird nun wie in der folgenden Abbildung aufgeführt dargestellt:

Das Ablaufdiagramm für Transfer Money.

Das Ablaufdiagramm für Transfer Money bildet den Abschluss der Anwendungsfallrealisierung für Transfer Money. Sie haben nun die statischen und dynamischen Informationen der funktionalen Task zum Überweisen von Geld (Transfer Money) modelliert. Wenn Sie das Teilnehmerdiagramm für Transfer Money öffnen, werden Sie feststellen, dass das Diagramm die Operationen enthält, die Sie als Nachrichten im Ablaufdiagramm erstellt haben. Das Teilnehmerdiagramm für Transfer Money wird nun wie in der folgenden Abbildung dargestellt angezeigt:

Das Teilnehmerdiagramm für Transfer Money.
Hinweis: Da das Ablaufdiagramm für Transfer Money nur einen Datenfluss enthält, können Sie das Paket '«use case realization» Transfer Money - Alternative Flow n' aus der Modellexplorersicht löschen. Dieses Paket ist in der Schablone enthalten, wird jedoch nicht benötigt. Klicken Sie zum Löschen des Pakets in der Modellexplorersicht mit der rechten Maustaste auf das Paket «use case realization» Transfer Money - Alternative Flow n und dann auf Aus Modell löschen.

Fahren Sie mit Übung 2.9: Teilnehmerdiagramm für Cash Check erstellen fort.

Nutzungsbedingungen | Rückmeldungen
(C) Copyright IBM Corporation 2004, 2005. Alle Rechte vorbehalten.