1. Startseite
  2. Wissen kompakt
  3. Use Case Diagramm

Use Case Diagramm

Inhaltsverzeichnis: DefinitionElementeBeziehungenFragen aus der Praxis – DownloadHinweise

Wissen kompakt: Ein Use Case Diagramm bzw. Anwendungsfalldiagramm visualisiert Anwendungsfälle mit Beziehungen zu anderen Anwendungsfällen und anderen Systemen.

Use Case Diagramm Definition

Ein Use Case Diagramm ist eine grafische Repräsentation von Anwendungsfällen inklusive deren Beziehungen zur Umwelt und zu anderen Anwendungsfällen. Damit beschreibt es in einer hohen Abstraktion, welche Funktionen und Dienste ein System für einen Anwender bereitstellt.

Mit einem Use Case Diagramm – auch Anwendungsfalldiagramm oder Nutzfalldiagramm genannt – werden weder die Abläufe des Systems beschrieben, noch die Reihenfolge der Funktionen oder Dienste dargestellt. Für die Definition einer Ablaufreihenfolge bieten sich andere Verhaltensdiagramme der UML an, wie bspw. Aktivitäts-, Kommunikations- Zustands- oder Sequenzdiagramme. Ein Anwendungsfalldiagramm visualisiert lediglich die Zusammenhänge zwischen einer Menge von Use Cases und den involvierten Akteuren. Damit eignet es sich sehr gut zur Anforderungsanalyse, also zur Ermittlung oder Verfeinerung von Anforderungen.

Anwendungsfalldiagramm - ein Beispiel

Elemente im Use Case Diagramm

Folgende Elemente werden in einem Anwendungsfalldiagramm visualisiert:

  • Das System ist an sich kein logisches Modellelement, sondern grenzt den Kontext ab. Dieser Systemkontext wird durch einen Rahmen im Diagramm repräsentiert, in dem das System seine Funktionen und Dienste zur Verfügung stellt.
  • Der Akteur befindet sich außerhalb des Systems. Er wird als Strichmännchen gezeichnet und kann eine konkrete Person aber auch ein abstraktes Element wie bspw. ein Sensor sein. Die Verfeinerung von Akteuren kann per UML Profil erfolgen. Wird ein Akteur definiert, muss dieser auch immer mit mindestens einem Use Case in Verbindung stehen. Sind mehrere Akteure involviert, wird dies durch die Multiplizität ausgedrückt. Ohne weitere Angabe ist diese standardmäßig 1.
  • Ein Anwendungsfall wird meist als Ellipse visualisiert, wobei sein Name auch außerhalb der Ellipse stehen kann. Ein Diagramm kann mehrere Anwendungsfälle umfassen. Ist ein Use Case nur durch andere Anwendungsfälle ausführbar, wird er als abstrakt bezeichnet. Auch für Use Cases lässt sich die Multiplizität darstellen; sie gibt Auskunft darüber, wie häufig der Anwendungsfall gleichzeitig ausgeführt werden kann.
  • Zwischen Akteuren und Anwendungsfällen und zwischen Anwendungsfällen bestehen Beziehungen.
  • Mit Notizen lassen sich Informationen hinzufügen, um das Verständnis zu erhöhen. Sie werden mit einem Rechteck dargestellt, dessen obere rechte Ecke eingeknickt ist. Eine gestichelte Linie verbindet die Notiz mit dem zu erklärenden Element.

 

Beziehungen im Use Case Diagramm

Akteure und Anwendungsfälle stehen ebenso miteinander in Beziehung wie Anwendungsfälle untereinander. Grundsätzlich können vier verschiedene Beziehungen bzw. Beziehungsarten in einem Diagramm verwendet werden:
  • Assoziationsbeziehung,
  • Include-Beziehung,
  • Extend-Beziehung und
  • Generalisierung.
Beziehungen werden mit gestrichelten oder durchgezogenen Linien und Pfeilen modelliert. Die Richtung der Beziehung sollte nicht als Datenfluss verstanden werden; sie beschreibt bspw. welcher Use Case einen anderen erweitert.

Assoziationsbeziehung

Wenn ein Akteur mit einem Anwendungsfall kommuniziert, wird dies als Kommunikationsbeziehung oder Assoziation bezeichnet. Die Richtung der Linie beschreibt welcher Teil aktiv und welcher passiv ist. Fließt der Pfeil vom Akteur zum Use Case ist der Akteur aktiv und stößt den Use Case an. Fließt der Pfeil vom Use Case zum Akteur ist der Use Case aktiv und fordert den Akteur auf teilzunehmen.

Include-Beziehung

Die Include-Beziehung verbindet einen primären bzw. Basis-Use Case mit einem oder mehreren sekundären Use Cases. Die Modellierung einer Include-Beziehung bietet sich an, wenn Teile von Anwendungsfällen in mehreren Use Cases vorkommen. So lassen sich redundante Beschreibungen vermeiden. Sekundäre Use Cases werden in der Praxis häufig mit dem Stereotyp «secondary» gekennzeichnet, auch wenn die UML dies nicht vorsieht. Fünf Aspekte sind bei Include-Beziehungen zu beachten:
  • Ein inkludierter Use Case wird IMMER ausgeführt, wenn der einbindende Use Case ausgeführt wird. Der Zeitpunkt der Ausführung lässt sich jedoch im Diagramm nicht spezifizieren; hierfür bietet sich die Spezifikation an.
  • Ein inkludierter Use Case kann auch separat ausgeführt werden.
  • Primäre und sekundäre Use Cases sollten auf ähnlichen Abstraktionsniveaus beschrieben werden. Eine Detaillierung in inkludierten Use Cases gilt es zu vermeiden.
  • Beschreibungen können durch Include-Beziehungen beliebig oft verwendet werden.
  • Im Gegensatz zu einer Generalisierung werden keine Eigenschaften vererbt.
Die Enthält-Beziehung ist in einem Use Case-Diagramm durch einen gestrichelten Pfeil und der Beschriftung include dargestellt. Der Pfeil zeigt auf den inkludierten Use Case.

Extend-Beziehung

Werden Teile eines Anwendungsfalls nur unter definierten Bedingungen ausgeführt, bietet sich die Verwendung der Extend-Beziehung an. Die Extend-Beziehung erweitert also den Basis-Use Case um eine Funktionalität. Beispiel: Sie müssen jedes Jahr Ihre Einkünfte per Steuererklärung deklarieren (Basis-Use Case) und ab einer definierten Einkommenshöhe müssen Sie Belege beifügen (Erweiterung des Basis-Use Cases). Der Basis-Use Case entscheidet somit, ob der erweiternde Anwendungsfall – mit dem nicht zwingend ein Akteur verbunden sein muss – ausgeführt wird. Beide Fälle lassen sich separat ausführen. Eine Extend-Beziehung wird durch einen gestrichelten Pfeil mit der Beschriftung extend visualisiert. Der Pfeil zeigt immer auf den Basis-Use Case. Der erweiterte Anwendungsfall kann durch sogenannte Erweiterungspunkte bzw. Extension Points detailliert beschreiben werden. So lässt sich das Ereignis oder der Zeitpunkt dokumentieren, an dem das ursprüngliche Verhalten erweitert wird. Auch Bedingungen können definiert werden; tritt eine Bedingung ein, wird die Erweiterung ausgeführt. Ein Anwendungsfall kann beliebig viele Erweiterungspunkte besitzen.

Generalisierung

Es gibt zwei Ausprägungen einer Generalisierung in einem Nutzfalldiagramm:
  • Zwischen Akteuren und
  • zwischen Anwendungsfällen.
Stellen Sie sich vor, es gibt zwei Akteure: einen Obst- und einen Salatverkäufer. Da beide Eigenschaften besitzen, die sie sich teilen, lässt sich daraus ein allgemeiner Akteur ableiten: ein Verkäufer. Der Vorteil einer solchen Generalisierung liegt in der allgemeinen und abstrakten Beschreibung des neuen Akteurs Verkäufer und in der Verbindung der mit anderen Use Cases, die nur für die Spezialisten (Obst- oder Salatverkäufer) gelten. Häufig spricht man daher auch von Spezialisierung. Genauso wie Akteure lassen sich auch Anwendungsfälle generalisieren. Im Use Case Diagramm zeigt die Generalisierung immer in Richtung des generelleren Elements, daher stammt auch die Bezeichnung Generalisierung. Diese Art der Verbindung wird auch ist-eine-Art-Beziehung genannt, da die spezielleren Use Cases und Akteure alles vom generelleren Element “erben”.

Fragen aus der Praxis

Hier finden Sie einige Fragen und Antworten aus der Praxis:

Was sind Anwendungsbereiche von Use Case Diagrammen?

Use Case Diagramme werden häufig im Rahmen einer Anforderungsanalyse bzw. im Prozess des Requirements Engineerings eingesetzt. Mit ihnen lassen sich Anforderungen an ein System – bestehend aus Software und/oder Hardware -festhalten. Sie eignen sich gut zur Kommunikation und zur Analyse des Systemverhaltens, denn mit ihnen lässt sich die Funktionalität des Systems aus Anwendersicht definieren. Implementierungsdetails, wie z. B. die Systemarchitektur oder die zu verwendende Programmiersprache sind in dieser Phase noch nicht wichtig und können in nachfolgenden Schritten thematisiert werden.

In der Systemanalyse wird festgelegt, was ein System aus der Sicht der Anwender leisten soll. Die einzelnen Fälle werden als Use Cases erfasst und visualisiert. Ein Anwendungsfalldiagramm stellt somit eine Skizze des Systems dar, das den Zweck des geplanten Systems inklusive Grenzen und Schnittstellen angibt. Alle modellierten Elemente werden in einer Spezifikation dokumentiert, idealerweise auch mit alternativen Abläufen und der Verhaltensbeschreibung im Fehlerfall.

Welche Regeln bei der Gestaltung von Use Case Diagrammen sollten beachtet werden?

Bei der Gestaltung von Anwendungsfalldiagrammen empfiehlt es sich einige Regeln zu beachten:

  • Auch wenn Akteure außerhalb des Systems eingezeichnet werden, sollten sie niemals ohne Beziehung zu einem Anwendungsfall dargestellt werden. Auch isolierte Anwendungsfälle gilt es zu vermeiden.
  • Kreuzungen zwischen Beziehungen sollten vermieden werden.
  • Ein Anwendungsfalldiagramm sollte nicht zu viele Anwendungsfälle umfassen, denn sonst wird die Darstellung schnell unübersichtlich. Hier empfiehlt es sich, die Inhalte auf mehrere Anwendungsfalldiagramme zu verteilen.

 

Wann ist es sinnvoll, Anwendungsfälle auf mehrere Use Case Diagramme zu verteilen?

Use Case Diagramme bieten einen guten Blick auf ein System. Im ihnen können sich Unternehmen besser in die Lage ihrer Anwender versetzen und über die Definition von Anforderungen und in der Folge von Testfällen Lösungen für diese Anwender finden. Die Identifikation von Themen und Inhalten ist die erste Herausforderung für Unternehmen. Je mehr Mitarbeiter daran beteiligt sind und je umfangreicher ein System ist, desto aufwendiger wird dieser Schritt.

Wenn ein Anwendungsfalldiagramm durch eine Vielzahl von Anwendungsfällen unübersichtlich wird, empfiehlt es sich, Anwendungsfälle auf verschiedene Diagramme zu verteilen. Doch ist eine andere Form der Darstellung die Lösung des Problems oder ist eventuell das System als solches zu umfangreich, so dass eine Aufteilung des Systems in Teilsysteme sinnvoll sein könnte? Eine solche Entscheidung ist nicht leicht zu fällen.

Grundsätzlich bietet das Arbeiten mit Use Cases, Anwendungsfalldiagrammen, Use Case 2.0 und Misuse Cases ein umfassendes Konzept, um Systeme nicht nur im Detail sondern als Ganzes gut zu verstehen. Unternehmen müssen “lediglich” die Konzepte konsequent und passend zur Organisation anwenden.

Welche Vorteile bieten Use Case Diagramme?

Anwendungsfalldiagramme visualisieren Use Cases eines oder mehrerer Akteure und Beziehungen zwischen den Use Cases. Dabei bietet die Verwendung eine Reihe von Vorteilen:

  • Systeme werden konsequent aus Sicht der Anwender betrachtet und beschrieben, dies fördert das Verständnis und hilft bei der Kommunikation zwischen Anwendern, Systemanalytikern und Entwicklern.
  • Use Case Diagramme bieten einen zusätzlichen Blickwinkel auf das System und auf Zusammenhänge zwischen einzelnen Anwendungsfällen; daraus lassen sich konkrete Anforderungen und auch Testfälle ableiten. Auch die Verfeinerung vorhandener Anforderungen wird unterstützt.
  • Anwendungsfalldiagramme helfen bei der Strukturierung eines zu entwickelnden Systems und bei der Festlegung der Systemgrenzen. Dies ist ein wesentlicher Faktor für eine erfolgreiche Entwicklung.

 

Use Case Whitepaper Download

Wollen Sie das Use Case Whitepaper kostenlos downloaden?

Alles Wichtige über Use Cases auf einen Blick.
  • Was sind Anwendungsfälle und wie werden sie erstellt?
  • Welche Bestandteile haben Anwendungsfalldiagramme?
  • Wie funktioniert Use Case 2.0 und was sind Misuse Cases?
  • Herausforderungen und Tipps
Wissen auf 15 Seiten zum Mitnehmen.
Hinweise: Haben Sie Lust auf einen neuen Lieblings-Newsletter? Wenn Ihnen der Beitrag gefällt oder Sie darüber diskutieren wollen, teilen Sie ihn gerne in Ihrem Netzwerk. Und falls Sie Anmerkungen haben, schicken Sie uns bitte eine Nachricht. Hier finden Sie ein Video über Anwendungsfalldiagramme. Hier können Sie sich eine Use Case Vorlage kostenfrei herunterladen. Und hier finden Sie ergänzende Informationen aus unserer Rubrik Wissen kompakt:
Wissen kompakt: Wie funktioniert Use Case 2.0?

Wie funktioniert Use Case 2.0?

Wissen kompakt: Wie lassen sich Misuse Cases visualisieren?

Wie lassen sich Misuse Cases visualisieren?

Wissen kompakt: Welche Verhaltensdiagramme kennt die UML?

Welche Verhaltensdiagramme kennt die UML?