G Referenz Arbeitshilfen
G.2 Methoden und Werkzeuge
G.2.1 Methodenreferenzen
G.2.1.1 Anforderungsanalyse
Ziel der Anforderungsanalyse ist die Identifikation, die Beschreibung und die Qualitätssicherung von Anforderungen. Die Anforderungsanalyse kann mit folgenden Methoden durchgeführt werden:
Anwendungsfall-Modellierung
Zielsetzung der Methode ist die Erfassung und Darstellung der aus Sicht von externen Bedienungseinheiten (Akteure) an ein System gestellten funktionalen Anforderungen. Die Anforderungen sind in Form von Anwendungsfällen, den "Use Cases", zu beschreiben. Ein Anwendungsfall kann in einer Reihe von Szenarios konkretisiert werden. Externe Bedienungseinheiten (z.B. Mitarbeiter, Projektleiter oder Administrator) repräsentieren Rollen, die von konkreten Personen, Maschinen, Computer-"Tasks" oder anderen Systemen eingenommen werden können.
Ein Anwendungsfall wird durch eine Bedienungseinheit ausgelöst. Seine Beschreibung beinhaltet die Dialoge beziehungsweise Interaktionen, die zur Bearbeitung einer Aufgabe zwischen dieser Bedienungseinheit und dem System "gefordert" werden. Für die Beschreibung der Interaktionen wird eine Folge von Aktionen und Ereignissen festgelegt, die von der initiierenden Bedienungseinheit, dem System oder anderen Bedienungseinheiten ausgelöst werden. Es sind nur die Aktionen beziehungsweise Ereignisse festzulegen, die aus der Sicht der Bedienungseinheit erkennbar sind, nicht aber Details, die beschreiben, wie das System intern arbeiten soll.
Die für ein System spezifizierten Anwendungsfälle repräsentieren in ihrer Gesamtheit die anwendungsorientierten, funktionalen Anforderungen an das System. Damit die Beschreibung vollständig ist, sollten möglichst alle erkannten Anwendungsfälle in dieser Form spezifiziert werden.
Interviewtechnik
Eine Möglichkeit der Anforderungsermittlung ist die Interviewtechnik. Hierbei werden die künftigen Anwender in einem vorgegebenen und formalisierten Verfahren befragt. Mit dieser Interviewtechnik soll es möglich sein, unterschiedliche Gruppen zu bilden und schwer quantifizierbare, quantifizierbare und ergänzende Nutzenpotenziale abzufragen. Bei einem solchen Vorgehen ist es unerlässlich, dass für die Quantifizierung der Nutzenspotenziale alle betroffenen Bereiche einbezogen sind und aktiv mitwirken. Ohne diese Mitarbeit lassen sich vorab zwar fiktive Werte annehmen, diese können aber von den betroffenen Bereichen nachträglich sehr leicht in Frage gestellt werden. Eine definierte Interviewmethode ist die "Structured Hierarchical Interviewing for Requirement Analysis" (SHIRA). Sie setzt zu einem sehr frühen Zeitpunkt an. SHIRA versucht, die konkrete Bedeutung der Produktattribute wie "einfach", "innovativ", "kontrollierbar" oder "eindrucksvoll" für ein mögliches Softwareprodukt zu verstehen.
Dialog Design Modellierung
Ziel der "Dialog Design Modellierung" ist es, die Struktur eines Nutzerdialogs mit Bildschirmmasken zu modellieren. Das Layout der Bildschirmmasken bleibt hierbei unberücksichtigt. Die Masken können lediglich typisiert werden (z.B. Typ: Eingabemaske).
Systemverhaltensmodelle
Ziel der Erstellung von Systemverhaltensmodellen ist es, die Anforderungen an das dynamische Verhalten eines Systems mittels eines Modells zu präzisieren. Besondere Beachtung finden hierbei der Einfluss von (externen) Ereignissen auf das System sowie mögliche Nebenläufigkeiten innerhalb des Systems. Dieses Modell dient insbesondere dem Abgleich mit den Anforderungen des Anwenders und der Präzisierung bezüglich Vollständigkeit, Eindeutigkeit, etc.
Kosten-Nutzen-Analyse bei Anforderungen
Bei der Anforderungsanalyse wird häufig eine Kosten-Nutzen-Analyse zur Priorisierung der Anforderungen durchgeführt. Hier bei handelt es sich um eine Untersuchung mit dem Ziel, eine Empfehlung auszusprechen, ob der zu erwartende Nutzen der Realisierung einer Anforderung die zu erwartenden Kosten rechtfertigt. Damit können Anforderungen nachgeordneter Bedeutung leichter eliminiert werden.
Einsatz von Kreativitätstechniken
Um der Heterogenität der verschiedenen Beteiligten in der Anforderungsermittlung erfolgreich begegnen zu können, müssen manchmal ungewöhliche Wege gegangen werden. Kreativitätstechniken dienen dem Zweck, dem Denken in herkömmlichen Bahnen den Rücken zu kehren und ungewöhnliche, kreative Ideen zu ermöglichen. Kreativitätstechniken eignen sich nicht für die Ermittlung einer detaillierten Beschreibung des präzisen Verhaltens eines Systems. Statt dessen dienen sie dem Durchbrechen von Schranken, die die eigene Denkweise und die Fremdartigkeit anderer Denkweisen der Anforderungsermittlung aufzwingen können.
Folgende Kreativitätstechniken können je nach Situation in Frage kommen:
- Brainstorming,
- Brainstorming paradox (es werden Ereignisse gesammtelt, die nicht erreicht werden sollen),
- Methode 6-3-5 (schriftliches Brainstorming: 6 Teilnehmer entwickeln jeweils 3 Ideen, diese werden 5 mal herumgereicht bis jeder Teilnehmer jede Karte einmal besessen hat),
- Wechsel der Perspektive (jeder Teilnehmer betrachtet das Problem aus einer unterschiedlichen, vorher deefinierten Perspektive heraus),
- Walt Disney Methode (Einteilung der Teilnehmer in die Gruppen Träumer/Visionär, Realist und Kritiker),
- Bionik/Bisoziation (finden von passenden Assoziationen zum Problem und Diskussion möglicher Lösungsmöglichkeiten für das Analogon).
Einsatz von Beobachtungstechniken
Der Anwender weiß am besten darüber Bescheid, welche Aufgaben in seinem Tagesgeschäft anfallen und wie sie bestritten werden können. Häufig zeigt sich jedoch, dass der Anwender aus verschiedenen Gründen bewusst oder unbewusst keine passende Beschreibung seiner Tätigkeiten liefert. Beobachtungstechniken dienen dem Zweck, dem Anforderungsanalytiker Einblick in die Welt des Anwenders zu bieten. Diese Techniken können sehr zeitaufwändig sein, allerdings bieten sie das Potential, dass der Anforderungsanalytiker die anfallenden Aufgaben wirklich verstehen und eigene Anforderungen an ein System zur Unterstützung dieser Aufgaben stellen kann.
Folgende Beobachtungstechniken können angewandt werden:
- Feldbeobachtung (der Anforderungsanalytiker beobachtet die Anwender bei seiner täglichen Arbeit),
- Apprenticing (der Anforderungsanalytiker erlernt die Tätigkeiten des Anwenders und wendet sie an).
Quellen |