Prozess-ID: SWE.1
Prozessgruppe: Softwareengineering
Automotive SPICE® ist eine eingetragene Marke des VDA QMC.
Der Software-Anforderungsanalyse-Prozess in Automotive SPICE® (auch als SWE.1 bekannt) hilft Ihrem Unternehmen, die softwarebezogenen Aspekte der Systemanforderungen in eine Reihe von Softwareanforderungen umzuwandeln.
Sie haben bereits System- oder Kundenanforderungen und fragen sich nun, warum Sie zusätzlich Softwareanforderungen dokumentieren sollen. Projekte müssen pünktlich, budgetgerecht und in der vom Kunden geforderten Qualität geliefert werden.
Wenn Sie Ihre Softwareanforderungen nicht dokumentieren, können Funktionen übersehen oder Kundenerwartungen falsch interpretiert werden. Werden sowohl wesentliche Softwarefunktionen als auch nicht-funktionale Anforderungen (wie z. B. Leistung, Wiederverwendbarkeit und Wartbarkeit) übersehen, kann dies zu erhöhtem Aufwand, zusätzlichen Kosten und Verzögerungen, sowie zu Fehlstarts oder sogar zusätzlichen Entwicklungszyklen führen.
Der SWE.1-Prozess ist eng mit der System-Anforderungsanalyse (SYS.2), dem System-Architekturentwurf (SYS.3), dem Software-Architekturentwurf (SWE.2) und dem Softwarequalifizierungstest (SWE.6) verknüpft. Auch das Projektmanagement (MAN.3) und das Konfigurationsmanagement (SUP.8) haben aufgrund des Releasemanagements starke Abhängigkeiten. Abhängigkeiten bestehen auch zwischen dem Fehlermanagement (SUP.9) und dem Änderungsmanagement (SUP.10), da in Tests identifizierte Mängel behoben und Fehlerbehebungen und Änderungsanträge z. B. in Regressionstests berücksichtigt werden müssen.
Im Folgenden sind die wichtigsten Aspekte der Software-Anforderungsanalyse in Automotive SPICE® aufgeführt.
Erfüllung von Kundenerwartungen und wichtigen Vorschriften
Die Dokumentation von Softwareanforderungen ist wichtig, damit alle funktionalen und nicht-funktionalen Aspekte des durch die Software realisierten Systems verwaltet, implementiert und getestet werden können.
Die Softwareanforderungen beschreiben, was die Software tun soll, nicht wie sie etwas tun soll. Die Softwareanforderungen beschreiben zum Beispiel, was die Signale, die an den Pins des Mikrocontrollers ankommen, bedeuten sollen, was die Software mit diesen Signalen machen soll und welche Ausgangssignale wir an den Pins des Mikrocontrollers anlegen.
Bei diesem Ansatz werden die Anforderungen außerdem so strukturiert, dass sie für die interne Organisation Sinn ergeben und die Verteilung der Anforderungen auf verschiedene Interessensbereiche unterstützen.
So wird sichergestellt, dass jede (z. B. für eine bestimmte Softwarefunktion) verantwortliche Einheit weiß, welche Anforderungen für sie relevant sind. Das können beispielsweise Attribute zur Klassifizierung der Anforderungen an die funktionale Sicherheit nach ISO 26262 sein, oder eine funktionale Struktur zur Unterstützung der Verteilung auf Funktionsgruppen usw.
In der Regel wird das Anforderungsmanagement durch geeignete Tools wie z. B. eine Anforderungsdatenbank unterstützt.
Analyse und Verständnis der Auswirkungen aller Anforderungen
Wie der Name schon sagt, geht es bei diesem Prozess auch darum, die Anforderungen zu analysieren, und zwar auf Machbarkeit bzw. Risiko – zwei eng verbundene Aspekte – analysiert werden. Mangelndes Verständnis für die Machbarkeit einer Anforderung birgt ein Risiko, weil die Suche nach der Umsetzung zeitaufwändig werden kann. Hier besteht auch ein enger Zusammenhang zu den Schätzungen, die im Rahmen des Projektmanagements (MAN.3.BP5) durchgeführt werden müssen.
Ein weiteres wichtiges Thema ist die Testbarkeit. Sie kann durch die Unterstützung der Tester gewährleistet werden. Tester sollten auch mit der Überprüfung der Anforderungen betraut werden. Darüber hinaus sollte die Analyse auch die technischen Auswirkungen abdecken und die Abhängigkeiten zwischen den Anforderungen bewerten. Ein Beispiel hierzu finden Sie im Video zur System-Anforderungsanalyse (SYS.2).
Abschließend sollte die Analyse auch wirtschaftliche Aspekte der Anforderungen abdecken. Deshalb sollten die Auswirkungen der Umsetzung der verschiedenen Anforderungen auf die Kosten und den Zeitplan untersucht werden. Es sollte dabei betont werden, dass Automotive SPICE® nicht vorschreibt, wo diese Informationen zu dokumentieren sind. Beispielsweise können Sie den ersten Teil der Analyse (Machbarkeit und Risiken) in der Anforderungsdatenbank hinterlegen, die technischen Auswirkungen in den verknüpften Änderungsanträgen, und die Auswirkungen auf Kosten und Zeitplan in Ihrem Projektmanagementtool.
Traceability und Konsistenz der Anforderungen sicherstellen
Bei diesem Prozess muss die Traceability zwischen den Softwareanforderungen, den Systemanforderungen und der Systemarchitektur sowie nachgelagert zwischen V-Modell und Softwarearchitektur sowie Feinentwurf, unde zu allen relevanten Testprozessen sichergestellt werden.
In Automotive SPICE® wird jedoch ausdrücklich darauf hingewiesen, dass eine Redundanz nicht erforderlich ist. So können Organisationen entscheiden, ob sie eine Traceability zu den Systemanforderungen, zur Systemarchitektur oder zu einer Kombination der beiden bevorzugen. Der richtige Ansatz muss die Entwicklung bestmöglich unterstützen, selbst wenn er nicht der einfachste Weg ist.
Die Traceability kann durch Hyperlinks, Traceability-Matrizen oder durch andere verwaltbare Mittel hergestellt werden, die von der Toollandschaft eines Unternehmens unterstützt werden.
Traceability dient folgenden Zwecken:
- Konsistenzprüfungen, d. h. der Überprüfung auf Vollständigkeit und Richtigkeit der Softwareanforderung
- Der Auswirkungsanalyse (Impactanalyse) bei Änderungsanträgen oder Mängeln
- Der Berichterstattung über den Stand der Implementierung und der Tests
Und schließlich ist es wichtig, die Konsistenz zu fördern. Konsistenz bedeutet, dass die Vollständigkeit und Richtigkeit der Softwareanforderungen gegenüber den Systemanforderungen bzw. der Systemarchitektur nachgewiesen wird. Dies kann nur durch eine Review erfolgen.
Wird diese Review ausgelassen, können unvollständige oder fehlerhafte Softwareanforderungen unentdeckt bleiben. Mängel im Softwarequalifizierungstest können ebenfalls unbemerkt bleiben, da dieser Test anhand der Softwareanforderungen durchgeführt wird. Bei fehlerhaften Softwareanforderungen zeigt Ihr Test möglicherweise kein falsches Verhalten.
Warum sollten Sie für den Automotive SPICE®-Support UL Solutions Software Intensive Systems wählen?
UL Solutions Software Intensive Systems unterstützt Erstausrüster (OEMs) und Zulieferer in der Automobilindustrie bei folgenden Aufgaben:
- Die wichtigsten Entwicklungsprozesse auf die erforderliche Fähigkeitsstufe zu bringen,
- Bestehende Arbeitsabläufe und Vorgehensweisen systematisch zu verbessern
- Bewertung von Prozessverbesserungen durch formale Assessments und Gap-Analysen.
- Erfüllung der Anforderungen von Automotive SPICE® im Einklang mit Sicherheit, funktionaler Sicherheit und agilen Methoden
- Schulung von Mitarbeitern und Assessoren
Erfahren Sie mehr über die Automotive SPICE® Software-Anforderungsanalyse
Sie wollen mehr über die Automotive SPICE ® Software-Anforderungsanalyse (SWE.1) erfahren? Sehen Sie sich unser Video an!
Kontaktieren Sie unser Team
Danke für Ihr Interesse an unseren Produkten und Services. Teilen Sie ein paar Informationen mit uns, damit wir Sie mit der richtigen Person zusammenbringen können.