|
Bei einem Aktivitätsdiagramm stellst du Programmabläufe schematisch da. Jeder Kasten symbolisiert dabei eine Aktivität, welcher du miteinander verknüpfst. Bei einem Zustandsdiagramm hast du nur Zustände in den Kästen. Die Pfeile stellen dabei Transitionen zwischen den Zuständen dar.
Beispiel Fahrkartenautomat (jetzt mal ohne "Abbrechen" und sowas einfach Straight forward), hast du z. B. folgende Aktivitäten, welche du modellieren könntest (hab jetzt nichts zum modellieren parat, daher versucht ich das mal textuell darzustellen):
Ziel wählen -> (while(zu wenig Geld): Geld zählen -> Geld fordern) -> Ticket drucken
In einem Zustandsdiagramm würdest du das eher wie folgt aufbauen:
Idle -> Zielwahl -> Bezahlen -> Ticket Druck -> Idle
Wobei Idle jeweils durch Start und Ende ersetzt sein können. Die Transitionen sind in der Regel auch mit einem Namen gekennzeichnet.
Unterschied ist z. B., dass in einem Zustand des Zustandsdiagramms mehrere Aktivitäten auch stattfinden können. Zum Bezahlzustand könntest du also die komplette Aktitvitätsreihe der Geld zählen Schleife des Aktivitätsdiagramm zählen.
Bei komplexer Software kann es sich folglich lohnen, die Software als ganzes in einem Zustandsdiagramm zu modellieren und für jeden Zustand ein eigenes Aktivitätsdiagramm aufzustellen.
|