Sie sind hier: HomeRubrikenEmbeddedEntwicklungstools

Rechtliche Belange des Software-Tests bei eingebetteten Systemen

Software in Eingebetteten Systemen übernimmt immer komplexere Aufgaben. Steigende Komplexität bringt aber auch ein höheres Risiko von Fehlfunktionen, speziell wenn Entwicklungs- und Testaufwand einen konkurrenzfähigen Preis erlauben sollen. Wie viel oder wenig...

Software in Eingebetteten Systemen übernimmt immer komplexere Aufgaben. Steigende Komplexität bringt aber auch ein höheres Risiko von Fehlfunktionen, speziell wenn Entwicklungs- und Testaufwand einen konkurrenzfähigen Preis erlauben sollen. Wie viel oder wenig muss Software von Rechts wegen getestet werden, bevor man das Produkt auf den Markt bringen darf? Wie sieht es da in „heiklen Branchen“ aus, wo ein Defekt auch ein Sicherheitsrisiko darstellt?

Im September 2003 schrieb die Deutsche Presseagentur „Software ist Pannenursache Nummer eins“ als Überschrift zu einer Aussendung über Elektronik und ihre Defekte in Kraftfahrzeugen. Seither wurde die Anzahl der Steuergeräte in neuen Kraftfahrzeugen nicht gerade weniger und deren Aufgaben noch komplexer. So wie es aussieht, wird dieser Trend sowohl im Automobil als auch in anderen Bereichen anhalten: Seit langem wird diskutiert, software-gesteuerten Systemen mehr sicherheitsrelevante Aufgaben anzuvertrauen.

Mit steigender Erwartungshaltung an die Software erhöht sich auch das Haftungsrisiko für den Software-Lieferanten. Er ist angehalten, seine Software hinreichend zu testen. Was „hinreichend“ ist, wird manchmal erst vor Gericht entschieden. Dieser Artikel soll helfen, das einfacher in Erfahrung zu bringen. Die folgenden Seiten geben eine Einführung in die gesetzlichen Rahmenbedingungen. Der zweite Teil dieses Beitrags wird Normen und technische Aspekte zum Thema Software-Test beleuchten.

„Software-Fehler“ im Sinne des Gesetzes

Ein Lieferant haftet nur dann für durch sein Produkt verursachten Schaden, wenn sein Produkt fehlerhaft ist. Daher ist es wichtig, wie der Gesetzgeber einen Software-Fehler definiert. Wenn eine Software-Spezifikation (ein Software Requirements Document, ein Lastenheft, ein Pflichtenheft) vorliegt, dann ist die Software in jedem Fall dann fehlerhaft, wenn sie nicht der von beiden Parteien vereinbarten Spezifikation entspricht. Soweit keine vereinbarte Spezifikation vorhanden ist, liegt ein Fehler vor, wenn der Software Eigenschaften fehlen, die generell bei Software der betreffenden Kategorie erwartet werden können oder bei Software der gleichen Art üblich sind, ausgenommen, es wurde vereinbart, dass diese Eigenschaften nicht vorliegen müssen.

Der Kunde kann erwarten, dass sicherheitsrelevante Software gemäß dem Stand der Wissenschaft und Technik entwickelt wird und so sicher ist, wie man für den „gewöhnlichen Einsatz“ der Software annehmen kann. Dabei ist für den Gesetzgeber auch der Preis der Software (bzw. der programmierbaren Elektronik) relevant. Bei einem Hochpreisprodukt darf der Kunde von einem höheren Absicherungsgrad ausgehen als bei einem Billigprodukt [1]. Durch den Begriff „Stand der Wissenschaft und Technik“ wird das Ausmaß der Anforderungen an sicherheitsrelevante Produkte deutlich: Er umfasst insbesondere alle Patente, alle nichtpatentierten, aber bekannten technischen Erkenntnisse sowie alle einschlägigen technischen Publikationen (jeweils weltweit).