Was ist ein Anwendungsfall? Mit Beispielen und kostenloses Werkzeug

Ein Anwendungsfall ist ein Werkzeug zur Identifizierung der geschäftlichen Ziele eines Systems. Die Identifizierung von Anwendungsfällen hilft dabei, den Systemumfang zu definieren und sicherzustellen, dass die zu findenden Anforderungen alle mit den geschäftlichen Werten, Bedürfnissen und Strategien übereinstimmen.


Was ist ein Anwendungsfall?

Ein Anwendungsfall stellt ein hochwertiges geschäftliches Ziel dar, das von einer Person, mehreren Parteien oder Unter-Systemen durch Interaktion mit einem System erreicht werden soll, das entweder das zu entwickelnde System oder das zu wartende System sein kann, je nach Art Ihres Softwareprojekts.

Use case

Anwendungsfälle sind weder Systemanforderungen noch Funktionen, die implementiert werden sollen. Tatsächlich ist es wichtig, Anwendungsfälle von Anforderungen zu trennen, da Sie einen klaren Satz von Anwendungsfällen benötigen, der Ihnen hilft, geschäftliche Ziele und den Systemumfang zu definieren. Tatsächlich erfolgt die Erfassung von Anforderungen erst nach der Identifizierung von Anwendungsfällen (Epics) und anschließender Aufteilung in eine Reihe entsprechender Benutzerstories (geschäftliche Ziele).

Grafische Darstellung eines Anwendungsfalls

Anwendungsfälle können in einem UML-Anwendungsfalldiagramm visualisiert werden. Ein Anwendungsfall wird im Diagramm als Ellipse dargestellt, wobei sein Name in der Mitte der Form erscheint. Neben dem Anwendungsfall enthält ein typisches Anwendungsfalldiagramm zwei weitere Elemente – der Akteur und die Verbindung.

Use case diagram

Ein Akteur ist eine Rolle, die mit dem System interagiert, um ein oder mehrere geschäftliche Ziele zu erreichen, wie sie durch die Anwendungsfälle dargestellt werden. Die Interaktion zwischen einem Akteur und einem Anwendungsfall wird durch eine Assoziation (Verbindung) dargestellt. Beachten Sie, dass ein Akteur nicht unbedingt eine spezifische physische Entität (z. B. John) darstellt, sondern lediglich eine Rolle (z. B. Kunde). In der Realität kann eine Rolle von verschiedenen Personen übernommen werden, und umgekehrt kann eine Person mehrere Rollen übernehmen.

Wie identifiziert man einen Anwendungsfall?

Anwendungsfälle werden durch Kommunikation mit den Geschäftsinhabern oder den leitenden Executives des Unternehmens identifiziert. Wir nennen sie üblicherweise die geschäftlichen Stakeholder. Es ist wichtig, Anwendungsfälle mit den geschäftlichen Stakeholdern zu identifizieren und nicht mit anderen Personen, da sie über die Richtung und tatsächlichen Abläufe des Unternehmens klar informiert sind. Sie verfügen auch über die notwendige Autorität und Informationen, um geschäftliche Entscheidungen zu treffen. Daher sind die identifizierten Anwendungsfälle alle mit den geschäftlichen Werten, Bedürfnissen und Strategien des Unternehmens ausgerichtet.

Warum Anwendungsfälle?

Viele Menschen betrachten die Identifizierung von Anwendungsfällen als überflüssigen Schritt. Sie würden lieber direkt mit der Identifizierung von Systemanforderungen beginnen. Ist der Ansatz mit Anwendungsfällen also nutzlos?

Wenn Sie ein großes System entwickeln, das typischerweise viele Stakeholder mit unterschiedlichen Erwartungen am Endprodukt beinhaltet, endet dies oft in einer großen, unübersichtlichen Ansammlung von Anforderungen. Ein Anwendungsfall kann als Platzhalter dienen, um eine Gruppe verwandter Benutzerstories aufzunehmen, die ein größeres gemeinsames geschäftliches Ziel und einen gemeinsamen Umfang teilen.

Denken Sie daran, dass Anwendungsfälle durch Kommunikation mit Geschäftsinhabern und leitenden Executives identifiziert werden, die das Wachstum ihres Unternehmens überwachen und die Fähigkeit besitzen, strategische geschäftliche Entscheidungen zu treffen. Aus diesem Grund spiegeln Anwendungsfälle direkt die geschäftlichen Ziele wider, die das Zielsystem erreichen muss. Durch die Erfassung von Anforderungen auf Basis von Anwendungsfällen sind diese Anforderungen mit hoher Wahrscheinlichkeit im Systemumfang und erreichen somit die von den Eigentümern erwarteten geschäftlichen Werte. Außerdem erleichtern Anwendungsfälle eine sinnvolle Kategorisierung von Anforderungen. Vorgeschlagene Softwarefunktionen können aufgrund der Bedeutung der Anwendungsfälle geplant werden, anstatt ausschließlich auf die Meinungen der Frontline-Stakeholder zu setzen, die möglicherweise nicht vollständig mit den Erwartungen der Geschäftsinhaber übereinstimmen.

Beispiele für Anwendungsfälle

Hier sind einige Beispiele, um die Verwendung von Anwendungsfällen zu veranschaulichen. Das hier gegebene Beispiel dient lediglich zur Illustration, es gibt keine eindeutige Methode, welche Anwendungsfälle für ein bestimmtes Zielsystem identifiziert werden sollten. Die Faustregel für den Prozess der Anwendungsfallidentifizierung ist stets die aktive Beteiligung und Einbindung der geschäftlichen Stakeholder.

System

Anwendungsfälle

  • Geldautomat
    • Geld abheben, Geld überweisen, Spenden, Rechnungen begleichen, PIN ändern
  • Online-Fotobuch
    • Foto hochladen, Foto teilen, Foto löschen
  • Gesundheitsverfolgungs-App
    • Training aufzeichnen, Trainingsstatistik erstellen, ein Ziel herausfordern

Aufgrund der oben genannten Beispiele könnten wir dann folgende Diskussionen führen:

Anwendungsfall führt zu einem beobachtbaren Ziel

Beispiel für einen Anwendungsfall – Geldautomat

Der Geldautomat ist ein klassisches Beispiel, wenn man den Begriff des Anwendungsfalls oder die Anwendungsfallanalyse erläutert. Sie fragen sich vielleicht, warum es keinen Anwendungsfall für „Einloggen“ gibt, das ja eine unvermeidbare Phase bei allen ATM-Operationen ist. Wie bereits gesagt, sind Anwendungsfälle geschäftliche Ziele, die erreicht werden sollen. Sie erzeugen ein beobachtbares Ergebnis für den Akteur, der mit dem System interagiert, um den Anwendungsfall zu erreichen. Hier ist „Einloggen“ lediglich ein Teil der anderen Operationen. „Einloggen“ selbst erzeugt kein beobachtbares Ergebnis – niemand würde einfach einen Geldautomaten aufrufen und weggehen, oder? Daher betrachten wir „Einloggen“ nicht als Anwendungsfall.

Wäre „PIN ändern“ nicht zu klein, um ein Anwendungsfall zu sein? Die Antwort lautet: Die Identifizierung von Anwendungsfällen beruht weder auf der Menge an Arbeit, die der Benutzer leisten muss, noch auf der Anzahl der Systemfunktionen, die entwickelt werden müssen. Solange es ein geschäftliches Ziel ist, das der geschäftliche Stakeholder erreichen möchte, ist es ein Anwendungsfall. In diesem Fall betrachten wir es als Anwendungsfall, dass Kunden ihre PIN über den Geldautomaten ändern.

Beispiel für einen Anwendungsfall – Online-Fotobuch

Typische Online-Fotogalerie ermöglicht es Benutzern, ihre hochgeladenen Fotos zu markieren. Ist „Foto markieren“ dann ein Anwendungsfall? Die Antwort lautet: Es hängt davon ab. Wenn die Geschäftspartner den Benutzern erlauben möchten, auf das System zuzugreifen, um ihre Fotos zu markieren, selbst wenn sie innerhalb der Sitzung nichts anderes tun, dann sollte „Foto markieren“ ein Anwendungsfall sein. Wenn sie jedoch meinen, dass das Markieren von Fotos nur ein Teil des Hochladeprozesses ist und danach keine andere Möglichkeit zum Markieren besteht, dann wäre „Foto markieren“ kein Anwendungsfall. Ein weiterer Fall wäre, dass die Stakeholder lediglich den Benutzern erlauben möchten, die hochgeladenen Fotos nach beliebigen Eigenschaften wie Titel, Beschreibung, Tags usw. zu bearbeiten. In diesem Fall ist es wahrscheinlich, dass ein Anwendungsfall „Foto bearbeiten“ erstellt wird. Man erkennt also, dass die Identifizierung eines Anwendungsfalls kein zufälliger Schritt ist. Man kann sich vorstellen, dass die Fähigkeit, Fotos zu markieren, unter den Anwendungsfällen „Foto markieren“ und „Foto bearbeiten“ ganz unterschiedlich unterstützt wird.

Anwendungsfall-Beispiel – Gesundheitsverfolgungs-App

Obwohl Anwendungsfälle keine Anforderungen sind, bedeutet das nicht, dass Anwendungsfälle abstrakt und ziellos sind. Betrachten wir die Gesundheitsverfolgungs-App als Beispiel. Ein Training aufzeichnen, Statistiken zu Trainings erstellen und Ziele herausfordern sind alle ausreichend klar, um den Umfang der Funktionen zu definieren. Kann „Gesundheit erhalten“ ein Anwendungsfall sein? Nun, das wäre eine schlechte Wahl, da der Umfang zu groß ist. Jede Gesundheitsverfolgungs-App versucht, dem Benutzer dabei zu helfen, dieses Ziel zu erreichen, aber mit diesem großen Ziel sind wir uns nicht sicher, welche Funktionen die Apps tatsächlich erfüllen können!

Wie schreibt man einen Anwendungsfall?

Die einfachste Form eines Anwendungsfalls besteht aus einem + oder, das ein Geschäftsziel beschreibt. Hier sind einige Beispiele:

  1. Konto registrieren
  2. Bestellung aufgeben
  3. Geld abheben
  4. Stellenangebot veröffentlichen
  5. Untersuchung von Fällen

Wie bereits gesagt, dienen Anwendungsfälle dazu, Geschäftsziele zu identifizieren. Verwenden Sie sie nicht zum Schreiben von Anforderungen oder zur Beschreibung der Interaktionen zwischen Benutzer und System. Alle diese Schritte werden in den nachfolgenden Entwicklungsphasen detailliert, aber nicht jetzt.

Verwendung von Anwendungsfällen mit User Stories

User Stories sind auch ein wichtiges Werkzeug im agilen Entwicklungsprozess. Jede User Story besteht aus einer kurzen Beschreibung aus der Sicht des Benutzers. Hier sind einige Beispiele für eine User Story:

  1. Der Benutzer möchte eine Zahlung per Kreditkarte tätigen.
  2. Der Benutzer möchte eine Zahlung über PayPal tätigen.
  3. Der Benutzer möchte bei der Kasse optional Versicherung für den Versand hinzufügen.
  4. Der Benutzer möchte bei der Kasse eine andere Lieferadresse auswählen.
  5. Der Benutzer möchte eine SMS erhalten, sobald die Bestellung erfolgreich erstellt wurde.

Ein Anwendungsfall ist ein Werkzeug zur Definition des Umfangs einer Funktion, während eine User Story beschreibt, was ein Benutzer tut oder tun muss, als Teil ihrer Arbeit, was letztendlich zur Erstellung einiger Anforderungen führt. Wir können diese beiden Techniken zur Erfassung von Anforderungen nutzen, um die richtigen Anforderungen zu identifizieren. Hier sind die Schritte dafür: Zunächst kommunizieren Sie mit den Geschäftspartnern, um Geschäftsziele als Anwendungsfälle zu identifizieren. Danach konzentrieren Sie sich auf einen bestimmten Anwendungsfall und kommunizieren mit den Frontline-Benutzern, um die User Stories unter diesem Anwendungsfall zu identifizieren. Da die Identifizierung der User Stories durch einen Anwendungsfall getrieben wird, werden die am Ende gefundenen Anforderungen mit den Geschäftszielen übereinstimmen.

Use case and user stories

Visual Paradigm bietet alle Werkzeuge, die Sie benötigen inagile Softwareentwicklung, die folgende Funktionen umfassen:UML-Anwendungsfalldiagramm-Tool(agile) User StorySprintStoryboardundWireframesfür UX-Design,Aufgabenverwaltungstool, usw.

Referenzen

  1. Use-Case-Diagramm – Unified Modeling Language (UML)
  2. Was ist ein Use-Case-Diagramm?
  3. Erstellen Sie ein UML-Use-Case-Diagramm
  4. Best Practices und Beispiele für Use-Case-Diagramme
  5. Use-Case-Diagramm-Vorlagen
  6. Use-Case-Beschreibung in Visual Paradigm für UML
  7. Use-Case-Diagramm
  8. Wie zeichnet man ein Use-Case-Diagramm?

Kommentar hinterlassen