recall |
---|
header |
Anwendungsfalldiagramme
Interaktionsdiagramme
- Sequenzdiagramme
- Kollaborationsdiagramme
Eine Abtraktion eines menschlichen oder maschinellen Benutzers in einer bestimmten Rolle gegenüber einem System
Strichmännchen mit Namen den Akteurs unter dem Symbol
Eine in sich abgeschlossene Teilfunktionalität des Anwendungssystems
Ellipsen mit Namen des Anwendungsfalls
Rechteck mit Systemnamen um die Anwendungsfälle (Akteure außerhalb)
use case
actors
precondition
main flow
alternative flow af1
alternative flow af2
...
alternative flow afn
postcondition
exceptional flow ef1
postcondition
...
exceptional flow efn
postcondition
end
Jeder alternative flow hat die gleiche Nachbedingung wie der main flow, jeder exceptional flow hat eine eigene
Ein konkreter Ablauf eines Anwendungsfalls
include und extend (und Generalisierung)
Eine bedingungslose Erweiterung eines Anwendungsfalls um einen anderen
gestrichelte Linie mit offenem Pfeil vom Basisanwendungsfall zum inkludierten Anwendungsfall mit Vermerk «include» in der Mitte des Pfeils
Eine bedingte / optionale Erweiterung eines Anwendungsfalls um einen anderen
gestrichelte Linie mit offenem Pfeil vom Erweiterunganwendungsfall zum Basisanwendungsfall mit Vermerk «extend» in der Mitte des Pfeils, ggf. Erweiterungspunkt in () und Bedingung in []
In der textuellen Beschreibung von Anwendungsfällen kann mit extention points eine bedingte Erweiterung eines Anwendungsfalls um einen anderen beschrieben werden
horizontale Trennung der Ellipse eines Anwendungsfalls, Name des Erweiterungspunkt in der unteren Hälfte
extend relationship
base
<Name des Anwendungsfalls>
extensionPoint
<Name des Erweiterungspunkts>
extension
<Name des erweiternden Anwendungsfalls>
condition
<Bedingung wann die Erweiterung stattfindet>
durchgezogene Linie zum allgemeineren Fall mit geschlossener, nicht ausgefüllter Spitze
Ein partielles Klassendiagramm, das die an einem Anwendungsfall beteiligten Klassen darstellt. Der Anwendungsfalls selbst ist als gestrichelte Ellipse dargestellt und mit gestrichelten Linien mit den Klassen verbunden
Anforderungsermittlung, Verständigung mit dem Auftraggeber / Benutzer
Beschreiben den Ablauf von Funktionen und präzisieren die Semantik, zeigen wie Klassen zusammenarbeiten
- Sequenzdiagramme
- Kollaborationsdiagramme
Eine vertikale gestrichelte Linie unterhalb des Rechtecks eines Objekts. Sie symbolisiert die Lebensdauer eines Objekts.
Wie wird der Aufruf einer synchronen Operation eines Objekts durch ein anderes im Sequenzdiagramm dargestellt?
durchgezogener Pfeil mit geschlossener, ausgefüllter Spitze. Name der Operation am Pfeil
Je weiter unten ein Pfeil liegt, desto später im Ablauf findet diese Operation statt
Eine Nachricht eines Objekts an sich selbst
in [] am Pfeil vor dem Namen der Operation
[counter:=from..to] operationsName
Rechteck um die betreffenden Operationen, unten links Iterationsausdruck
Pfeil auf das Objektsymbol (Rechteck / Stereotyp-Symbol) mit Aufruf der Klassenmethode erzeuge()
Pfeil auf die Lebenslinie, die dort (oder weiter unten) mit einem großen Kreuz terminiert wird (es können Nachrichten zwischen dem Nachrichteneingang von zerstöre() und dem Kreuz vom zerstörten Objekt abgesetzt werden)
Interaktion
Den konkreten Ablauf einer Funktion der Anwendung
Kommentare am linken Rand auf Höhe der Operation, die sie beschreiben
Nachrichten, bei denen die dienstnutzende Instanz auf den Abschluss der Operation wartet
Aktivierungsbalken
getrichelter Pfeil mit offener Spitze vom aufgerufenen Objekt zum aufrufenden Objekt
Nachrichten bei denen der Dienstnutzer nicht auf den Abschluss der Operation wartet und sich anderen Dingen zuwenden kann.
durchgezogener Pfeil mit geschlossener, ausgefüllter Spitze
durchgezogener Pfeil mit offener Spitze
Wie Objektdiagramme, aber mit nummerierten Pfeilen an den Assoziationen, die Nachrichten zwischen den Objekten darstellen
Nummerierung der Pfeil zwischen den Objekten
kurzer durchgezogener Pfeil mit ausgefüllter Spitze zwischen Objekten
{new}
unter dem Namen im Rechteck
{destroyed}
unter dem Namen im Rechteck
{transient}
unter dem Namen im Rechteck
- Ordinalzahlen (einfach Durchnummerieren)
- hierarchische Dezimalnotation (1.5.2 ist die zweite Operation innerhalb der fünften Operation während der ersten Nachricht)
Anwendungsfallbeschreibung meist sehr textuell, unübersichtlich und nicht allzu präzise, damit Anwender / Kunde den Inhalt auch versteht. Aus dem Sequenzdiagramm wird hier das Zusammenspiel von Klassen deutlicher. Wenn möglich gering detaillierte Sequenzdiagramme zur Beschreibung eines Anwendungsfalls erstellen
Darstellung aller Zustände (Attributkombinationen) eines Objekts und die Übergänge und Aktionen zwischen den Zuständen
Die Abstraktion einer Menge von Zustandskombinationen in denen sich ein Objekt vergleichbar verhält
abgerundetes Rechteck mit Namen des Zustands in der Mitte
- kein Bezeichner: unterschiedliche Zustände
- gleicher Bezeichner: gleicher Zustand
Eintreten eines Sachverhalts zu einem bestimmten Zeitpunkt mit vernachlässigbarer Zeitdauer
- Aufruferereignis (CallEvent)
- Änderungsereignis (ChangeEvent)
- Zeitereignis (TimeEvent)
- Signalereignis (SignalEvent)
Empfang einer synchronen oder asynchronen Nachricht, die zur Ausführung einer Operation führt
- Objektänderungen wie erzeugen, zerstören oder verbinden
- Benutzerinteraktionen
- Beginn und Ende eines Vorgangs
- Grenzwerterreichen von Attributen
Ablauf von Zeitperioden oder Erreichen von Zeitpunkten
Empfang eines asynchron gesendeten Objekts (Beispiel: Exceptions)
Zustandsübergang mit gleichem Ausgangs- und Endzustand
durchgezogener Pfeil mit offener Spitze. Name des Ereignisses am Pfeil
gerichteter Graph
ein prädikatenlogischer Ausdruck, der sich auf Parameter eines Ereignisses oder den Zustand eines Objekts bezieht und so Zustandsübergange an Bedingungen koppeln kann
in [] hinter dem Ereignisnamen
Eine Operation, die bei einem Ereignis durchgeführt wird
ein Ereignis, das eine Aktion, aber keinen Zustandsübergang auslöst
Aktionen, die beim Betreten / Verlassen eines Zustands ausgeführt werden und so nicht an jedem eingehenden / ausgehenden Zustandsübergang notiert werden müssen
entry / Aktionsname
bzw. exit / Aktionsname
bei internen Transitionen werden Eingangs- und Ausgangsaktionen nicht ausgeführt. Bei einem reflexiven Übergang die Ausgangsaktion, dann die Aktion des Zustandsübergangs, dann die Eingangsaktion
Ereignis [Wächterbedingung] / Aktionsfolge ^ Sendeaktion
Das Versenden einer Nachricht in der Form Zielausdruck.Nachrichtenname(Argumente) bei einem Zustandsübergangs. Zielausdruck ist ein Objekt / Menge von Objekten / Gesamtsystem
Startpunkt eines Zustandsdiagramm mit genau einem ausgehenden Pfeil. Dieser Zustandsübergang wird ausgeführt und damit implizit das Objekt erzeugt (keine Wächterbedingung, kein Ereignis)
Zustand nach der Zerstörung eines Objekts, kann mehrere im Zustandsdiagramm geben. Sie haben nur eingehende Pfeile.
ausgefüllter schwarzer Kreis
schwarz gefüllter Doppelkreis
Hierarchische Darstellung von Zuständen in einem Über-Zustand. Zusammengesetzte Zustände haben stets einen Initialzustand
großes abgerundetes Rechteck um einige Zustände
Dieser Pfeil beschreibt den Zustandsübergang durch ein Ereignis, das von jedem inneren Zustand aus beschritten werden kann.
Startzustand im inneren des zusammengesetzten Zustands