Ein Use Case- Ein Use Case- Modellierungs- Modellierungs- werkzeug für die werkzeug für die ViPER-Plattform ViPER-Plattform Zwischenvortrag zur Diplomarbeit Zwischenvortrag zur Diplomarbeit von von Andreas Walter Andreas Walter [email protected][email protected]
19
Embed
Ein Use Case-Modellierungs- werkzeug für die ViPER- Plattform Zwischenvortrag zur Diplomarbeit von Andreas Walter [email protected].
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Ein Use Case-Ein Use Case-Modellierungs-werkzeug Modellierungs-werkzeug für die ViPER-Plattformfür die ViPER-Plattform
Zwischenvortrag zur Diplomarbeit von Zwischenvortrag zur Diplomarbeit von Andreas WalterAndreas Walter
Einsatzgebiet: Modellierung von Systemverhalten aus der Benutzersicht
Deskriptiv Präskriptiv
Ausgangspunkt für Entwurf, Implementierung und Test Beispiel: Objectory-Prozessmodell (Jacobson 87)
21. Dezember 2006 Andreas Walter
Beschreibung von Use Cases: Beschreibung von Use Cases: „Lebenszyklus“ „Lebenszyklus“ „Lebenszyklus“ eines Use Case
(Bittner&Spence, 2003)
Discovered Briefly Described Bulleted Outline
Essential OutlineDetailed
DescriptionFully Described
21. Dezember 2006 Andreas Walter
Beschreibung von Use Cases: Beschreibung von Use Cases: Graphische ÜbersichtGraphische Übersicht Übersicht durch UML2 Use Case-Diagramme
21. Dezember 2006 Andreas Walter
Beschreibung von Use Cases: Beschreibung von Use Cases: Inhalte (Bittner&Spence, 2003)Inhalte (Bittner&Spence, 2003)Bestandteil Erläuterung
Name Name des Use Case. Muss eindeutig sein und sollte das Ziel der Interaktion zwischen System und Akteur beschreiben.
Kurze Beschreibung Stellt knapp den Zweck des Use Case dar.
Vorbedingungen Textuelle Beschreibung des Zustandes, der vor Ausführung des Use Case gegeben sein muss. Optional.
Nachbedingungen Textuelle Beschreibung des Zustandes, der nach Ausführung des Use Case gegeben sein muss. Optional.
Besondere Anforderungen Textuelle Beschreibung von Anforderungen, die nicht in der Beschreibung des Ereignisflusses enthalten sind, bspw. nichtfunktionale. Optional.
Ereignisfluss Textuelle Beschreibung der Ereignisse, die bei der Ausführung des Use Case geschehen (können). Strukturiert in Basisfluss, alternative Flüsse, Teilflüsse.
Erweiterungspunkte Positionen im Ereignisfluss, an denen alternative Abläufe ansetzen können. Optional.
21. Dezember 2006 Andreas Walter
Beschreibung von Use Cases: Beschreibung von Use Cases: Der EreignisflussDer Ereignisfluss „Einheit“ der Use Case-Beschreibung: Ereignis Zerlegung des Systemverhaltens in sogenannte Flüsse:
Basisfluss: Weg des geringsten Widerstands von Start zur Zielerreichung
Alternative Flüsse: Optionales oder unter Umständen nötiges (System-)Verhalten, verknüpft mit dem variierten Fluss über Erweiterungspunkte Spezifisch Generell Beschränkt
21. Dezember 2006 Andreas Walter
Beschreibung von Use Cases: Beschreibung von Use Cases: Der Ereignisfluss (2)Der Ereignisfluss (2)
21. Dezember 2006 Andreas Walter
Use Case-Beschreibung Use Case-Beschreibung (Bittner&Spence, 2003): (Bittner&Spence, 2003): BeispielBeispielUse Case Description: Authenticate Customer
1. Brief Description: This use case is included by other use cases. It is used to authenticate that the individual using the ATM (the Customer) is authorized to use the inserted bank card and that the account associated with the bank card is active.
2. Use Case Diagram: [...]
3. PreconditionsThe bank card has been inserted into the ATM.The bank card information has been read successfully.A Customer is in dialogue with the including use case. The ATM Session ID has been created.
4. Basic Flow:
{Validate Card Information}1. The system sends the bank card information to the Bank System to confirm that that the bank
card and its associated account are active, that the card has not been reported stolen, and that the bank card information (including the PIN) read from the bank card is valid.
2. The system also sends the ATM ID and the ATM Session ID to the Bank System along with the bank card information.
3. The Bank System acknowledges that the bank card information is valid and that the card can be used.{Validate User Identity}4. The system prompts the Customer for the PIN5. The Customer enters the PIN.6. The system checks that the entered PIN is identical to the PIN read from the bank card.{Use Case Ends}7. Resume the including use case at the next step.
21. Dezember 2006 Andreas Walter
Use Case-Beschreibung: Use Case-Beschreibung: Beispiel (Forts.)Beispiel (Forts.)5. Alternative Flows:
5.1 Handle No Communications With the Bank System
At {Validate Card Information} if the Bank System cannot be contacted or does not reply within the set communication time-out period,
1. If the communications link has failed more times than the communication retry number, then the authentication attempt is abandoned and basic flow is resumed at {Use Case Ends}.
2. The system attempts to contact the Bank System until it has completed the number of retry attempts indicated by the communication retry number.
3. If communications are reestablished, the basic flow is resumed at {Validate Card Information}.4. If there is still no response from the Bank System, the system created an event log entry to record the failure of the communications
link to the Bank System. The event log entry includes the type of failure.5. The system sends the event log to the Service Administrator to inform it that communication with the Bank System has been lost.6. Resume the basic flow at {Use Case Ends}.
[...]
6. PostconditionsThe Customer has been authorized to use the card.The Customer has been barred from using the card, and the card has been confiscated.The Customer has been barred from using the card, and the card has not been confiscated.
Erkannte Probleme & Erkannte Probleme & AnforderungenAnforderungen Probleme
Oft unvollständige Implementierung und damit Unterstützung des UML2-Metamodells
Oft fehlende Unterstützung für textuelle Use Case-Beschreibung
Konsistenz zwischen UML-Modell und textueller Beschreibung kaum gesichert
Anforderungen Graphischer Editor für UML2 Use Case-Modelle Editor für textuelle Use Case-Beschreibungen Konsistenzsicherung
Innerhalb des UML2 Use Case-Modells (i.W. gem. UML2-Spec.) Zwischen textueller Beschreibung und UML2 Use Case-Modell Innerhalb der textuellen Beschreibungen
Formalisierung textueller Use Case-Beschreibungen, ohne dem Benutzer eine bestimmte „Sprache“ aufzuzwingen
Herstellung der Bezüge zwischen textueller Darstellung und UML-Modell Technisch
Komplexität der Rahmenwerke wird durch ViPER nicht verborgen ViPER reift noch
Bisher „gestemmt“ Realisierung des graphischen Use Case-Editors Konzipierung des textuellen Metamodells und des darauf aufbauenden Editors Struktureller Abgleich auf grobgranularer Ebene zwischen UML-Modell und
textuellem Modell Noch zu realisieren
Bearbeitung textueller Beschreibungen im Detail, d.h. auf der Ebene einzelner Use Cases