Software Reliability Engineering im Infotainment - Georg-August ...
Software Reliability Engineering im Infotainment - Georg-August ...
Software Reliability Engineering im Infotainment - Georg-August ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
2.2.2 Anforderungen an die Prüfung eingebetteter <strong>Software</strong><br />
„<strong>Software</strong> <strong>Engineering</strong> für eingebettete Systeme ist eine wichtige Disziplin, die<br />
zwischen dem „klassischen“ <strong>Software</strong> <strong>Engineering</strong> und dem System <strong>Engineering</strong><br />
angesiedelt ist.“ (Liggesmeyer 2005a, S. 1). Es werden Techniken, Methoden und<br />
Prozessen aus beiden genannten Disziplinen angepasst und ergänzt. Das heißt, die oben<br />
genannten Prüftechniken sind auch für die Prüfung eingebetteter <strong>Software</strong> relevant. Bei<br />
eingebetteter <strong>Software</strong> kommen jedoch noch einige Anforderungen hinzu, wie z.B.<br />
nicht-funktionale Qualitätsanforderungen (z.B. safety) sowie bei sicherheitskritischen<br />
Systemen Zulassungsprozesse (vgl. Liggesmeyer 2005a, S. 8). Der dynamische Test –<br />
wie Pfadüberdeckungs- und Ausweisungsüberdeckungstest – und stochastische<br />
Verfahren ermöglichen eine wichtige quantitative Aussage zur Zuverlässigkeit für<br />
eingebettete <strong>Software</strong>. Es ist auch möglich, die kombinierte Verwendung von statischer<br />
Analyse und formale Techniken zur Prüfung eingebetteter <strong>Software</strong> zu wählen, um so<br />
deren jeweilige Schwächen zu vermeiden (vgl. Liggesmeyer 2005b, S. 213). Die<br />
Quantifizierung der stochastischen Zuverlässigkeitsanalyse ermöglicht die Aufdeckung<br />
von Restrisiken, die durch <strong>Software</strong> verursacht werden (vgl. Liggesmeyer 2005b, S.<br />
221) (vgl. ausführlich Kap. 3). Zusammenfassend lässt sich sagen, dass gerade bei der<br />
Prüfung eingebetteter <strong>Software</strong> Risiken, die von Restfehlern ausgehen, quantifiziert<br />
werden sollten, das heißt, <strong>Software</strong> <strong>Reliability</strong> Modelle zusätzlich zu dynamischen<br />
Tests eingesetzt werden sollten: „Die Quantifizierung der Zuverlässigkeit eingebetteter<br />
<strong>Software</strong> ist wichtig <strong>im</strong> Rahmen der Ermittlung der durch die <strong>Software</strong> verursachten<br />
Restrisiken.“ (Liggesmeyer 2005b, S. 221).<br />
2.2.3 Testen innerhalb des <strong>Software</strong>entwicklungsprozesses<br />
Je nach Phase des Lebenszyklus von <strong>Software</strong> kann man verschiedene Arten von Tests<br />
unterscheiden. Spillner und Linz (2005, S. 40) beschreiben das Testen am V-Modell<br />
nach Boehm (zur Weiterentwicklung und grafischen Darstellung hin zum W-Modell<br />
vgl. Spillner et al. 2006). In diesem Modell wird das Testen als gleichwertig zu<br />
Entwicklung und Programmierung dargestellt, daher hat das Testen einen eigenen<br />
gleichberechtigten „Ast“. Im Gegensatz zum Wasserfall-Modell, bei dem<br />
Entwicklungsschritten Tests nur zugeordnet werden, scheint das V-Modell für das<br />
Testen noch vielversprechender. Das „V“ weist darüber hinaus auf Verifikation und<br />
Validation hin (vgl. Spillner; Linz 2005, S. 41). Verifikation überprüft ob die<br />
8