2016-07-20 22 views
0

Angenommen, ich erstelle ein Auftragsverarbeitungssystem. Ein Benutzer kann viele verschiedene Arten von Produkten für eine Bestellung anfordern. Ein Auftrag besteht also aus vielen Bestellzeilen. Immer wenn ein Kunde eine Bestellung ausführt, muss das oder das Objekt viele Bestellposten-Objekte erstellen. Wie zeichne das im Sequenzdiagramm?Erstellen vieler Objekte im Sequenzdiagramm

+0

Ist es nur die Mehrfacherstellung oder werden Sie zeigen, wie diese mehreren Objekte interagieren? –

+0

Ich möchte nur wissen, wie Sie mehrere Objekte erstellen. –

+0

Dann hat @Ister die richtige Antwort. Die Ausgangsbedingung aus der Schleife ist Stellen in eckigen Klammern (wie eine Wache). Ich bin sicher, er wird das Bild aktualisieren. –

Antwort

0

Verwenden Sie ein Schleifenkombinationsfragment, in dem ein neues Objekt innerhalb einer Schleife erstellt wird.

enter image description here

Für eine detaillierte Beschreibung (der Wachen einschließlich da es ein bisschen mehr zu sagen - mein Beispiel ist ein grundlegendes eins) überprüft UML-Dokumentation, Abschnitte 17.6.3.17 (für eine Beschreibung der Semantik), 17.6 .4.9 (um zu sehen, wie Sie die Anzahl der Schleifenläufe weiter begrenzen können, indem Sie die minimale und maximale Anzahl von Läufen definieren) und 17.6.5, insbesondere Abbildung 17.13 für Beispiele.

+0

Wie Bedingung hinzufügen, um aus dieser Schleife zu existieren? In diesem Fall, wenn der Benutzer die Bestelltaste drückt. Ich muss ein weiteres Fragment "Pause" hinzufügen? Wie wäre es nicht mit Fragment, sondern Hinzufügen von * [nicht drücken Reihenfolge] vor der Nachricht > von Bestellung zu Bestellposten? Becaue * bedeutet Iteration und [] wird für Iteration verwendet? –

+0

Ich meine, ich verwende kein Fragment total. Es wird nur eine Nachricht von Bestellposten als * [Bedingung] > geben und als Multiobjekt bestellen. Wie ist es damit? –

+0

Sie legen eine Schutzvorrichtung in eckige Klammern, z. [Bestellung nicht abgeschlossen]. Die Schleife wird so lange fortgesetzt, wie die Bedingung wahr zurückgibt. Ich habe das Bild geändert, um zu zeigen, wie es aussehen sollte. Guard ist eine für den gesamten Schleifenblock. – Ister

Verwandte Themen