Anforderungsanalyse I Flashcards
Definition Anforderungsanalyse
Die Anforderungsanalyse dient dem Erkennen von Zielen und Bedürfnissen sowie der Identifikation von Innovationspotenzial.
Ziel, eine explizite, mit allen Stakeholdernabgestimmte Anforderungs- und Systemspezifikation zu erarbeiten und sicherzustellen, dass diese umgesetzt wird.
Grundstruktur der Anforderungen
- Vision: Mission des Systems
- Funktion: generelle Funktionalität des Systems
- Nutzung: Schnittstelle zu Nutzenden, Umgebung und Nachbarsystem
- Details: detaillierte Anforderungen an das System
Vorgehen in der Anforderungserhebung
- Anforderungserhebung -> 2.
- Anforderungsanalyse -> 3.
- Anforderungsspezifikation -> 4 .
- Anforderungsüberprüfung -> 1.
Anforderungsanalytiker
Durchführung der Anforderungsanalyse
* d.h.: Erhebung, Analyse, Verhandlung, Konsolidierung, Strukturierung,
Modellierung und Dokumentation der Anforderungen
* Erstellung der Anforderungsspezifikation
* Angemessenheit der eingesetzten Vorgehensweisen
Prüfer
- Validierung und Qualitätssicherung hinsichtlich:
1 Konsistenz
2 Gültigkeit
3 Tätigkeiten hinsichtlich der Validierung - Sollte unabhängig von Anforderungserhebung durchgeführt werden
(Vier-Augen-Prinzip)
Anforderungsmanagement
- Ziel: effektive Handhabung (Verwaltung) und Nutzung dokumentierter
Anforderungen über den gesamten Systemlebenszyklus - Aufgaben:
1 Archivierung von Anforderungen
2 Änderungsmanagement: Modifikationen aufgrund neuer Erkenntnisse im Laufe der Entwicklung
3 Verfolgung und Verifikation von Anforderungen
4 Impaktanalysen zur Unterstützung von Änderungsprozessen
Anforderungsverfolgung
Arten:
* Vorwärtsverfolgung:
Wie wird eine Anforderung im Laufe der Entwicklung umgesetzt?
* Rückwärtsverfolgung:
1 Welche Entwurfentscheidungen sind auf welche Anforderungen zurückzuführen?
2 Wer hat die Anforderung eingebracht?
Klassifikation von Anforderungen
- Produktanforderungen (auch: funktionale Anforderungen)
beschreiben angebotene und nutzbare Funktionen des Systems - Qualitätsanforderungen (auch: nicht-funktionale Anforderungen)
Beschreiben, wie die funktionalen Anforderungen erbracht werden - Prozessanforderungen
projektspezifische Anforderungen hinsichtlich des Entwicklungsprozesses
z.B. Methodik der Entwicklung, Projektplanung, Qualitätssicherung
Teil der Qualitätsanforderungen
Anwendungsfall (Use Case)
Bündelt alle möglichen Szenarien, die eintreten können, wenn ein Akteur versucht, mit Hilfe des betrachteten Systems ein bestimmtes
fachliches Ziel zu erreichen bzw. eine Funktion zu nutzen.
Beschreibung von Anwedungsfällen
(Use Cases)
Use Case Specification Template nach Cockburn
Funktionshierarchie
Hierarchische Dekomposition von Funktionen in Teilfunktionen.
Eine Strukturierung in der Funktionshierarchie erfolgt nach unterschiedlichen Prinzipien, etwa nach Aufgaben und Teilaufgaben, nach kausalen/zeitlichen Reihenfolgen oder hinsichtlich der Verteilung auf Systemkomponenten
Logisches Datenmodell
- Datentypen und ihre Konstruktions- und Zugriffsfunktionen
- Gesetze und Zusammenhänge im Anwendungsgebiet
- bei datenintensiven Anwendungen: ER-Modell und/oder
objektorientiertes Datenmodell (bspw. UML-Klassendiagramm)
Logisches Prozessmodell
umfasst
* Zustände eines Prozesses
* Auslösende und ausgelöste Ereignisse
* Abläufe des Prozesses
Darstellung durch:
* Ablaufdiagramme
* Prozessdiagramme/-graphen (bspw. Petri-Netze, UML-
Aktivitätsdiagramme, BPMN-Diagramme)
* Zustandsdiagramme
Klassifikation von Qualitätsanforderungen
- Funktionsbezogene Qualitätsanforderungen
- Nutzungsbezogene Qualitätsanforderungen
- Entwicklungsbezogene Qualitätsanforderungen
Funktionsbezogene Qualitätsanforderungen
beschreiben, unter welchen Rahmenbedingungen eine Funktion erbracht wird, z.B. Antwortzeiten