- 1 Abschnitt
- 8 Lektionen
- Um den Kurs in deinem Profil zu hinterlegen klicke oben auf Starten
Anforderungsanalyse
Die Anforderungsanalyse ist ein grundlegender Schritt im Softwareentwicklungsprozess, der sicherstellt, dass die entwickelte Software den Bedürfnissen und Erwartungen der Benutzer entspricht. Eine gründliche und sorgfältige Anforderungsanalyse bildet die Basis für den gesamten Entwicklungsprozess und hilft, Missverständnisse und Fehlentwicklungen zu vermeiden.
1. Erfassung von Anforderungen
Techniken zur Anforderungserhebung
| Technik | Beschreibung |
|---|---|
| Interviews | Direkte Gespräche mit Stakeholdern, um deren Bedürfnisse und Erwartungen zu verstehen. |
| Fragebögen | Strukturierte Fragebögen zur Sammlung von Anforderungen von einer großen Anzahl von Stakeholdern. |
| Workshops | Gemeinsame Sitzungen mit Stakeholdern zur Diskussion und Erarbeitung von Anforderungen. |
| Beobachtung | Direkte Beobachtung der Benutzer bei der Arbeit, um ihre Anforderungen und Arbeitsprozesse zu verstehen. |
| Dokumentenanalyse | Untersuchung vorhandener Dokumentationen, wie Geschäftsprozesse, Protokolle und Berichte. |
Dokumentation von Anforderungen
- Lastenheft: Dokument, das die Anforderungen des Auftraggebers beschreibt und als Basis für die Ausschreibung dient.
- Pflichtenheft: Detailliertes Dokument, das die Umsetzung der Anforderungen im Lastenheft beschreibt und als Basis für die Entwicklung dient.
2. Anforderungsanalyse und -management
Klassifizierung und Priorisierung von Anforderungen
| Art der Anforderung | Beschreibung |
|---|---|
| Funktionale Anforderungen | Beschreiben, was das System tun soll (z.B. Benutzerregistrierung, Datenverarbeitung). |
| Nicht-funktionale Anforderungen | Beschreiben die Qualität und Eigenschaften des Systems (z.B. Performance, Sicherheit, Benutzerfreundlichkeit). |
Priorisierungstechniken
| Technik | Beschreibung |
|---|---|
| MoSCoW-Methode | Priorisierung in Must have, Should have, Could have, Won’t have. |
| Kano-Modell | Bewertung der Anforderungen basierend auf Kundenzufriedenheit und Implementierungsaufwand. |
Umgang mit sich ändernden Anforderungen
| Methode | Beschreibung |
|---|---|
| Change Management | Verfahren zur Handhabung von Änderungen an den Anforderungen während des Projekts. |
| Versionierung | Dokumentation und Verwaltung verschiedener Versionen von Anforderungen. |
| Stakeholder-Kommunikation | Regelmäßige Abstimmung und Kommunikation mit den Stakeholdern, um Änderungen frühzeitig zu erkennen und zu integrieren. |
Beispiel für die Erfassung und Dokumentation von Anforderungen
Szenario: Entwicklung einer neuen E-Commerce-Plattform
Anforderungserhebung:
| Technik | Beispiel |
|---|---|
| Interviews | Gespräche mit dem Marketing-Team, um deren Anforderungen an Produktdarstellung und Promotionen zu verstehen. |
| Workshops | Gemeinsame Sitzungen mit dem Vertrieb und dem Kundenservice, um Anforderungen an die Bestellabwicklung und den Kundenservice zu erfassen. |
| Dokumentenanalyse | Untersuchung bestehender Berichte und Analysen über das Kundenverhalten und die aktuellen Verkaufszahlen. |
Dokumentation:
Lastenheft:
- Ziel: Entwicklung einer benutzerfreundlichen E-Commerce-Plattform zur Steigerung der Online-Verkäufe.
- Funktionale Anforderungen: Produktkatalog, Warenkorb, Bestellprozess, Benutzerkonten.
- Nicht-funktionale Anforderungen: Hohe Verfügbarkeit, schnelle Ladezeiten, sichere Zahlungsabwicklung.
Pflichtenheft:
- Detailbeschreibung der Funktionalitäten: Produktkatalog mit Filteroptionen, Warenkorb mit Echtzeit-Update, Bestellprozess mit verschiedenen Zahlungsmethoden.
- Technische Spezifikationen: Einsatz von SSL für sichere Datenübertragung, Nutzung einer skalierbaren Cloud-Infrastruktur für hohe Verfügbarkeit.
Visualisierung der Anforderungsanalyse
Mind Map für die Erfassung von Anforderungen:
graph TD
A[Anforderungserhebung] --> B[Interviews]
A --> C[Fragebögen]
A --> D[Workshops]
A --> E[Beobachtung]
A --> F[Dokumentenanalyse]
Prozessflussdiagramm für die Anforderungsanalyse und -management:
graph TD
G[Anforderungen sammeln] --> H[Anforderungen dokumentieren]
H --> I[Klassifizieren und Priorisieren]
I --> J[Änderungen verwalten]
J --> K[Stakeholder-Kommunikation]
Beispiel eines Lastenhefts (Ausschnitt):
| Anforderung | Beschreibung | Priorität |
|---|---|---|
| Produktkatalog | Benutzer können Produkte nach Kategorien durchsuchen und filtern. | Must have |
| Warenkorb | Benutzer können Produkte in den Warenkorb legen und die Menge ändern. | Must have |
| Bestellprozess | Unterstützung für verschiedene Zahlungsmethoden. | Should have |
| Benutzerkonten | Benutzer können Konten erstellen und sich einloggen. | Must have |
