Funktionale Anforderung
Eine funktionale Anforderung definiert eine Funktion des Softwaresystems oder seiner Komponenten. Eine Funktion wird als ein Satz von Eingaben, Verhalten und Ausgaben beschrieben. Die funktionalen Anforderungen können sein: Berechnungen, technische Details, Datenmanipulation und andere spezifische Funktionalitäten, die ein System erfüllen soll. Die Verhaltensanforderungen für jede funktionale Anforderung werden in den Anwendungsfällen gezeigt . Sie werden durch nichtfunktionale Anforderungen ergänzt , die sich stattdessen auf Design oder Implementierung konzentrieren.
Wie im Requirements Engineering definiert , legen funktionale Anforderungen das Verhalten der Software fest.
Typischerweise generiert ein Anforderungsanalytiker funktionale Anforderungen, nachdem er Anwendungsfälle durchgeführt hat . Dies kann jedoch Ausnahmen haben, da die Softwareentwicklung ein iterativer Prozess ist und einige Anforderungen dem Design der Anwendungsfälle vorausgehen. Beide Elemente (Use Cases und Requirements) ergänzen sich in einem bidirektionalen Prozess.
Eine typische funktionale Anforderung enthält einen Namen, eine eindeutige Seriennummer und eine Zusammenfassung. Diese Informationen werden verwendet, um dem Leser zu helfen, zu verstehen, warum die Anforderung notwendig ist, und um die Produktentwicklung zu verfolgen.
Der Kern der Anforderungen liegt in der Beschreibung des geforderten Verhaltens, die klar und prägnant sein muss. Dieses Verhalten kann auf Organisations- oder Geschäftsregeln zurückzuführen sein oder durch Interaktion mit Benutzern, Investoren und anderen Experten in der Organisation entdeckt werden.
Bücher
- Wiegers, Karl E. (2003). Softwareanforderungen 2: Praktische Techniken zum Erfassen und Verwalten von Anforderungen während des gesamten Produktentwicklungszyklus, 2. Aufl., Redmond: Microsoft Press. ISBN 0-7356-1879-8 . (auf Englisch)
- Andrew Stellman und Jennifer Greene (2005). Angewandtes Software-Projektmanagement. Cambridge, MA: O’Reilly Media. ISBN 0-596-00948-8 . (auf Englisch)
- Ian Somerville (2006). Software Engineering, 8. Aufl.. ISBN 0-321-31379-8 . (auf Englisch)
- Pressmann, Roger (2002). Software Engineering, ein praktischer Ansatz, McGraw Hill