G Referenz Arbeitshilfen

G.2 Methoden und Werkzeuge

G.2.1 Methodenreferenzen

G.2.1.6 Modellierung funktionaler Anforderungen (UML)

Die Unified Modeling Language (UML) eignet sich insbesondere für die Beschreibung funktionaler Anforderungen. Diese Methodenreferenz stellt dar, wie ein Ausschnitt der Modellierungssprache verwendet werden kann, um fachliche Zusammenhänge und Systemverhalten zu modellieren. Die Modellierung verwendet

Anwendungsfalldiagramm: Überblick über die Systemfunktionalität

Ein Anwendungsfalldiagramm gibt einen ersten Überblick über die Gesamtheit der Anwendungsfälle und somit über die Definition des Systemverhaltens. Es beschreibt, was das System ist, was das System an Verhalten und Funktionalität umfasst und mit welchen Akteuren das System interagiert. Ausgehend von den im Anwendungsfalldiagramm dargestellten Anwendungsfällen werden diese in einem weiteren Schritt ausführlicher beschrieben. Je nach Komplexität kann dies entweder textlich oder modellbasiert erfolgen. Handelt es sich um nicht-komplexe bzw. nur gering-komplexe Anwendungsfälle, ist es ausreichend, Anwendungsfälle mit einer kurzen textlichen Beschreibung zu versehen. Ansonsten sind die beiden nachfolgend genannten Beschreibungsmöglichkeiten empfehlenswert.

images/METH-Modellbasiert-Anwendungsfall.gif

Aktivitätsdiagramm: Detaillierung des Systemverhaltens

Zeichnen sich die Anwendungsfälle dahingegen als mittel bis stark komplex ab, ist es sinnvoll, diese mittels Aktivitätsdiagrammen näher zu erläutern. Die Aktivitätsdiagramme vermitteln auf einen Blick und ausdrucksstark, was der Normalablauf ist und wie Alternativabläufe aussehen, welche Vorbedingungen und auslösende Ereignisse existieren. Eine optische Trennung zwischen System und Akteur ("Swimlane") kann die Interaktion des Systems mit der Außenwelt noch übersichtlicher darstellen.

images/METH-Modellbasiert-Ablauf.gif

Anwendungsfalltabelle: Ergänzende Informationen

Informationen zu Priorität, Stakeholdern und dem Querbezug zu nicht-funktionalen Anforderungen können nicht unmittelbar modelliert werden. Es empfiehlt sich, für jeden Anwendungsfall eine Tabelle nach folgendem Muster zu hinterlegen:

Kurzbeschreibung

Hier erfolgt eine kurze und prägnante Beschreibung der Fachlichkeit des Anwendungsfalls.

Vorbedingung / Auslösendes Ereignis

Hier werden zum Einen die Voraussetzungen für den Anwendungsfall (der Zustand, in dem sich das System vor Ausführung befindet) beschrieben und zum Anderen die Ereignisse, die den Anwendungsfall auslösen.

Normalablauf

Hier erfolgt eine Beschreibung des Ablaufs des Anwendungsfalls, so wie er sich im Normalfall (in der Mehrzahl der Fälle) verhält. Dabei wird der Ablauf in einzelnen Schritten dargestellt.

Nachbedingung(en) / Ergebnis

Hier werden zum Einen die Zustände, in dem sich das System nach Ausführung des Anwendungsfalls befindet, und zum Anderen die Ergebnisse für den Anwender angegeben.

Akteure

Hier werden alle Akteure aufgeführt, die an dem Anwendungsfall in irgendeiner Form beteiligt sind und somit mit dem beschriebenen Anwendungsfall in Beziehung stehen.

Priorität

Für die Angabe der Priorität wird aus der Prioritätenskala (siehe Methodenreferenz Vom Lastenheft zum Kriterienkatalog im Teil Methodenreferenzen des V-Modell XT Bund) genau eine festgelegt.

Stakeholder

Gibt es für den hier beschriebenen Anwendungsfall konkrete Stakeholder (über die Akteure hinaus), dann werden diese hier aufgeführt.

Alternativabläufe

Hier erfolgt eine Beschreibung des Ablaufs des Anwendungsfalls, so wie er sich in Sonder- bzw. Ausnahmefällen verhält. Dabei wird der Ablauf in einzelnen Schritten dargestellt. Es können sich bei Alternativabläufen andere Nachbedingungen bzw. Ergebnisse als im Normalablauf ergeben. Diese werden dann hier angegeben.

Querbezug zu nicht-funktionalen Anforderungen

Ist erkennbar, dass der hier beschriebene Anwendungsfall einen Querbezug bzw. eine Abhängigkeit zu einer oder mehreren nicht-funktionalen Anforderungen besitzt, so werden die davon betroffenen nicht-funktionalen Anforderungen an dieser Stelle gelistet.

Klassendiagramm: Fachliches Datenmodell und fachliche Zusammenhänge

Des Weiteren wird für datenzentrierte Systeme im Rahmen der funktionalen Anforderungen ein erstes fachliches Datenmodell erstellt, das ggf. Grundlage eines späteren Datenbankentwurfs oder einer objektorientierten Implementierung ist. Das fachliche Datenmodell des Systems leitet sich aus den Entitäten und den fachlichen Zusammenhängen der Domäne ab. Die Dokumentation des fachlichen Datenmodells erfolgt mit Klassendiagrammen. Zusätzlich zu der Diagrammdarstellung empfiehlt es sich – soweit diese bereits bekannt sind – zusätzliche Informationen wie beispielsweise fachliche Attribute oder den Querbezug zu funktionalen und nicht-funktionalen Anforderungen in einem Datenkatalog festzuhalten. Diese können je nach eingesetztem Werkzeug bereits im Modell hinterlegt werden oder aber im Lastenheft textlich oder tabellarisch ergänzt werden. Wichtig ist, dass die verwendeten Attribute und Datentypen (wenn sie überhaupt angegeben sind) ausschließlich fachlicher Natur sind.

images/METH-Modellbasiert-Klassen.gif

Aktivitäten

Anforderungen festlegen

Quellen

PR09