25
Aktivitätsdiagramm (Activity Diagram) Eine Präsentation von Christoph Süsens und Matthias Holdorf Aktivitätsdiagramm C 1

Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

  • Upload
    vucong

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Aktivitätsdiagramm(Activity Diagram)

Eine Präsentation von

Christoph Süsens und Matthias Holdorf

Aktivitätsdiagramm

C

1

Page 2: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Diagrammtypen im Überblick

Aktivitätsdiagramm 2

Page 3: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Definiton

Aktivitätsdiagramm

Problem:– Es sollen Abläufe, z.B. Geschäftsprozesse, modelliert werden. Im

Vordergrund steht dabei eine Aufgabe, die in Einzelschritte zerlegt werden soll.

– Es sollen Details eines Use Cases festgelegt werden.

Diese zentrale Frage beantwortet das Diagramm:– Was realisiert mein System und wie wird ein bestimmtes

Verhalten realisiert?

Diese Stärken hat das Diagramm:a. Detaillierte Visualisierung von Abläufen mit Bedingungen,

Schleifen und Verzweigungen.b. Parallelisierung und Synchronisation ist möglich.c. Darstellung von Daten- und Kontrollflüssen.

C3

Page 4: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Notation

Aktivitätsdiagramm

Bestandteile des Aktivitätsdiagramm sind:

• Aktion• Aktivität• Kanten• Objektknoten• Kontrollknoten

- Start- / Endknoten- Entscheidung / Zusammenführung- Splitting / Synchronisation- Senden und Empfangen von Signalen

• Partition

C4

Page 5: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Notation

Aktivitätsdiagramm

Das Tokenkonzept

Dient der verbesserten Darstellung nebenläufiger Abläufe

Token= „Marke“, legt Abarbeitungsposition des Ablaufs fest

Tokenwanderung durch Aktivität bedeutet Abarbeitung läuft

in einer Abarbeitung können mehrere Tokens vorkommen

werden im Aktivitätsdiagramm nicht graphisch dargestellt

5

Page 6: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Notation

Aktivitätsdiagramm

Beim Aktivitätsdiagramm wird zwischen Aktionen und Aktivitäten unterschieden

Aktionen stehen für ein fundamentales Element, welches eine Eingabe in eine Ausgabe umwandelt.

Eine Aktivität ist eine Kapselung von Aktionen.

Aktivität Aktion

6

Page 7: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Notation

Aktivitätsdiagramm

Kanten repräsentieren Steuer und Objektflüsse, sog. Transitionen

Knoten repräsentieren Aktivitäten, Aktionen, Objekteund Kontrollelemente zur Ablaufsteuerung

7

Page 8: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Notation

Aktivitätsdiagramm

Aktivitätsflüsse können gesplittet (fork) und wieder zusammengeführt (join) werden.

Splitten (fork)

Zusammenführen (join)

(and)

(and)

(or)

(or)

(xor)

(xor)

8

Page 9: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Notation

Aktivitätsdiagramm

Besteht eine Aktion nur aus einer Entscheidung, wird das Raute-Symbol benutzt.

Das Sternchensymbol (*) zeigt, dass eine Transition (Kontrollfluss) mehrfach stattfindet. Diese Notation ist in UML aber noch nicht vorgeschrieben!

*for each Besucher all Besucher

9

Page 10: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Pin-Notation

Aktivitätsdiagramm

Werden Objekte im Aktivitätsdiagramm weiter gegeben, so spricht man von Objektknoten.

Wenn sich „Objektknoten“ im Aktivitätsfluss befinden, spricht man von einen Objektfluss.

Sie repräsentieren Werte oder Instanzen und befinden sich in einem Zustand.

10

Page 11: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Pin-Notation

Aktivitätsdiagramm

Pins spielen die Rolle einer Andockstelle. Es gibt Eingabepins (engl. InputPin), die der Aktion Werte zur Verfügung stellen, und Ausgabepins (engl. OutputPin), an die die Aktion Werte abgibt.

Ist der Objekt Typ ersichtlich, so kann auf die Darstellung verzichtet werden

11

Page 12: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Aktivitätsdiagramm

Signal-Notation

Signal senden:• Sender erstellt aus Eingabedaten einSignal für den Ereignisempfänger

Ereignis empfangen:• Gegenstück zum Signal senden• Ablauf läuft erst weiter wenn Ereignis eintrifft

Ein Signal wird an ein Objekt gesendet, das durch seine Klasse repräsentiert wird.

Zeitereignis empfangen(Arbeitet wie ein Wecker)

12

Page 13: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Partition-Notation

Aktivitätsdiagramm

Sind mehrere Personen an Aktionen beteiligt, gibt es die sog. Zuständigkeitsbahnen (Partitions)Hierbei wird ersichtlich, in welchen Verantwortlichkeitsbereich die Aktionen fallen .

13

Page 14: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Aufgabe

Aktivitätsdiagramm

Die StudentenpartyEs ist Freitagabend und Sie überlegen sich, zur Studentenparty im Freundeskreis zu gehen, da es dortimmer besser zugeht, als bei Ihnen alleine zu Hause. Also streifen Sie sich Ihre Jacke über [Methodeanziehen()] und begeben sich auf den Weg [Methode zurPartyGehen()]. Dort angekommen, wird Ihnenauch schnell klar, warum Sie nicht zu Hause geblieben sind. Es gibt lustige Trinkspiele. Natürlich alles nurmit Mineralwasser, da Alkohol ein echter Stimmungskiller ist.Das Spiel geht so:• Als erstes, wird per Zufall ein langer oder ein kurzer Strohhalm gezogen [Methode strohhalmZiehen()].Sofern der kurze Strohhalm gezogen wurde, muss nun so lange mit drei Würfeln geworfen werden, biseine Zahl größer als 17 vorliegt [Methode würfeln()].• Ist die Zahl nicht größer als 17, so gibt es leckeres Mineralwasser [Methode trinken()] und die Runde istbeendet.• Ist der gezogene Strohhalm ein langer, so besteht die Schwierigkeit darin, gleichzeitig anhand einesvorgegebenen Weges zu laufen [Methode laufen()] und den auf dem Weg vorliegenden Becher mitMineralwasser zu leeren [Methode trinken()]. Bevor die Methoden ausgeführt werden dürfen, mussjedoch dem Veranstalter ein Dank für die gute Feier ausgesprochen werden [Methode danken()].• Ist nun das eine oder andere Spiel beendet, so muss der Teilnehmer noch ein Lied singen [Methodesingen()]. Je nach Meinung der Juri [Methode bewertung()], wird das Lied als gut oder schlecht beurteilt.Gute Lieder führen zum Sieg und damit zum Ende des Spiels. Schlechte Lieder müssen noch einmalgesungen werden, bevor das Spiel beendet werden kann.

14

Page 15: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Lösung Aufgabe

Aktivitätsdiagramm 15

Page 16: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Notation

Aktivitätsdiagramm

Beim Aktivitätsdiagramm wird zwischen Aktionen und Aktivitäten unterschieden

Aktionen stehen für ein fundamentales Element, welches eine Eingabe in eine Ausgabe umwandelt.

Eine Aktivität ist eine Kapselung von Aktionen.

Aktivität Aktion

C16

Page 17: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Notation

Aktivitätsdiagramm

Aktivität der Kaffeezubereitung

Aktivitäten können in anderen Aktivitäten als Schnittstellen genutzt werden! Die Aktivität wird dann zu einer Aktion umgewandelt.

C17

Page 18: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Notation

Aktivitätsdiagramm

Seit UML 2.0 ist es möglich eine Abarbeitung auch in der Aktivität zu beenden!

18

Page 19: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Notation

Aktivitätsdiagramm

Strukturierter Knoten

Strukturierte Knoten (gestrichelter Kasten) werden zur Gruppierung von Aktionen verwendet.

19

Page 20: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Notation

Aktivitätsdiagramm

Unterbrechungsbereich

• Umschließt eine oder mehrere Aktionen• Verlässt man Bereich über Unterbrechungskante:• Unterbrechen von sämtlichen Aktionen im Bereich, alle

vorhandenen Token werden verworfen• Aktivitätsablauf wird an Zielknoten fortgesetzt

20

Page 21: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Notation

Aktivitätsdiagramm

Unterbrechungsbereich

21

Page 22: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Notation

Aktivitätsdiagramm

Mengenverarbeitung (expansion region)

Aktivitäten werden entsprechendIhrer Elemente, mehrfachAbgearbeitet.

Man unterscheidet zwischen den Stereotypen:

1. Iterative = nacheinander2. Parallel = gleichzeitig3. Streaming = zu einem Strom

gebündelt

22

Page 23: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Notation

Aktivitätsdiagramm

Entscheidungsknoten

Ein Entscheidungsknoten ist ein strukturierterAktivitätsknoten, der eine exklusive Auswahlaus einer gegebenen Anzahl von Alternativenermöglicht.

23

Page 24: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Notation

Aktivitätsdiagramm

Schleifenknoten (loop node)

Zur kompakten Modellierung von Schleifen.

3 Bestandteile: InitialisierungsbereichTestbereichAusführungsbereich

»Inoffizielle« Notation für Schleifenknoten

24

Page 25: Eine Präsentation von Christoph Süsens und Matthias Holdorfsuesens.info/blog/wp-content/uploads/2010/11/Aktivitätsdiagramm.pdf · Diese Notation ist in UML aber noch nicht vorgeschrieben!

Quellenverzeichnis

Aktivitätsdiagramm

Präsentationen zu UML diverser Universitäten

Literatur: Objektorientierte Softwareentwicklung mit UML

25