Sie sind auf Seite 1von 4

Übung zur Vorlesung

Grundlagen der Modellierung (050008)


Aufgabenblatt 3: Anwendungsfalldiagramme

Besprechungstermin am 04. April - 08. April 2011

Abgabe: Bis 04. April 2011, 08:00 Uhr per Xerl1 .

Hinweis: Alle Diagramme sollen so modelliert werden, dass sie sich z.B. mit einem
Beamer projizieren lassen und trotzdem noch in weiten Teilen des Hörsaales lesbar
sind. Verwenden Sie gegebenenfalls Sub-Diagramme.

Aufgabe 1: Methodik der Anwendungsfalldiagramme


Wiederholen Sie das Kapitel aus der Vorlesung, das sich mit der Erstellung einer Use-Case-
Spezifikation beschäftigt und beantworten Sie die nachfolgenden Fragen:

1. Was ist der Ausgangspunkt für anwendungsfallorientierte bzw. anwendungsfallzentrier-


te Softwareentwicklungsmethoden? Warum werden sie eingesetzt?
2. Welche Idee steckt hinter der Verwendung von Use Cases? Was ist ein Use Case?
3. Beschreiben Sie die Hauptbestandteile eines Use-Case-Diagramms (das Diagramm selbst,
die Akteure und Systeme).
4. Erklären Sie anhand eines Beispiels wieso Akteure keine Objekte sondern Rollen re-
präsentieren.
5. Warum ist es in der Praxis oft schwierig, sämtliche Anwendungsfälle vollständig zu
dokumentieren?

Aufgabe 2: Entwurfsentscheidungen und Modellierungskonstrukte

1. Überlegen Sie, welche Konstrukte bzw. Modellierungselemente die Wiederverwendung


im Sinne des objektorientierten Software Engineerings fördern?
1 https://damaskus.ifs.univie.ac.at
2. Diskutieren Sie die beiden Erweiterungsbeziehungen ”extend“ und ”include“ in Use-
Case-Diagrammen. Zeigen Sie dabei den Unterschied zwischen den beiden Beziehun-
gen anhand von Beispielen. Finden und beschreiben Sie ein Beispiel für eine ”extend“
Beziehung mit ”extension points“.
3. Das folgende Beispiel zeigt einen Use Case für eine Kamera. Beurteilen Sie das fol-
gende Use Case Diagramm hinsichtlich seiner Korrektheit sowie der dargestellten An-
wendungsfälle. Wie würde ein – im Sinne der Use Case Spezifikation – adäquates bzw.
korrektes Beispiel aussehen?

Camera

Open
Shutter

Flash

Photog
rapher
Close
Shutter

4. Warum sind Use Case Diagramme eher weniger dazu geeignet, Ablaufsequenzen zu
modellieren? Worin unterscheiden sich Use Case Diagramme und Fluss- bzw. Ablauf-
diagramme im Allgemeinen?

Aufgabe 3: Ambulanz
Sie planen ein System für eine Ambulanz. Die untenstehenden Notizen haben Sie bei ei-
ner Anwenderbefragung über die Systemfunktionalität festgehalten. Entwerfen Sie ein ent-
sprechendes Anwendungsfalldiagramm. Markieren Sie in diesem Diagramm auch etwaige
Extension Points und achten Sie auf Generalisierungsbeziehungen:
Die Anmeldung eines Patienten erfolgt an der Rezeption, die das Erscheinen des Pati-
enten erfasst. Für den Fall, dass der Patient das erste Mal in der Ambulanz ist, müssen
durch die Rezeption die Stammdaten erfasst werden. Nur für den Fall, dass es sich um einen
nicht in Österreich sozialversicherten Patienten handelt, ist zusätzlich die Aufnahme der
Daten für die Kreditkartenzahlung notwendig. Jede Diagnose wird von einem Arzt oder von
einem Assistenten erstellt. Die Erstellung einer Medikation ist jedoch dem Arzt vorbehal-
ten. Im Rahmen der Erstellung der Medikation lässt sich der Arzt jedoch immer auch die
Krankengeschichte des Patienten anzeigen. Das Anzeigen der Krankengeschichte kann auch
unabhängig von einer Medikation jederzeit durch einen Arzt oder Assistenten erfolgen.

Aufgabe 4: Zahnarztpraxis
Zahnarzt Dr. Pappenschlosser möchte seine Praxis modernisieren. So sollen vor allem die
Patientendaten, die im täglichen Betrieb anfallen, effektiver und zuverlässiger per EDV ver-
waltet werden. Bisher geschah dies von Hand, was immer wieder zu Unregelmäßigkeiten
und Fehlern geführt hatte.
Das neue System soll in erster Linie die Daten verwalten, die für eine Behandlung des
Patienten erforderlich sind, das heißt Name, Adresse, Geschlecht, Alter, erbrachte Leistun-
gen sowie die gestellten Diagnosen des Patienten. Dies muss natürlich für alle bisherigen,
aber auch für zukünftige neue Patienten möglich sein.
Neben dieser grundlegenden Funktionalität einer Patientendatenbank soll das System
jedoch auch helfen, die Sprechstunden von Zahnarzt Dr. Pappenschlosser zu koordinieren.
So muss es möglich sein, einerseits für einen Patienten einen noch freien Termin für einen
Besuch bei Dr. Pappenschlosser zu reservieren und andererseits die für einen bestimmten
Tag vereinbarten Termine in Form einer Liste abzufragen.
Ein dritter, wichtiger Punkt, den das System abdecken muss, ist die Erstellung der Rech-
nungen am Monatsende. Dabei ist insbesondere zu unterscheiden, ob es sich um einen Kas-
senpatienten oder einen privat versicherten Patienten handelt. In Abhängigkeit hiervon wird
die Rechnung für die jeweils erbrachten Leistungen an die entsprechende Krankenkasse oder
den Patienten selber verschickt. Das System soll diesen Vorgang der Rechnungsstellung, so-
weit möglich, vollautomatisch abwickeln. Außerdem soll es entsprechende Mahnungen gene-
rieren, wenn eine Rechnung nicht bezahlt wurde.
Entwerfen Sie ein entsprechendes Anwendungsfalldiagramm. Überlegen Sie dabei welche
Informationen Sie als eigene Use Cases modellieren und welche Informationen erst in der
textuellen Beschreibung verwendet werden (die nicht Bestandteil des Übungsbeispiels sind).

Aufgabe 5: Flight Reservation System


Die folgenden beiden reduzierten Use Case Diagramme modellieren jeweils denselben Aus-
schnitt aus dem Reservierungssystem einer Fluggesellschaft aus funktionaler bzw. fachlicher
Sicht.

Diagramm A:
Flight Reservation System

Check in Assign Aisle


Passenger Seat

<uses>
<extends> <extends>

Assign
Weigh
Assign Seat <uses> Window
Luggage
Seat

Diagramm B:
Flight Reservation System

Check in Assign Aisle


Passenger Seat
<uses> <extends>

<uses> Assign Seat


<extends> Assign
Window
Weigh
Seat
Luggage

1. Interpretieren Sie die hier vorgestellten Use Case Diagramme (Diagramm A und B).
Was sagt das jeweilige Modell aus? Welches ist Ihrer Meinung nach korrekt und wo
liegen Fehler?

2. Welche Möglichkeiten gibt es, den hier vorgestellten Ausschnitt eines Flugreservie-
rungssystems weiter zu verbessern?
3. Erweitern Sie das Reservierungssystem um die nachstehenden Anforderungen:
Beim Check-in wird zuerst überprüft, ob der Reisende ein gültiges Reisedokument be-
sitzt. Dies kann entweder ein Personalausweis oder ein Reisepass sein. Hierbei ist insbe-
sondere auf die Gültigkeit zu achten. Ist das Gültigkeitsdatum überschritten, so darf der
Passagier erst befördert werden, wenn er ein entsprechendes Ausreisedokument ausfüllt.
Wird für die Einreise in das Zielland ein Visum benötigt, so ist zu überprüfen, ob der
Reisende ein gültiges Visum mitführt.
Hinweise:
• Aus Gründen der Übersichtlichkeit wurde auf die Darstellung der Akteure verzichtet.
• Die Beziehungen <uses> und <include> sind synonym zu betrachten.

• Bitte beachten Sie, dass es sich hier um eine vereinfachte Beschreibung eines solchen
Systems handelt.