UML-Anwendungsfalldiagramme: Richtlinien

In Visual Studio Ultimate können Sie ein Anwendungsfalldiagramm zeichnen, um zusammenzufassen, wer Ihre Anwendung oder das System verwendet und was die Benutzer damit machen können. Um ein UML-Anwendungsfalldiagramm zu erstellen, klicken Sie im Menü Architektur, auf Neues Diagramm.

Unter Organisieren von Funktionen in Anwendungsfälle finden Sie eine Videodemonstration.

Mithilfe eines Anwendungsfalldiagramms können Sie Folgendes erläutern und kommunizieren:

  • Die Szenarios, in denen das System oder die Anwendung mit Personen, Organisationen oder externen Systemen interagiert.

  • Die Ziele, bei deren Erreichung die Akteure unterstützt werden.

  • Den Umfang des Systems.

Ein Anwendungsfalldiagramm zeigt die Details der Anwendungsfälle nicht an: Es fasst nur einige Beziehungen zwischen Anwendungsfällen, Akteuren und Systemen zusammen. Beispielsweise zeigt das Diagramm nicht die Reihenfolge an, in der Schritte ausgeführt werden, um die Ziele der einzelnen Anwendungsfälle zu erreichen. Sie können diese Details in anderen Diagrammen und Dokumenten beschreiben, die Sie mit jedem Anwendungsfall verknüpfen können. Weitere Informationen finden Sie in diesem Thema unter Ausführliches Beschreiben von Anwendungsfällen.

Die Beschreibungen, die Sie für Anwendungsfälle angeben, verwenden verschiedene Begriffe, die sich auf die Domäne beziehen, in der das System ausgeführt wird, z. B. Sale (Angebot), Menu (Speisekarte), Customer (Kunde) usw. Es ist wichtig, diese Begriffe und ihre Beziehungen eindeutig zu definieren. Dafür können Sie ein UML-Klassendiagramm verwenden. Weitere Informationen finden Sie unter UML-Klassendiagramme: Richtlinien.

Bei Anwendungsfällen geht es nur um die Funktionsanforderungen eines Systems. Andere Anforderungen wie Geschäftsregeln, Servicequalitätsanforderungen und Implementierungseinschränkungen müssen separat dargestellt werden. Die Architektur und interne Details müssen ebenfalls gesondert beschrieben werden. Weitere Informationen zur Definition der Benutzeranforderungen finden Sie unter Modellieren von Benutzeranforderungen.

Die in diesem Thema verwendeten Beispiele beziehen sich auf eine Website, auf der Kunden Gerichte bei den örtlichen Restaurants bestellen können.

Elemente in einem Anwendungsfalldiagramm

  • Ein Akteur (1) ist eine Klasse von Person, Organisation, Gerät oder externer Softwarekomponente, die mit dem System interagiert. Beispielakteure sind Customer (Kunde), Restaurant, Temperature Sensor (Temperatursensor), Credit Card Authorizer (Kreditkartenprüfung).

  • Ein Anwendungsfall (2) stellt die Aktionen dar, die von einem oder mehreren Akteuren zur Erreichung eines bestimmten Ziels ausgeführt werden. Beispielanwendungsfälle sind Order Meal (Essensbestellung), Update Menu (Speisekarte aktualisieren) und Process Payment (Zahlung verarbeiten).

    In einem Anwendungsfalldiagramm sind Anwendungsfälle (3) den Akteuren zugeordnet, die diese ausführen.

  • Das System (4) steht für das, was Sie entwickeln. Beispielsweise kann es sich um eine kleine Softwarekomponente handeln, deren Akteure einfach nur andere Softwarekomponenten sind. Es kann sich auch um eine vollständige Anwendung oder um eine große verteilte Suite von Anwendungen handeln, die über viele Computer und Geräte hinweg bereitgestellt werden. Beispiele für Subsysteme sind "Meal Ordering Website", "Meal Delivery Business" und "Website Version 2".

    Ein Anwendungsfalldiagramm kann anzeigen, welche Anwendungsfälle vom System oder seinen Subsystemen unterstützt werden.

In diesem Thema

Grundlegende Schritte zum Zeichnen von Anwendungsfalldiagrammen

Zeichnen von Akteuren und Anwendungsfällen

Ausführliches Beschreiben von Anwendungsfällen

Strukturieren von Anwendungsfällen

Verwenden von Subsystembegrenzungen

Grundlegende Schritte zum Zeichnen von Anwendungsfalldiagrammen

Tipp

Eine Beschreibung der ausführlichen Schritte zur Erstellung der Modellierungsdiagramme finden Sie unter Gewusst wie: Bearbeiten eines UML-Modells und Bearbeiten von Diagrammen.

So erstellen Sie ein neues Anwendungsfalldiagramm

  1. Klicken Sie im Menü Architektur auf Neues Diagramm.

  2. Klicken Sie unter Vorlagen auf UML-Anwendungsfalldiagramm.

  3. Benennen Sie das Diagramm.

  4. Wählen Sie unter Zu Modellierungsprojekt hinzufügen ein in der Projektmappe vorhandenes Modellierungsprojekt, oder wählen Sie Neues Modellierungsprojekt erstellen, und klicken Sie dann auf OK.

So zeichnen Sie ein Anwendungsfalldiagramm

  1. Ziehen Sie Subsystembegrenzungen aus der Toolbox in das Diagramm, um entweder das ganze System oder seine Hauptkomponenten darzustellen.

    • Sie können ein Anwendungsfalldiagramm ohne Systembegrenzungen zeichnen, wenn Sie nicht beschreiben möchten, welche Anwendungsfälle vom System oder seinen Komponenten unterstützt werden.

    • Ziehen Sie die Ecke eines Systems, um es bei Bedarf größer zu machen.

    • Benennen Sie es mit einem aussagekräftigen Namen.

  2. Ziehen Sie Akteure aus der Toolbox in das Diagramm (Platzierung außerhalb aller Systembegrenzungen).

    • Akteure stellen Klassen von Benutzern, Organisationen und externen Systemen dar, die mit dem System interagieren.

    • Benennen Sie diese um. Beispiel: Customer, Restaurant, Credit card agency (Kunde, Restaurant, Kreditkartenanbieter).

  3. Ziehen Sie Anwendungsfälle aus der Toolbox auf die entsprechenden Systeme.

    • Anwendungsfälle stellen die Aktivitäten dar, die Akteure mithilfe des Systems ausführen.

    • Benennen Sie diese um, indem Sie Titel verwenden, die für die Akteure verständlich wären. Verwenden Sie keine Titel, die sich auf Ihren Code beziehen. Beispiel: Order Meal, Pay for Meal, Deliver Meal (Gericht bestellen, Gericht bezahlen, Gericht liefern).

    • Beginnen Sie mit Haupttransaktionen wie Order Meal, und verschieben Sie kleinere Interaktionen wie Select Menu Item (Gericht auswählen) auf einen späteren Zeitpunkt.

    • Platzieren Sie jeden Anwendungsfall im System oder im unterstützenden Hauptsubsystem. (Ignorieren Sie dabei alle Fassaden oder Komponenten, die nur dem Herstellen der Verbindung zum Benutzer dienen.)

    • Sie können einen Anwendungsfall außerhalb der Systembegrenzung zeichnen, um anzugeben, dass dieser nicht vom System unterstützt wird, zum Beispiel in einer bestimmten Version.

  4. Klicken Sie in der Toolbox auf Zuordnung, auf einen Anwendungsfall und dann auf einen Akteur, der am Anwendungsfall beteiligt ist. Verknüpfen Sie alle Akteure auf diese Weise mit ihren Anwendungsfällen.

  5. Strukturieren Sie die Anwendungsfälle mit den Beziehungen Einschließen, Erweitern und Generalisierung. Klicken Sie zum Erstellen dieser Links jeweils auf das Tool und dann auf den Quellanwendungsfall und auf das Ziel. Informationen finden Sie im Abschnitt Strukturieren von Anwendungsfällen.

  6. Beschreiben Sie die Anwendungsfälle ausführlicher. Informationen finden Sie im Abschnitt Ausführliches Beschreiben von Anwendungsfällen.

  7. Zeichnen Sie separate Diagramme für verschiedene Subsysteme oder andere Gruppen verwandter Anwendungsfälle. Alle Diagramme in einem Modellierungsprojekt sind Ansichten des gleichen Modells.

Zeichnen von Akteuren und Anwendungsfällen

Der Hauptzweck eines Anwendungsfalldiagramms besteht darin anzuzeigen, wer mit dem System interagiert und welche Hauptziele erreicht werden sollen.

  • Erstellen Sie Akteure, um Klassen von Personen, Organisationen, anderen Systemen, Software oder Geräten darzustellen, die mit dem System oder Subsystem interagieren.

    • Informationen zum Zeichnen von Akteuren und anderen Elementen finden Sie unter Gewusst wie: Bearbeiten eines UML-Modells und Bearbeiten von Diagrammen.

    • Geben Sie für jeden Satz mit Zielen die Akteure nach Typ oder Rolle an, auch wenn die physischen Personen oder Entitäten ggf. gleich sind. "Restaurant" und "Customer" sind z. B. separate Akteure, obwohl ein Restaurantmitarbeiter manchmal auch ein Kunde sein kann.

  • Erstellen Sie Anwendungsfälle für jedes einzelne Ziel, das die einzelnen Akteure mithilfe des Systems erreichen möchten.

    • Benennen und beschreiben Sie die Anwendungsfälle in Worten, die der Akteur verstehen würde, und verwenden Sie keine Implementierungsbegriffe.
  • Verwenden Sie Zuordnungen, um Akteure mit Anwendungsfällen zu verknüpfen.

Vererbung zwischen Akteuren

Anwendungsfalldiagramm mit Vererbung

Sie können zwischen Akteuren einen Link vom Typ Generalisierung zeichnen. Der spezialisierte Akteur, wie "Club Customer" (Clubkunde) im Beispiel, erbt die Anwendungsfälle des generalisierten Akteurs, z. B. "Customer" (Kunde). Die Pfeilspitze sollte auf den allgemeineren Akteur zeigen, z. B. "Customer" (Kunde). Zeigen Sie beim Erstellen des Links zuerst auf den spezialisierteren Akteur.

Der spezialisierte Akteur kann über seine eigenen zusätzlichen Anwendungsfälle verfügen, die für die anderen Akteure nicht verfügbar sind.

Warnung

Sie sollten keine Schleifen aus Generalisierungsbeziehungen erstellen, die dazu führen, dass ein Akteur sich selbst generalisiert. Schleifen können zu Fehlern führen.

Alternative Akteursymbole

Sie können benutzerdefinierte Symbole verwenden, um anstelle des standardmäßigen Strichmännchens einen Akteur darzustellen. Sie können es z. B. so ändern, dass es wie ein Gerät , ein Restaurant, eine Bank usw. aussieht.

So ändern Sie die Darstellung eines Akteurs

  1. Klicken Sie mit der rechten Maustaste auf den Akteur, und klicken Sie dann auf Eigenschaften.

    Das Eigenschaftenfenster wird angezeigt.

  2. Legen Sie die Image Path-Eigenschaft auf den Speicherort einer Bilddatei fest.

    • Sie können verschiedene Bildformate wie GIF, JPG und BMP verwenden.

    • Verwenden Sie eine Datei, die in der Projektmappe oder in der Quellcodeverwaltung des Projekts enthalten ist, damit diese auch dann noch verfügbar ist, wenn die Projektmappe verschoben oder kopiert wird.

  3. Um diese Darstellung in anderen Anwendungsfalldiagrammen zu replizieren, kopieren Sie den Akteur und fügen ihn in ein anderes Diagramm ein.

    • Die Änderung des Bilds gilt nur für die Ansicht in einem bestimmten Diagramm. Sie gilt nicht für das zugrunde liegende Modellelement. Wenn Sie den Akteur aus dem UML-Modell-Explorer in ein anderes Diagramm ziehen, wird er als standardmäßiges Strichmännchen angezeigt.

Multiplizitäten zwischen Akteuren und Anwendungsfällen

Die Zuordnung zwischen einem Akteur und einem Anwendungsfall kann an jedem Ende eine Multiplizität anzeigen.

Anwendungsfall 1:1 mit Akteur

Tipp

Die Multiplizitäten einer Zuordnung in einem Anwendungsfalldiagramm sind ausgeblendet, wenn beide den Wert 1 aufweisen.

Standardmäßig hat jede Multiplizität den Wert 1. Bei einer strengen Auslegung des Modells bedeutet eine Multiplizität von 1, dass z. B. nur jeweils ein Kunde an der Bestellung eines Gerichts beteiligt ist und dass jeder Kunde nur jeweils ein Gericht bestellt.

Sie können diese Multiplizitäten ändern.

Beispiel:

Anwendungsfall mit m:n-Multiplizität

  • Um anzugeben, dass mehrere Akteure der gleichen Klasse an einem einzelnen Vorkommen eines Anwendungsfalls beteiligt sein können, legen Sie die Multiplizität am Akteursende der Zuordnung auf 1..* fest.

    In der Abbildung können ein oder mehrere Restaurants an der Erledigung der gleichen Essensbestellung beteiligt sein.

  • Um anzuzeigen, dass jeder Akteur gleichzeitig an mehreren Vorkommen eines Anwendungsfalls beteiligt sein kann, legen Sie die Multiplizität am Anwendungsfallende der Zuordnung auf * fest.

    In der Abbildung kann jedes Restaurant gleichzeitig an der Erledigung von mehr als einer Bestellung arbeiten.

So legen Sie Multiplizitäten für eine Zuordnung fest

  1. Klicken Sie mit der rechten Maustaste auf die Zuordnung, und klicken Sie dann auf Eigenschaften.

  2. Erweitern Sie entweder Erste Rolle oder Zweite Rolle.

    Rolle steht für das Element an einem Ende der Zuordnung.

  3. Legen Sie die "Multiplicity"-Eigenschaft fest, indem Sie in der Liste eine Option auswählen:

    • 1, um anzugeben, dass genau eine Instanz dieser Rolle an jedem Link teilnimmt.

    • 1.. *, um anzugeben, dass eine oder mehrere Instanzen dieser Rolle an jedem Link teilnehmen.

    • 0..1, um anzugeben, dass die Teilnahme optional ist.

    • *, um anzugeben, dass keine oder mehr Instanzen dieser Rolle am Link teilnehmen.

Tipp

Viele Teams geben in Anwendungsfalldiagrammen keine Informationen zur Multiplizität an und behalten für die Multiplizitäten den Standardwert 1 bei. Stattdessen geben sie die Informationen in separaten Beschreibungen der Anwendungsfälle an. In diesem Fall werden alle Multiplizitäten in den Anwendungsfalldiagrammen ausgeblendet.

Verwenden eines Akteurs oder eines Anwendungsfalls in mehreren Diagrammen

Sie können die gleichen Akteure und Anwendungsfälle in mehreren Diagrammen anzeigen. Beispiel:

  • Sie können in unterschiedlichen Diagrammen die verschiedenen Anwendungsfälle beschreiben, an denen ein Akteur beteiligt ist.

  • Sie können ein Diagramm verwenden, um die Akteure und Subsysteme anzuzeigen, denen ein Anwendungsfall zugeordnet ist, und ein anderes Diagramm, um anzuzeigen, wie der Anwendungsfall in enthaltene und erweiterte Anwendungsfälle unterteilt ist.

So zeigen Sie den gleichen Akteur bzw. den gleichen Anwendungsfall in verschiedenen Diagrammen an

  1. Erstellen Sie den Akteur bzw. den Anwendungsfall in einem Diagramm.

  2. Erstellen Sie ein weiteres Anwendungsfalldiagramm.

  3. Ziehen Sie einen Akteur oder Anwendungsfall aus dem Modell-Explorer in das neue Diagramm.

    Tipp

    Wenn Sie einen bereits zugeordneten Akteur und Anwendungsfall im neuen Diagramm anordnen, wird die Zuordnung dazwischen im dem neuen Diagramm automatisch angezeigt.

Ausführliches Beschreiben von Anwendungsfällen

Ein Anwendungsfall stellt Folgendes dar:

  • Ein Ziel eines Akteurs bei der Verwendung des Systems, z. B. Buy a Meal (Gericht kaufen); und

  • Ein oder mehrere Szenarien, also Sequenzen von Schritten zur Erreichung eines Ziels, z. B.: {Order Meal, Pay, Deliver} (Gericht bestellen, Bezahlen, Liefern). Zusätzlich zu Erfolgsszenarios kann es auch mehrere Szenarios für Ausnahmen oder Fehler geben, z. B. Kreditkarte abgelehnt.

Ein Anwendungsfall kann in verschiedenen Ausführlichkeitsgraden beschrieben werden. In einer frühen Phase des Entwurfs ist der Name im Anwendungsfalldiagramm ausreichend. Später können ausführlichere Beschreibungen der Szenarios geschrieben werden.

In Visual Studio Ultimate können Sie einen Anwendungsfall auf verschiedene Arten beschreiben. Anwendungsfälle können einzeln oder gemeinsam verwendet werden:

  • Verknüpfen Sie den Anwendungsfall mit einem oder mehreren Diagrammen im Projekt.

    • Mit einem Aktivitätsdiagramm können Sie einen komplexeren Prozess mit Schleifen, Verzweigungen und parallelen Threads erläutern. Darin kann auch der Fluss der Daten zwischen Teilen des Prozesses angezeigt werden. Weitere Informationen finden Sie unter UML-Aktivitätsdiagramme: Richtlinien.

    • Mit einem Sequenzdiagramm können Sie eine komplexe Reihe von Interaktionen zwischen verschiedenen Akteuren erklären. Außerdem können Sie diese Art von Diagramm verwenden, um darzustellen, was im System als Reaktion auf die einzelnen Anwendungsfälle ausgeführt wird. Weitere Informationen finden Sie unter UML-Sequenzdiagramme: Richtlinien.

  • Verknüpfen Sie den Anwendungsfall mit einer OneNote-Seite, einem OneNote-Abschnitt oder einem OneNote-Absatz, in der bzw. dem der Anwendungsfall ausführlich beschrieben wird.

  • Verknüpfen Sie den Anwendungsfall mit einem Word-Dokument, in dem Sie Text, Screenshots usw. verwenden, um die Szenarios des Anwendungsfalls zu beschreiben. Weitere Informationen finden Sie unter Modellieren von Benutzeranforderungen.

So verknüpfen Sie einen Anwendungsfall mit einem Diagramm oder einer Datei in der gleichen Projektmappe

  1. Zeichnen Sie ein Diagramm, um ein Szenario des Anwendungsfalls zu veranschaulichen, z. B. ein Sequenz- oder Aktivitätsdiagramm.

  2. Wechseln Sie zurück zum Anwendungsfalldiagramm.

  3. Ziehen Sie das Diagramm oder die Datei vom Projektmappen-Explorer auf einen leeren Teil des Anwendungsfalldiagramms.

  4. Stellen Sie mithilfe von Abhängigkeit eine Verbindung vom Artefakt zum Anwendungsfall her.

  1. Erstellen Sie ein Dokument, das Text, Screenshots usw. zum Beschreiben des Szenarios des Anwendungsfalls enthält.

  2. Fügen Sie das Dokument der Projektmappe hinzu.

    1. Verschieben Sie das Word-Dokument in den gleichen Windows-Ordner wie die Projektmappe.

    2. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf die Projektmappe, zeigen Sie auf Hinzufügen, und klicken Sie anschließend auf Vorhandenes Element.

    3. Navigieren Sie zum Word-Dokument, und klicken Sie auf Hinzufügen.

      Das Word-Dokument wird im Projektmappen-Explorer in einem Projektmappenordner angezeigt.

  3. Ziehen Sie das Word-Dokument aus dem Projektmappen-Explorer auf einen leeren Teil des Anwendungsfalldiagramms.

    Ein neues Artefakt wird angezeigt.

  4. Stellen Sie mithilfe von Abhängigkeit eine Verbindung vom Artefakt zum Anwendungsfall her.

  1. Sie benötigen die URL des freigegebenen Elements. Dies kann z. B. ein mit "\\" beginnender Netzwerkdateipfad, eine mit "http://" beginnende Webseiten- oder SharePoint-URL oder ein mit "onenote:" beginnender Link zu einem OneNote-Abschnitt oder -Absatz oder einer OneNote-Seite sein.

  2. Klicken Sie in der Toolbox auf Artefakt, und klicken Sie dann in das Anwendungsfalldiagramm.

  3. Wählen Sie das neue Artefakt aus, und geben Sie die URL in die Eigenschaft Link ein, bzw. fügen Sie eine zuvor kopierte URL ein.

Tipp

Sie können auf ein Artefakt doppelklicken, um das Diagramm oder das Dokument zu öffnen, mit dem es verknüpft ist.

Verknüpfen von Anwendungsfällen mit Arbeitsaufgaben

Wenn das Projekt Visual Studio Team Foundation Server 2010 verwendet und Sie über Team Explorer verfügen, können Sie jeden Anwendungsfall mit einer Arbeitsaufgabe in Team Foundation verknüpfen. Informationen zur Erstellung dieser Links finden Sie unter Gewusst wie: Verknüpfen von Modellelementen mit Arbeitsaufgaben.

Sie haben dann folgende Möglichkeiten:

  • Beschreiben Sie den Anwendungsfall in der verknüpften Arbeitsaufgabe. Wenn das Projekt die Visual Studio-Prozessvorlage "Formal" verwendet, können Sie einen Link zu einer Anwendungsfall-Arbeitsaufgabe einrichten. Dieser Arbeitsaufgabentyp stellt Felder zum Beschreiben der Ziele und Szenarios des Anwendungsfalls bereit.

  • Verknüpfen Sie Testfälle mit dem Anwendungsfall, damit Sie Berichte dazu abrufen können, in welchem Umfang der entwickelte Code den Anwendungsfall implementiert.

  • Verknüpfen Sie Aufgaben mit dem Anwendungsfall, damit Sie den Status der Entwicklungsarbeit nachverfolgen können.

Strukturieren von Anwendungsfällen

Sie sollten versuchen, das Verhalten des Systems nur mit einigen wenigen Hauptanwendungsfällen zu beschreiben. Für jeden großen Anwendungsfall ist ein Hauptziel definiert, für dessen Erreichung ein Akteur zuständig ist, z. B. das Kaufen eines Produkts oder aus Anbietersicht das Anbieten von Produkten zum Verkauf.

Wenn Sie diese Ziele verdeutlicht haben, können Sie weitere Details dazu angeben, wie die einzelnen Ziele erreicht werden und welche Variationen es bei den grundlegenden Zielen gibt.

Vermeiden Sie es, die Anwendungsfälle zu stark zu unterteilen. Bei Anwendungsfällen geht es um die Benutzererfahrung mit dem System, nicht so sehr um die internen Details. Außerdem ist es meist produktiver, nur erste Arbeitsversionen des Codes zu erstellen, anstatt zu viel Zeit mit dem ausführlichen Strukturieren der Anwendungsfälle zu verbringen.

Sie können in einem Anwendungsfalldiagramm die Beziehungen zwischen den Hauptanwendungsfällen und ausführlicheren Anwendungsfällen zusammenfassen. Dies wird in den folgenden Abschnitten beschrieben:

  • Anzeigen der Details eines Anwendungsfalls mit Einschließen

  • Gemeinsames Nutzen von Zielen per Generalisierung

  • Abtrennen von Varianten mit Erweitern

Anzeigen der Details eines Anwendungsfalls mit "Einschließen"

Verwenden Sie eine Beziehung vom Typ Einschließen, um anzuzeigen, dass ein Anwendungsfall einige Details eines anderen Anwendungsfalls beschreibt. In der Abbildung enthält Order a Meal (Gericht bestellen) die Elemente Pay (Bezahlen), Choose Menu (Speisekarte wählen) und Choose Menu Item (Gericht wählen). Jeder der enthaltenen ausführlicheren Anwendungsfälle ist ein Schritt, den der Akteur oder die Akteure ggf. ausführen müssen, um das Gesamtziel des einschließenden Anwendungsfalls zu erreichen. Der Pfeil sollte auf den ausführlicheren eingeschlossenen Anwendungsfall zeigen.

Warnung

Sie sollten keine Schleifen aus Beziehungen vom Typ "Einschließen" erstellen, die dazu führen, dass ein Anwendungsfall sich selbst enthält. Schleifen können zu Fehlern führen.

Sie können eingeschlossene Anwendungsfälle freigeben. Im Beispiel enthalten die Anwendungsfälle Order a Meal (Gericht bestellen) und Subscribe to Reviews (Bewertungen abonnieren) jeweils das Element Pay (Bezahlen).

Mit Include aufgelöste Anwendungsfälle

Das Ziel und die Szenarios eines eingeschlossenen Anwendungsfalls sollten auch unabhängig voneinander Sinn ergeben, damit diese in Anwendungsfälle einbezogen werden können, die später entworfen werden.

Das Unterteilen von Anwendungsfällen in einschließende und eingeschlossene Teile ist nützlich, um die folgenden Ziele zu erreichen:

  • Strukturieren der Anwendungsfallbeschreibungen in verschiedene Detailebenen

  • Vermeiden der Wiederholung von freigegebenen Szenarios in verschiedenen Anwendungsfällen

Definieren der Reihenfolge der ausführlichen Schritte

Das Anwendungsfalldiagramm sagt weder etwas über die Reihenfolge aus, in der die ausführlicheren Schritte ausgeführt werden müssen, noch darüber, ob jeder Schritt immer erforderlich ist.

Wenn Sie die Reihenfolge der Schritte verdeutlichen möchten, können Sie ein Artefakt verwenden, um an den einschließenden Anwendungsfall ein separates Dokument anzufügen. Im folgenden Beispiel ist ein Aktivitätsdiagramm an den Anwendungsfall "Order a Meal" (Gericht bestellen) angefügt. Alternativ dazu können Sie ein Textdokument verwenden, das eine Liste von Schritten oder eine Sequenz von Screenshots enthält. Weitere Informationen finden Sie unter Ausführliches Beschreiben von Anwendungsfällen.

Beachten Sie beim Verwenden eines Aktivitätsdiagramms die folgenden Namenskonventionen:

  • Der Name der gesamten Aktivität entspricht dem Namen des einschließenden Anwendungsfalls.

  • Die Aktionen im Aktivitätsdiagramm haben die gleichen Namen wie die eingeschlossenen Anwendungsfälle.

Weitere Informationen finden Sie unter UML-Aktivitätsdiagramme: Richtlinien.

Anwendungsfallschritte in verknüpftem Aktivitätsdiagramm

Gemeinsames Nutzen von Zielen per Generalisierung

Verwenden Sie eine Beziehung vom Typ "Generalisierung", um anzuzeigen, dass ein spezialisierter Anwendungsfall eine bestimmte Art ist, die Ziele eines anderen allgemeinen Anwendungsfalls zu erreichen. Die geöffnete Pfeilspitze sollte auf den allgemeineren Anwendungsfall zeigen.

Anwendungsfälle mit Generalisierungsbeziehung

Pay (Bezahlen) generalisiert zum Beispiel Pay by Credit Card (Per Kreditkarte bezahlen) und Pay by Cash (Bar bezahlen).

Warnung

Sie sollten keine Schleifen aus Generalisierungsbeziehungen erstellen, die dazu führen, dass ein Akteur sich selbst generalisiert. Schleifen können zu Fehlern führen.

Mithilfe von spezialisierten Anwendungsfällen können Sie andere Methoden anzeigen, mit denen das System das gleiche Ziel erreichen kann.

Die spezialisierten Anwendungsfälle sollen die Ziele und Akteure des allgemeinen Anwendungsfalls erben. Der allgemeine Anwendungsfall muss keine eigenen Szenarios haben. Seine Spezialisierungen beschreiben verschiedene Methoden zur Erreichung der Ziele.

So gestalten Sie allgemeine Ziele von zwei oder mehr Anwendungsfällen um

  1. Erstellen und benennen Sie den neuen allgemeinen Anwendungsfall.

  2. Erstellen Sie eine Beziehung vom Typ Generalisierung , bei der der große Pfeil auf den neuen allgemeinen Anwendungsfall zeigt.

    1. Klicken Sie in der Toolbox auf Generalisierung.

    2. Klicken Sie auf einen spezialisierten Anwendungsfall (im Beispiel Pay by Credit Card (Per Kreditkarte bezahlen)).

    3. Klicken Sie auf den allgemeinen Anwendungsfall (im Beispiel Pay (Bezahlen)).

  3. Wenn Sie die Ziele für die spezialisierten Anwendungsfälle beschrieben haben, verschieben Sie die gemeinsamen Teile in die Beschreibung des allgemeinen Anwendungsfalls.

  4. Akteure, die von den spezialisierten Anwendungsfällen gemeinsam genutzt werden, können in den allgemeinen Anwendungsfall verschoben werden.

Abtrennen von Varianten mit "Erweitern"

Verwenden Sie einen Link vom Typ "Erweitern", um anzugeben, dass ein Anwendungsfall einem anderen Anwendungsfall unter bestimmten Umständen Funktionen hinzufügen kann. Der Pfeil sollte auf den erweiterten Hauptanwendungsfall zeigen.

Anwendungsfall, der einen anderen erweitert

Warnung

Sie sollten keine Schleifen aus Erweiterungsbeziehungen erstellen, die dazu führen, dass ein Akteur sich selbst generalisiert. Schleifen können zu Fehlern führen.

Der Anwendungsfall Anmelden einer typischen Website kann z. B. Neuen Benutzer registrieren enthalten. Dies ist jedoch nur möglich, wenn der Benutzer nicht bereits ein Konto hat.

So unterteilen Sie einen Anwendungsfall in Hauptbestandteile und Erweiterungsteile

  1. Erstellen und benennen Sie den neuen erweiterten Anwendungsfall.

  2. Erstellen Sie eine Beziehung vom Typ Erweitern, bei der der Pfeil auf den erweiterten Anwendungsfall zeigt.

    1. Klicken Sie in der Toolbox auf Erweitern.

    2. Klicken Sie auf den erweiternden Anwendungsfall (im Beispiel Register New User (Neuen Benutzer registrieren)).

    3. Klicken Sie auf den erweiterten Anwendungsfall (im Beispiel Login (Anmelden)).

      Tipp

      Vermeiden Sie es, im Diagramm eine Schleife von Erweiterungsbeziehungen zu erstellen. Ein Anwendungsfall darf keine Erweiterung von sich selbst darstellen.

  3. Verschieben Sie die relevanten Schritte in das Szenario der Erweiterung, falls Sie für den erweiterten Anwendungsfall bereits Szenarios erstellt haben.

  4. Die Beschreibung der Erweiterung (im Beispiel Register New User (Neuen Benutzer registrieren)) sollte Details dazu enthalten, wo und unter welchen Umständen diese in den Szenarios des Hauptanwendungsfalls auftritt. Sehen Sie diesen Schritt als Änderung der Beschreibung des Hauptanwendungsfalls an.

Der Erweiterungsanwendungsfall stellt Szenarioschritte dar, die andernfalls Teil des Hauptanwendungsfall-Szenarios wären. Das Szenario und das Ziel der Erweiterung werden immer im Kontext des Hauptanwendungsfalls gelesen und müssen deshalb keinen direkten unabhängigen Nutzen aufweisen.

Das Abtrennen von Erweiterungen kann nützlich sein, um die folgenden Situationen zu beschreiben:

  • Es sind zusätzliche Akteure vorhanden, die nur am Erweiterungsanwendungsfall beteiligt sind. Beispielsweise muss ein Administrator die Registrierung eines Kunden auf der Website genehmigen.

  • Ein separates Subsystem verarbeitet den Erweiterungsanwendungsfall.

  • Diese Erweiterung ist nur in bestimmten Versionen des Systems verfügbar. Sie können jede Version im Anwendungsfalldiagramm als separates Subsystem anzeigen.

Verwenden von Subsystembegrenzungen

Verwenden Sie eine Subsystembegrenzung, um anzugeben, welche Anwendungsfälle innerhalb des Bereichs des Systems liegen.

So zeichnen Sie eine Subsystembegrenzung

  1. Klicken Sie in der Toolbox auf Subsystem, und klicken Sie dann auf das Diagramm.

    Ein Subsystem wird im Diagramm angezeigt.

  2. Ziehen Sie die Ecken des Subsystems, um seine Größe anzupassen.

  3. Ziehen Sie vorhandene Anwendungsfälle in das oder aus dem Subsystem, um seinen Inhalt anzupassen.

- oder -

Um einen neuen Anwendungsfall direkt in einem Subsystem zu erstellen, klicken Sie in der Toolbox auf Anwendungsfall und dann in das Subsystem.

Tipp

Die Subjects-Eigenschaft eines Anwendungsfalls gibt an, in welchem Subsystem dieser enthalten ist.

Anwendungsfälle außerhalb des Systembereichs

Es ist häufig nützlich, Anwendungsfälle in das Diagramm einzubeziehen, die Teil des Geschäftsablaufs sind, aber nicht mit dem in der Entwicklung befindlichen System verarbeitet werden. Auf diese Weise können Entwickler den Kontext ihrer Arbeit besser verstehen. "Deliver Meal" (Gericht liefern) kann z. B. als Anwendungsfall mit den Akteuren "Restaurant" und "Customer" (Kunde) angezeigt werden, jedoch außerhalb der Verantwortung der Website für die Essensbestellung.

Mehrere Subsysteme

Sie können mehrere Subsystembegrenzungen erstellen, um anzuzeigen, wie verschiedene Anwendungsfälle von unterschiedlichen Komponenten des Systems verarbeitet werden. Add Restaurant Appraisal (Restaurantbewertung hinzufügen) kann z. B. auf eine separate Website mit Forum verlagert werden. Denken Sie daran, dass es in einem Anwendungsfalldiagramm um die Dinge gehen sollte, die für die Benutzer sichtbar sind. Wenn Sie die interne Arbeitsaufteilung im System beschreiben möchten, können Sie die Verwendung eines Komponentendiagramms in Erwägung ziehen.

Systemversionen

Sie können verschiedene Subsystembegrenzungen verwenden, um unterschiedliche Versionen des Systems darzustellen. Der Anwendungsfall "Bezahlen" kann z. B. in Version 2 der Website enthalten sein, aber nicht in Version 1. Dies impliziert, dass das System Kunden beim Aufgeben ihrer Bestellungen unterstützt. Die Bezahlung erfolgt jedoch direkt an das Restaurant.

Verwenden Sie Beziehungen vom Typ Abhängigkeit, um Subsysteme zu verknüpfen, die verschiedene Versionen oder Varianten darstellen.

Subsysteme weisen unterschiedliche Versionen eines Systems auf

Siehe auch

Konzepte

Modellieren von Benutzeranforderungen

UML-Sequenzdiagramme: Richtlinien

Gewusst wie: Bearbeiten eines UML-Modells und Bearbeiten von Diagrammen

UML-Anwendungsfalldiagramme: Referenz

UML-Klassendiagramme: Referenz

UML-Komponentendiagramme: Referenz

UML-Komponentendiagramme: Referenz

Weitere Ressourcen

Video: Organisieren von Funktionen in Anwendungsfälle