4 Der Prozess der Anforderungsspezifikation
Der Prozess der Anforderungspezifikation umfasst das Ermitteln, Analysieren, Spezifizieren und Validieren (Überprüfen) aller Eigenschaften und Rahmenbedingungen eines Softwaresystems
Anforderungen
- Funktionale Anforderungen
- Qualitätsanforderungen
- Benutzbarkeit
- Zuverlässigkeit
- Effizienz
- Änderbarkeit
- Übertragbarkeit
- Rahmenbedingungen
- Technologisch
- Organisatorisch
- Normativ (Normen, Sozial)
Was soll das System leisten?
Lastenheft
- Was und Wofür?
- Wird vom Auftraggeber erstellt
- Gesamtheit der Anforderungen für die geplante Software
Pflichtenheft
- Wie und Womit?
- Wird vom Auftragnehmer erstellt
- Konkrete Lösungsvorschläge
Idealtypischer Ablauf zum Projektbeginn
- Der Auftraggeber erstellt das Lastenheft
- Der Auftraggeber übergibt das Lastenheft an den Auftragnehmer
- Der Auftragnehmer überprüft das Lastenheft und übergibt es dem Projektmanagement.
- Das Projektmanagement erstellt ein Pflichtenheft
- Das Pflichtenheft wird dem Auftraggeber übergeben
- Auf der Basis der Angaben im Pflichtenheft wird ein Vertrag durch den Auftragnehmer erstellt.
- Der Vertrag wird an den Auftraggeber weitergereicht
- Der Vertrag wird vom Auftraggeber geprüft, unterzeichnet und zurückgegeben.
- Nach Freigabe des Vertrags wird der Projektauftrag freigegeben und das Projekt wird gestartet.
In der Praxis läuft dieser Vorgang aber nicht ganz so reibungslos und linear ab. Es müssen viele Details geklärt werden und so finden viele Rücksprünge und Wiederholungen statt.
Nach IEEE ist unter einem Softwareentwurf ein Prozess zu verstehen, in dem die Architektur, die Komponenten, die Schnittstellen und andere Merkmale eines Softwaresystems definiert werden.
- Analyse
- Anforderungsanalye (Lastenheft)
- Systemspezifikation (Pflichtenheft)
- Entwurf
- Architekturentwurf (Module, Klassen, Schnittstellen)
- Detailentwurf (Datenmodell, Algorithmen)
Grafisches Beschreibungsmodell
- Programmablaufplan (PAP)
- Struktogramm
- Datenflussplan
- Entscheidungstabellen
- Unified Modeling Language (UML)
- Entity-Relationship-Modell (ERM)