t2informatik » Wissen kompakt » Use Case Diagramm

Was ist ein Use Case Diagramm?

Welche Elemente werden mit einem Anwendungsfalldiagramm visualisiert und welche Vorteile bietet es?

Use Case Diagramm Definition

Ein Use Case Diagramm ist eine Darstellung, die das Verhalten eines Systems aus Anwendersicht visualisiert. Es ist eine grafische Repräsentation von Anwendungsfällen inklusive deren Beziehungen zur Umwelt und zu anderen Anwendungsfällen. Damit beschreibt ein Use Case Diagramm – auch Anwendungsfalldiagramm oder Nutzfalldiagramm genannt – in einer hohen Abstraktion, welche Funktionen und Dienste ein System für einen Anwender bereitstellt.

Mit einem Use Case Diagramm werden aber 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-, Zustands-, Sequenz- oder Kommunikationsdiagramme. Ein Use Case Diagramm 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.

Anwendungsbereiche

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 Use Case Diagramm 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.

Use Case Diagramm
\

Anwendungsfälle

In einem Use Case Diagramm werden die Anwendungsfälle von einem oder mehreren Akteuren sowie die Beziehungen zwischen Anwendungsfällen visualisiert.

\

Akteure

Hier im Beispiel sehen Sie zwei Akteure. Der erste Akteur ist ein Kunde, der Essen bestellen möchte. Der zweite Akteur ist ein System, das die Bestellbestätigung verschickt.

\

Rahmen

Das System, das einen Dienst für den Akteur bereitstellt, wird mit einem Rahmen gekennzeichnet.

\

Beziehungen

Die verschiedenen Anwendungsfälle stehen miteinander in Beziehung. Hier im Diagramm sehen Sie Assoziationen, Generalisierungen, sowie eine Include- und eine Extend-Beziehung. Auch Notizen lassen sich verwenden.

\

Wiederverwendung

Verwenden Sie zur Erstellung eine Datenbank-basierte Software, dann können Sie meist mit einem Klick aus dem visualisierten Anwendungsfall direkt zur Use Case Spezifikation navigieren. Das Arbeiten mit Use Cases wird dadurch deutlich leichter.

Vorteile von Use Case Diagrammen

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.
  • Use Case Diagramme 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 - t2informatik Download Vorschau

Jetzt das Use Case Whitepaper kostenlos downloaden.

Alles Wichtige über Use Cases, Use Case Diagramme, Use Case Diagramme, Use Case 2.0 und Misuse Case auf 14 Seiten zum Mitnehmen.

Hier klicken »

Use Case Diagramme im Detail

Elemente im Anwendungsfalldiagramm

Folgende Elemente werden in einem Use Case Diagramm visualisiert:

  • das System,
  • der Akteur bzw. die Akteure,
  • die Anwendungsfälle,
  • die Beziehungen zwischen Akteuren und Anwendungsfällen und zwischen Anwendungsfällen,
  • sowie Notizen.

Das System

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

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.

Die Anwendungsfälle

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.

Die Beziehungen

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: Assoziation, 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.

Die 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.

Die 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:

  1. 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.
  2. Ein inkludierter Use Case kann auch separat ausgeführt werden.
  3. Primäre und sekundäre Use Cases sollten auf ähnlichen Abstraktionsniveaus beschrieben werden. Eine Detaillierung in inkludierten Use Cases gilt es zu vermeiden.
  4. Beschreibungen können durch Include-Beziehungen beliebig oft verwendet werden.
  5. 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.

Die 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.

Die Generalisierung

Es gibt zwei Ausprägungen einer Generalisierung in einem Nutzfalldiagramm:

  1. Zwischen Akteuren und
  2. 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“.

Notizen

Mit Notizen lassen sich Informationen hinzufügen, um das Verständnis zu erhören. Sie werden mit einem Rechteck dargestellt, dessen obere rechte Ecke eingeknickt ist. Eine gestichelte Linie verbindet die Notiz mit dem zu erklärenden Element.

Style Guide

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 empiehlt es sich, die Inhalte auf mehrer Use Case Diagramme zu verteilen.

Wollen Sie mehr über Use Cases erfahren?

Dann werfen Sie einfach einen Blick auf die allgemeine Beschreibung von Use Cases, die Idee von Use Case 2.0 oder die Vorteile von Misuse Cases.

Herausforderungen für Unternehmen

Die Darstellung von Anwendungsfällen

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 Use Case Diagramm 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.

Gerne stellen wir Ihnen Wissen, Erfahrung und 100% Leidenschaft für Ihre Softwareentwicklung und Anforderungsanalyse zur Verfügung. Wir helfen Ihnen bei der Beschreibung von Use Cases und der Erhebung, Strukturierung und Verwaltung von Anforderungen. Dabei achten wird auf Konsistenz, Vollständigkeit und Nachvollziehbarkeit. Wir unterstützen Sie beim Identifizieren von technischen Zusammenhängen und berücksichtigen Stakeholder, Ziele und Randbedingungen. Und wir planen und steuern Ihre Projekte mit diesen Anforderungen auf Basis definierter Prozesse.

Hier erfahren Sie mehr zum Thema Softwareentwicklung »

Weitere Details und Hintergründe

Share This