Anforderungsspezifikation
Requirements Specification
Eine systematisch dargestellte Sammlung von Anforderungen - typischerweise für ein System -, die vorgegebene Kriterien erfüllt, wird als Anforderungsspezifikation bezeichnet. Ein Requirements Specification ist ein wesentliches Arbeitsprodukt des Anforderungsmanagement-Prozesses.
Inhalte einer Requirements Specification nach Volere
Volere ist eine Sammlung von Hilfsmitteln und Materialien um das Thema Requirements Engineering (Anforderungsanalyse) im Softwareentwicklungsprozess. Bekannt sind besonders folgende Dokumentvorlagen:
- Volere Requirements Specification Template, eine sehr umfassende Vorlage für die Aufnahme aller Arten von Anforderungen.
- Volere Atomic Requirement Template, auch bekannt unter dem Namen Snow Card, eine Karteikarte zur vollständigen Aufnahme aller Informationen zu einer einzelnen Anforderung.
Darüber hinaus wird mit dem Requirements Process eine Vorgehensweise zum Finden und Erfassen von Anforderungen vorgeschlagen.
Die Volere-Templates konnten bis zum Jahr 2008 kostenlos heruntergeladen werden. Seit 2009 ist es kostenpflichtig. Sie dürfen gegen Entrichtung einer Spende und unter Angabe der Quelle für Anforderungsanalyse in eigenen Projekten eingesetzt werden.
Snow Card
Abbildung Snow Card (Quelle = https://www.volere.org/wp-content/uploads/2018/12/snowcard.pdf )
Volere Requirements Specification Template
Der folgende Abschnitt gibt das Inhaltsverzeichnis des Templates wieder. Dabei meint Produkt das, was als Ergebnis eines angenommenen Projekts geliefert wird, bei Softwareprojekten in der Regel ein Stück Software. Es werden 27 Typen von Anforderungen in 5 übergeordneten Kategorien unterschieden. In der Praxis ist zu erwarten, dass die funktionalen Anforderungen den größten Raum einnehmen.
Projekttreiber
- Der Zweck des Projekts
- Kunden und andere Beteiligte/Betroffene
- Nutzer des Produkts
Randbedingungen
- Vorgegebene Randbedingungen für das Projekt
- Namenskonventionen und Definitionen
- Relevante Fakten und Annahmen
Funktionale Anforderungen
- Arbeitsumfang
- Abgrenzung des Produkts
- Anforderungen an Funktionen und Daten des Produkts
Nicht-funktionale Anforderungen
- Look and Feel
- Benutzbarkeitsanforderungen
- Performance / Durchsatz / Kapazität / Sicherheit
- Operationale Anforderungen
- Wartungs- und Portierungsanforderungen
- Zugriffsschutzanforderungen
- Kulturelle und politische Anforderungen
- Rechtliche Anforderungen
Projektangelegenheiten
- Offene Punkte
- Fertiglösungen
- Neue Probleme
- Aufgaben
- Inbetriebnahme und Migration
- Risiken
- Kosten
- Benutzerdokumentation und Schulung
- Warteraum
- Lösungsideen
Quelle = https://de.wikipedia.org/wiki/Volere
Inhalte eines SRS
Eine Softwareanforderungsspezifikation (SRS) ist ein Dokument, dessen Zweck darin besteht, eine umfassende Beschreibung eines zu entwickelnden Softwareprodukts bereitzustellen, einschließlich seines Zwecks, der wichtigsten unterstützten Geschäftsprozesse, der Funktionen, der wichtigsten Leistungsparameter und des Verhaltens. Als solches dient es im Wesentlichen als Input, die den Entwicklungsprozess steuert.
Keine zwei SRS-Dokumente sind identisch, da Softwareprojekte unterschiedlich sind. Einige verwenden das Wasserfallentwicklungsmodell, andere üben eine agile Entwicklung aus. Es ist jedoch weiterhin möglich, die Hauptkomponenten eines SRS zu destillieren und eine grobe Übersicht darüber zu erstellen, wie es aussehen kann:
- Einleitung
- Dokumentenlekung
- Zweck
- Publikum
- Verwendungszweck
- Geltungsbereich
- Akronyme und Definitionen
- Allgemeine Beschreibung
- Bedürfnisse des Benutzers
- Abhängigkeiten und Annahme
- Anforderungen und Systemfunktionen
- Funktionale Anforderungen (Utilities)
- Nicht-funktionale Anforderungen (Warranties)
- Rahmenbedingungen (Conditions)
- Externe Schnittstellenanforderungen
Verweise
- siehe Lastenheft
- siehe Pflichtenheft
- IEEEE830 was replaced by ISO/IEC/IEEE 29148:2011. The content and qualities of a good software requirements specification (SRS).
- ISO 29148 Systems and software engineering - Life cycle processes - Requirements engineering
- Software Engineering Body of Knowledge (SWEBOK)
- https://www.volere.org/