Anwendungsfall (UML)

Anwendungsfall (UML)

Ein Anwendungsfall (engl. use case) ist ein Modellelement in der Unified Modeling Language (UML), einer Modellierungssprache für Software und andere Systeme.

Inhaltsverzeichnis

Beschreibung

Anwendungsfälle sind eine Technik für die Dokumentation von Anforderungen an ein Softwaresystem, die ursprünglich von Ivar Jacobson unabhängig von der Unified Modeling Language beschrieben wurde, die er aber als Mitentwickler in die Modellierungssprache einfließen ließ. Auch die UML 2, als Weiterentwicklung der UML 1.x, behielt Anwendungsfälle bei.

Ein Anwendungsfall in der UML 2 ist die Deklaration eines Verhaltens, das ein modelliertes System nach außen anbietet. Er spezifiziert eine Menge von Aktionen, die ein System ausführen muss, um ein beobachtbares Resultat zu generieren, das für einen oder mehrere Akteure von Bedeutung ist, etwa weil sie damit ein fachlich motiviertes Ziel erreichen. Die UML 2 vermeidet in diesem Zusammenhang jedoch den Begriff System und verwendet stattdessen den Begriff Subjekt (subject). Sie will damit ausdrücken, dass ein Anwendungsfall das erforderliche Verhalten einer Vielzahl von Modellelementen der UML 2 deklarieren kann, zum Beispiel jenes einer Klasse, einer Komponente oder eines Knotens. Sind mehrere Subjekte einem Anwendungsfall zugeordnet, deklariert dieser das erwartete Gesamtverhalten aller beteiligten Subjekte.

Per definitionem deklariert ein Anwendungsfall Verhalten, das nach außen sichtbar ist. Die Elemente, die das Verhalten von außen „sehen“, die es also anstoßen oder von seinen Resultaten abhängig sind, nennt man in der UML 2 Akteure. In der UML 2 modelliert man die Beziehung zwischen Anwendungsfällen und Akteuren mit Hilfe von Assoziationen.

Das Modellelement Anwendungsfall in der UML 2 kann eigentlich nur deklarieren, dass ein Verhalten mit einem bestimmten Namen erforderlich ist, nicht aber wie dieses Verhalten im Detail aussehen soll. Falls weitere Einzelheiten zu diesem Verhalten (zum Beispiel einzelne Schritte im Ablauf, alternative Abläufe oder Ausnahmefälle) zu spezifizieren sind, muss ein Modellierer auf ergänzende Techniken zurückgreifen. Oft werden die Details des geforderten Verhaltens außerhalb der UML 2 in einem Textdokument festgehalten. Weil das Modellelement Anwendungsfall eine Spezialisierung einer aktiven Klasse ist, kann ihm aber auch eine Verhaltensbeschreibung zugeordnet werden, die die Detailanforderungen an das Verhalten festhält.

Notationsbeispiele

Notation eines Anwendungsfalls als Oval
Notation eines Anwendungsfalls als Rechteck

Die beiden Darstellungen links zeigen zwei Möglichkeiten, wie ein Anwendungsfall mit dem Namen CD erstellen grafisch dargestellt werden kann.

Beispiel einer Klasse Mobilfunkbetreiber mit zwei Anwendungsfällen SMS verschicken und Fotomessage verschicken

Das Beispiel links zeigt eine Klasse, die als Subjekt für zwei Anwendungsfälle dient: dem Anwendungsfall SMS verschicken und dem Anwendungsfall Fotomessage verschicken. Je ein Akteur Sender und Empfänger ist an den beiden Anwendungsfällen beteiligt.

Anwendungsfälle wiederverwenden

Die UML 2 stellt drei Techniken zur Verfügung, um einen Anwendungsfall bei der Deklaration eines anderen Anwendungsfalls wiederzuverwenden. Ein Anwendungsfall kann einen anderen Anwendungsfall spezialisieren, importieren oder erweitern.

Spezialisieren eines Anwendungsfalls

Zwei Anwendungsfälle, die einen dritten Anwendungsfall spezialisieren

Zwischen zwei Anwendungfällen kann eine Generalisierungsbeziehung existieren. Ausgedrückt wird damit, dass der spezialisierte Anwendungsfall das Verhalten des allgemeinen Anwendungsfalls überschreibt.

Importieren eines Anwendungsfalls

Ein Anwendungsfall, der zwei andere Anwendungsfälle importiert

Ein Anwendungsfall kann einen oder mehrere andere Anwendungsfälle importieren. Das bedeutet, dass das Verhalten des Anwendungsfalls zwingend das Verhalten des importierten Anwendungsfalls miteinschließt. Wo genau das Verhalten des importierten Anwendungsfalls eingefügt wird, geht aus der Notation für Anwendungsfälle nicht hervor. Wenn dieser Punkt (zum Beispiel für den Zweck des Modells) wichtig ist, muss er mit anderen Mitteln wie zum Beispiel einer detaillierten Verhaltensspezifikation oder mit einem Textdokument, das außerhalb der UML 2 erstellt wird, festgehalten werden.

Die Importbeziehung zwischen zwei Anwendungsfällen ist mit einer Abhängigkeitsbeziehung modelliert. Das Schlüsselwort «include» grenzt die Importbeziehung von anderen Abhängigkeitsbeziehungen ab. Das Pfeilende wird beim importierten Anwendungsfall gezeichnet.

Erweitern eines Anwendungsfalls

Ein Anwendungsfall mit einem Erweiterungspunkt. Musik-CD erstellen benutzt das Verhalten von CD beschriften nur, wenn der Kunde eine Beschriftung wünscht.

Ein Anwendungsfall kann einen oder mehrere andere Anwendungsfälle erweitern. Jeder Anwendungsfall kann eine Liste von so genannten Erweiterungspunkten definieren. Wie in der Abbildung links ersichtlich, listet man die Erweiterungspunkte im inneren Bereich des Symbols für Anwendungsfälle auf. Ein Anwendungsfall erweitert nun einen anderen Anwendungsfall, indem er sich an einen von dessen Erweiterungspunkten „andockt“ und dabei eine Bedingung angibt, unter der er dessen Verhalten an dieser Stelle erweitert.

Die Erweiterungsbeziehung zwischen zwei Anwendungsfällen ist mit einer Abhängigkeitsbeziehung modelliert. Das Schlüsselwort «extend» grenzt die Erweiterungsbeziehung von anderen Abhängigkeitsbeziehungen ab. Das Pfeilende wird beim Anwendungsfall gezeichnet, der den Erweiterungspunkt zur Verfügung stellt.

Siehe auch


Wikimedia Foundation.

Игры ⚽ Поможем сделать НИР

Schlagen Sie auch in anderen Wörterbüchern nach:

  • UML — In diesem Artikel oder Abschnitt fehlen folgende wichtige Informationen: Kritik (vgl. engl. Artikel); Bedeutung der UML; aktueller Stand (November 2007 wurde Version 2.1.2 vorgelegt, wie wurde sie aufgenommen?) Du kannst Wikipedia helfen, indem… …   Deutsch Wikipedia

  • Anwendungsfall-Diagramm — Strukturdiagramme der UML Klassendiagramm Komponentendiagramm Kompositionsstrukturdiagramm Objektdiagramm Paketdiagramm Verteilungsdiagramm Verhaltensdiagramme der UML …   Deutsch Wikipedia

  • Anwendungsfall-Modell — Strukturdiagramme der UML Klassendiagramm Komponentendiagramm Kompositionsstrukturdiagramm Objektdiagramm Paketdiagramm Verteilungsdiagramm Verhaltensdiagramme der UML …   Deutsch Wikipedia

  • Anwendungsfall — Beispiel eines Anwendungsfalldiagramms in der Unified Modeling Language. Die beiden Anwendungsfälle SMS verschicken und Fotomessage verschicken eines Mobilfunkbetreibers sind spezifiziert. Ein Anwendungsfall (engl. use case) bündelt alle… …   Deutsch Wikipedia

  • Aggregation (UML) — Eine Assoziation (engl. association) ist ein Modellelement in der Unified Modeling Language (UML), einer Modellierungssprache für Software und andere Systeme. Beispiel für eine binäre Assoziation Eine Assoziation beschreibt eine Beziehung… …   Deutsch Wikipedia

  • Komposition (UML) — Eine Assoziation (engl. association) ist ein Modellelement in der Unified Modeling Language (UML), einer Modellierungssprache für Software und andere Systeme. Beispiel für eine binäre Assoziation Eine Assoziation beschreibt eine Beziehung… …   Deutsch Wikipedia

  • Akteur (UML) — Generalisierung zwischen einem Akteur Mitarbeiter und einem Akteur Kundenberater Beispiel einer Klasse Mobilfunkbetreiber …   Deutsch Wikipedia

  • Innovator (UML-Werkzeug) — Innovator Entwickler: MID GmbH Aktuelle Version: 10.0.3 (19. Oktober 2008) Betriebssystem: ab Windows 2000, ab SuSE Linux 10.3, ab Solaris 8, (Red Hat auf Anfrage) Kategorie: UML Werkzeug …   Deutsch Wikipedia

  • Abhängigkeitsbeziehung (UML) — Eine Abhängigkeitsbeziehung (engl. Dependency) ist ein Modellelement in der Unified Modeling Language (UML), einer Modellierungssprache für Software und andere Systeme. Inhaltsverzeichnis 1 Beschreibung 2 Arten von Abhängigkeitsbeziehungen 2.1… …   Deutsch Wikipedia

  • Interaktionsdiagramm — In diesem Artikel oder Abschnitt fehlen folgende wichtige Informationen: Kritik (vgl. engl. Artikel); Bedeutung der UML; aktueller Stand (November 2007 wurde Version 2.1.2 vorgelegt, wie wurde sie aufgenommen?) Du kannst Wikipedia helfen, indem… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”