2. Mod - 2.4 OOA: Use-Case-Diagramme Flashcards

1
Q

Nenne 3 Prinzipien und erkläre was damit gemeint ist

A

encapsulate what varies: alles kapseln, was sich verändern kann

understand requirements: Verantwortung des Entwicklers, das System zu verstehen

code to interface rather that to an implementation: Code einer Klasse soll so unabhängig wie möglich vom Code der anderen Klassen sein

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

In welcher Sprache sollte Diagramm geschrieben sein?

A

Sprache des Anwenders

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Wer kann Informationsquelle sein?

A

Kunden und zukünftige Anwender (Mitarbeiter Kunden oder Kunden unserer Kunden)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Was ergibt sich aus Kundengesprächen und was kann daraus abgeleitet werden?

A

Was System können soll

Darauf werden dann Anforderungen abgeleitet

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Was machen use-Case-Diagramme?

A
  • auf sehr hoher Ebene Auskunft geben über Funktion eines Systems
  • abstrahieren von Details
  • geben nur Auskunft darüber, WAS das System tut, nicht WIE
  • definieren keine Reihenfolge der Use-Case
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Was beschreiben Use-Cases?

A

Interaktion zwischen einem Akteur und einem System

also die Funktionalität

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Was stellt das enthaltene Rechteck dar?

A

die Systemgrenzen

- damit ist klar worauf sich das Diagramm bezieht

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Aus welchen Elementen besteht ein Use-Case-Diagramm unter anderem, beschreibe sie

A

Akteur (Actor): Rolle, die externer Benutzer oder externes System einnimmt, wenn er mit System interagiert
Akteur steht immer außerhalb des betrachteten Systems
Akteur generische Einheit (Kunde, nicht “Herr MaierGotschalkPeter”)

Anwendungsfall (Use Case): Funktionalität des betrachteten Systems, die ein Akteur nutzt.
Use Case entsteht aus einer Menge von Aktionen, bringt Akteur in irgendeiner Form einen Nutzen

Assoziation: Beziehungen zwischen Akteur und Anwendungsfall, den er nutzt.
gerichtete Assoziation (mit Pfeilspitze) zeigt an, ob Akteur den Use-Case initiieren kann, ungerichtete Assoziation lässt dies offen
Multiplizitäten können wir zwischen Klassen angegeben werden
Geben an, wie viele Objekte bei Aufruf des Use-Cases von wie vielen Akteuren bearbeitet werden kann

Beziehungen zwischen Anwendungsfällen: Anwendungsfall wird immer (<>) oder unter bestimmten Bedingungen (<>) in einen anderen eingebunden
Sinnvoll wenn ein Use-Case einen anderen erweitert oder wenn gemeinsame Funktionalität in mehreren Use-Cases verwendet wird,
keinen Zyklus bilden

Generalisierungen: können sinnvoll sein und werden mit Generalisierungspfeilen wie bei Klassen gezeichnet
Generalisierungen zwischen Use Cases möglich, aber eher unüblich

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Granularität von Anwendungsfällen. Worauf muss geachtet werden

A

Für jedes ovale Symbol im Use-Case-Diagramm wird ein Use-Case-Dokument erstellt
Sollte abwägen:
Übersichtlichkeit des Diagramms
Überschaubarkeit des Use-Case-Dokument
Überschneidungsfreiheit der Use-Case-Dokuemente

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Was hat bedeutet Alistair Cockburns Coffe Break Test “After I get done with this, I can take a coffee break”

A

Ein Use-Case ist zu umfangreich wenn ein Akteur während des Use-Cases eine Kaffeepause machen würde

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Aus welchen Elementen besteht ein Use-Case-Diagramm unter anderem

A
Akteur
Anwendungsfall
Assoziation
Beziehungen zwischen Anwendungsfällen
Generalisierungen (unüblich)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Mögliche Fragen zum Erstellen von Use Case Diagrammen

A

Akteure:
Welche Personen und externe Systeme sind die Akteure?
Akteure stehen außerhalb des zu modellierenden Systems

Anwendungsfälle: WElche Anwendungsfälle gibt es?
Anwendungsfälle haben eun Ergebnis für den Akteur: Sie werden von ihm initiiert

Assoziationen:
Welche Akteuren stehen welche Anwendungsfälle zur Verfügung?

include/extend: In welcher Beziehung stehen die Anwendungsfälle zueinander?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Können externe Systeme als Akteure auftreten? Falls ja, wie kommunizieren Sie mit dem zu modellierenden System?

A

Ja,

über eine Schnittstelle

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Kann das zu modellierende System selbst ein Akteur in seinem eigenen Use-Case-Diagramm sein?

A

NIEMALS

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Wie sollten nicht menschliche Akteure dargestellt werden?

Sind eigene Symbole bei der Verwendung von nicht menschlichen Akteuren okay?

A

Als Rechteck statt als Strichmännchen

Ja, sie müssen aber aussagekräftig sein oder einfach als Rechteck

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

(<>)und (<>) sorgen dafür das Use-Case-Diagramme als Ablaufplan missbraucht werden. Was sollte hier in der UML aber anstatt verwendet werden?

A

Aktivitätsdiagramme

17
Q

Vollständigkeit über Zweckmäßigkeit oder anders rum?

A

UML verlangt keine Vollständigkeit sondern Zweckmässigkeit

18
Q

Wovon hängt es ab ob eine Beziehung ins Diagramm gehört oder nicht?

A

Von Einsatzzweck und Zielgruppe des Diagramms

19
Q

Wie kann man das Use Case Diagramm auf Vollständigkeit prüfen?

A

Anhand der ersten “Feauture List”

20
Q

Wofür ist der Use-Case zuständig im Sicht auf die Aufteilung der Gesamtaufgabe?

A

Anhaltspunkte, wie Gesamtaufgabe sinnvoll in kleinere Pakete mit unterschiedlichen Zuständigkeiten unterteilen kann.
Nicht zwingend. oft andere Kriterien wichtiger

21
Q

Was ist SysML?

A

Erweiterung einer Teilmenge der UML Diagramme

22
Q

Was ist das Ziel von SysML?

A

Detaillierte Darstellung von Modellaspekten außerhalb der eigentlichen Softwareentwicklung
Am bedeutendsten sind davon wohl die Anforderungsdiagramme

23
Q

Was erlauben Anforderungsdiagramme?

A

erlauben Unterschied zu Use-Case-Diagrammen nicht nur die Darstellung von Zusammenhängen zwischen Use-Case und Akteuren, sondern allgemeiner zwischen Use-Cases, Test-Cases, formalen Spezifikationen und Codeteilen