Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Objektorientierte Konzepte Dynamische Konzepte: Zustandsautomat UML-Diagramme: Zustandsdiagramm Aktivitätsdiagramm.

Ähnliche Präsentationen


Präsentation zum Thema: "Objektorientierte Konzepte Dynamische Konzepte: Zustandsautomat UML-Diagramme: Zustandsdiagramm Aktivitätsdiagramm."—  Präsentation transkript:

1 Objektorientierte Konzepte Dynamische Konzepte: Zustandsautomat UML-Diagramme: Zustandsdiagramm Aktivitätsdiagramm

2 Zustandsautomat Zustandsautomat= Zustände+ Übergänge (Transitionen) Zustand: Zeitspanne, in der ein Objekt auf ein Ereignis wartet (andauernde Aktivität) Ereignis: tritt zu einem bestimmten Zeitpunkt auf und hat (konzeptionell) keine Dauer; kann Aktion innerhalb eines Zustands auslösen (durch Operationen realisiert) Transition: Durch ein Ereignis ausgelöster Zustandswechsel (Aktion) Ein Objekt kann sukzessive mehrere Zustände durchlaufen Momentaner Zustand und eintretendes Ereignis konstituieren den Folgezustand

3 Zustandsdiagramm Engl.: state chart diagram, UML 2.0: state machine diagram Beschreibt die Zustandsfolgen eines Objekts einer Klasse in seinem gesamten Lebenszyklus oder während der Ausführung einer Operation Modellierung des Intraobjektverhaltens (Interaktionsdiagramme: Interobjektverhalten)

4 Basisnotation Zustand= Rechteck mit abgerundeten Ecken Zweiteilung möglich: Name (optional: anonymer Z.) + Aktivität (do/ Aktivität) oder Aktion (entry-,exit-Aktion) Transition: Pfeil, beschriftet mit Ereignis; Ereignisarten: Signal (Ereignisname: left button down), Nachricht (Operationsaufruf: bearbeite()), Bedingung (wenn x<10), Zeitpunkt ( after(6 seconds), when(datum= )) Guard condition: Bedingung die nach Eintritt des Ereignisses überprüft wird Anfangszustand: ausgefüllter Kreis, Endzustand: Bullauge (auch optional) Implizites Ereignis: tritt ein, wenn Verarbeitung beendet ist

5 Beispiel 1: Lebenszyklus eines Buchs

6 Beispiel 2: Kassenautomat: Parkgebühren zahlen

7 Übung 1 Ziel: Zustandsdiagramm erstellen Modellieren Sie einen zyklischen Zustandsautomaten. Folgende Situation: Es wird ein Einweihungsfest gegeben. Da es Hochsommer ist und die Gäste sehr durstig sind, muß häufig für Getränkenachschub aus dem Keller gesorgt werden. Der Gastgeber befindet sich zunächst in einem Zustand mit Gast kommunizieren. Der Forderung eines Gastes nach Getränkenachschub gibt der Gastgeber dann nach, wenn der Kühlschrank tatsächlich leer ist. Er kümmert sich dann um den Nachschub, der sich im Keller befindet. Nachdem er die neuen Getränke geholt und den Keller wieder abgeschlossen hat, macht er sich ans Auffüllen des Kühlschranks. Indem er seinem durstigen Gast ein neues Getränk überreicht, tritt wieder sein anfänglicher kommunizierender Zustand ein. Die gelungene Aktion wird durch ein Prosit abgeschlossen (bedenken Sie, dass es viele Gelegenheiten für ein Prosit gibt…). Im Zustandsdiagramm sollen die nebenstehenden Operationen eingebunden sein. öffneKeller() schließeKeller() holeGetränke() öffneKühlschrank() schließeKühlschrank() ladeKühlschrank() Gastgeber zuprosten()

8 Beispiel: Unterzustände

9 Übung 2 Ziel: Zustandsdiagramm erstellen Anhand der folgenden Problembeschreibung ist ein Zustandsdiagramm zu erstellen, um das Abheben von Geld an einem - vereinfachten - Geldautomaten zu beschreiben. Zu Beginn ist der Automat im Zustand »bereit«. Wird eine Karte eingegeben, so wird die Karte eingezogen. Falsche Karten werden sofort ausgeworfen und der Geldautomat ist wieder bereit. Ist die Karte korrekt, dann wartet der Automat auf die Eingabe der Geheimzahl. Wird eine falsche Geheimzahl eingegeben, dann bricht der Automat die Verarbeitung ab (d.h. Auswerfen der Karte) und ist wieder bereit. Bei korrekter Geheimzahl wartet der Automat auf die Eingabe des Betrags. Ist der gewünschte Betrag zu hoch, kann er erneut eingegeben werden. Weist das Konto die notwendige Deckung auf, dann wird die Karte aktualisiert ausgegeben und anschließend der Kundenauftrag bearbeitet. Anschließend ist der Automat bereit für den nächsten Kunden. Solange der Automat den Auftrag noch nicht bearbeitet, kann jederzeit die Rückgabetaste gedrückt werden. Der Automat wirft die Karte aus und ist wieder bereit.

10 Aktivitätsdiagramm Einsatz: Beschreibung eines Ablaufs - Anwendungsfall - Workflow - Operation

11 Notation Kreis (ausgefüllt/ bullaugig): Start/Ende Rechteck mit abgerundeten Ecken: Aktivität Pfeil: Übergang Raute: Entscheidung Balken: Teilung (Splitting) und Synchronisation Partition, swimlane: Verantwortlichkeitsbereiche; alternative Notation: (Partition) Gabel: Unteraktionsdiagramm swimlane Bereich ABereich B

12 Beispiel 3: Auftrag bearbeiten

13 Beispiel 4: Kaffee vom Automaten ziehen Kafeetrinker Automat

14 Übung 3 Ziel: Aktivitätsdiagramm erstellen Wir schauen nochmal beim Einweihungsfest vorbei. Stellen Sie nun den Ablauf des Falles Durst stillen durch ein Aktivitätsdiagramm dar. Beachten Sie dabei jetzt folgende Rahmenvoraussetzungen: Der Gast kann sich selbst bedienen, indem er aus dem Kühlschrank ein Bier holt. Er kann wahlweise den Gastgeber auch bitten, einen Tee zuzubereiten. Falls kein Bier mehr im Kühlschrank ist, holt der Gastgeber Bier aus dem Keller. Beachten Sie auch den Fall, dass es gar nichts mehr gibt und der Gast durstig bleibt. Versuchen Sie möglichst viele verschiedene Basisnotationselemente in das Diagramm einzubringen.

15 Weitere Übungen Übung 4: Ziel: Zustandsdiagramm erstellen Versuchen Sie einen Kaffeeautomaten als Zustandsdiagramm zu modellieren. Übung 5: Ziel: Aktivitätsdiagramm erstellen Erweitern Sie den Lebenszyklus eines Buchs aus Beispiel 1, indem Sie die Akteure Entleiher und Bibliotheksangestellte mit einbeziehen. Entwickeln Sie daraus ein Aktivitätsdiagramm Buch am Schalter entleihen.


Herunterladen ppt "Objektorientierte Konzepte Dynamische Konzepte: Zustandsautomat UML-Diagramme: Zustandsdiagramm Aktivitätsdiagramm."

Ähnliche Präsentationen


Google-Anzeigen