Systems and Software Requirements Specification (SRS)

Lastenheft und Pflichtenheft kombiniert

Die Definition von Anforderungen ist ein wesentlicher Aspekt bei der Erstellung von Software und Systemen. Das IEEE (Insitute of Electrical and Electronic Engineers) hat dazu einen Standard zur Spezifikation von Software und Systemen – die sogenannte Systems and Software Requirements Specification (SRS) – veröffentlicht. Die vollständige Bezeichnung lautet: IEEE 29148-2018 – ISO/IEC/IEEE International Standard – Systems and software engineering — Life cycle processes — Requirements engineering.

Häufig wird die SRS als Begriff synonym oder als englische Übersetzung für „Lastenheft“ verwendet. Die SRS ist jedoch nicht gleichbedeutend mit einem Lastenheft, denn sie definiert neben den customer requirements – auch C-Requirements genannt – auch development requirements – entsprechend D-Requirements genannt. In anderen Worten: eine SRS umfasst sowohl Lastenheft als auch Pflichtenheft. Dennoch definiert sie charakteristische Eigenschaften von Anforderungen, die generell auch bei der Erstellung von Lastenheften beachtet werden sollten.

Systeme oder Software – was spezifiziert die SRS?

Es gibt Publikationen, die unterscheiden zwischen einer Software Requirements Spezification (SRS) und einer System Requirements Specification (SyRS). Die Ursache für diese Unterscheidung liegt in der Weiterentwicklung des IEEE-Standards. Ursprünglich definierte die IEEE 830-1998 eine „Recommended Practice for Software Requirements Specification“, also die empfohlenen Praktiken zur Spezifikation von Softwareanforderungen. Veröffentlicht wurde der Stand im Juni 1998. Im Dezember 2011 wurde der Standard durch die ISO/IEC/IEEE 29148:2011 ersetzt. Diese neue ISO-Norm adressierte Prozesse und Produkte im Zusammenhang mit dem Engineering von Anforderungen an Systeme, Softwareprodukte und Softwaredienstleistungen. Aus der Spezifikation von Software wurde die Spezifikation von System und Software.

Im Oktober 2018 erschien eine neue, überarbeitete Fassung: ISO/IEC/IEEE 29148:2018. Sie definiert das Konstrukt einer guten Anforderung (also bspw. korrekt, eindeutig, widerspruchsfrei, nach Wichtigkeit und/oder Stabilität bewertet, verifizierbar, modifizierbar und nachvollziehbar), liefert Attribute und Eigenschaften von Anforderungen und diskutiert die iterative und rekursive Anwendung von Anforderungsprozessen über den gesamten Lebenszyklus.

Der Aufbau einer SRS

Die Systems and Software Requirements Specification ist die Basis für die Entwicklung eines Produkts. Sie definiert den Rahmen für alle Mitwirkenden. Meist beinhaltet sie folgende Elemente:

  • Einführung mit Ziel, Zweck und Scope,
  • Allgemeine Beschreibung der zu entwickelnden Lösung
  • Bedürfnisse der Anwender
  • System- und Softwareanforderungen bzw. System- und Softwarefunktionen
  • Verwendete Definitionen und Akronyme
  • Ergänzende Informationen wie Grafiken, Skizzen, Modelle, Diagramme etc.

Die Vorteile einer SRS

Das Schreiben einer Systems and Software Requirements Specification bietet zahlreiche Vorteile:

  • Sie ermöglicht eine Schätzung von Aufwänden, Kosten, Risiken etc.
  • Sie ermöglicht dem Auftraggeber bzw. Kunden, seine Vision des Projekts / der Entwicklung zu formulieren.
  • Sie bildet die Basis für ein gemeinsames, dokumentiertes Verständnis von Auftragnehmer und Auftraggeber
  • Sie dokumentiert und strukturiert den Stand der System- und Softwareanforderungen und ist somit ein gutes Arbeitsmittel für alle Mitwirkenden.

In der Praxis zeigt es sich immer wieder, dass eine schlechte bzw. ungenügende Spezifikation zu umfangreichen Folgekosten und einer Unzufriedenheit bei den Beteiligten – dem Auftraggeber, dem Auftragnehmer, den Anwendern – führt. Auch aus diesem Grund wird die Erstellung einer guten Systems and Software Requirements Specification (SRS) immer wichtiger.

Hinweise:

Weitere Informationen zu IEEE 29148-2018 finden Sie hier  »
Einen Blogbeitrag über den besten Prozess im Anforderungsmanagement finden Sie hier  » 
Einen Blogbeitrag über Best Practices beim Arbeiten mit Spezifikationen finden Sie hier  »

SRS steht nicht nur für Systems and Software Requirements Specification, sondern für eine ganze Reihe von weiteren Begriffen wie bspw. Safety Restraint System (ein Sicherheitssystem in Kraftfahrzeugen), Safety Requirement Specification (Anforderungsdokument der Funktionalen Sicherheit) oder Social Reporting Standard (Rechnungslegung für Non-Profit-Organisationen). Eine SRS Übersicht finden Sie hier  »

„Bei t2informatik wird Kompetenz mit der Fähigkeit des Zuhörens verknüpft. Ich kann Ihnen t2informatik zu 100% empfehlen.“

„Ich brauche Freiheit und Vertrauen. Und ich möchte Verantwortung übernehmen und dabei Spaß haben!“