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
- Anwendungsfalldiagramme,
- Aktivitätsdiagramme,
- Anwendungsfalltabellen (ergänzend zur UML) und
- Klassendiagramme.
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.
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.
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.
Aktivitäten |
Quellen |