28.04.2003

BUGS

Bildquelle: ORF.at

Software ist häufigste Fehlerquelle

Egal ob Geschirrspüler, Auto, Waschmaschine oder Handy - streikt ein Gerät, liegt es immer öfter an einem Fehler in der Software.

Da heutzutage die meisten Dinge über eine Software betrieben werden, wird es immer schwerer, den auftretenden Fehlern zu entkommen. Ganze Kraftwerke können durch kleine Schlampereien im Programmcode vollständig lahm gelegt werden.

Experten sind der Meinung, Software könnte wesentlich zuverlässiger sein, würden die Hersteller das nur wollen. Viele glauben weiters, dass eine Haftung für Bugs seitens der Hersteller das beschleunigen könnte.

Drei Zeilen "sicherer" Code pro Tag

Vor allem mangelndes Testen ist laut Peter Neumann, Forscher am "International Computer Science Laboratory", schuld an der Misere. "Die Vorstellung, dass wir von etwas abhängig sind, das schon an sich nicht vertrauenswürdig ist, erschreckt mich", so Neumann.

Als Neumann gemeinsam mit der NASA an Software für ein Spaceshuttle arbeitete, produzierte sein Team nur drei Zeilen, dafür aber "garantiert sicheren" Code pro Tag.

Solch ein langsames Vorgehen ist jedoch für die Industrie undenkbar, bestehen die wichtigen Anwendungen doch meist aus Millionen Zeilen an Code.

Neben der Komplexität der Software führen die Entwickler die Mängel auch auf den enormen Zeitdruck, unter dem sie arbeiten, zurück. Unter dem Druck der schnellen kommerziellen Veröffentlichung seien auch die Arbeitsmethoden oft unzureichend.

Automatische Test-Tools fehlen

Die Entwickler selbst wenden meist die Hälfte der Zeit mit Programmieren, die andere mit der Suche nach eventuellen Bugs und deren Reparatur auf.

In dieser Testphase weist ein Programm im Durchschnitt zehn Fehler pro 1.000 Programmzeilen auf.

Das Problem der Programmierer liegt darin, dass ihnen bisher kein verlässliches Werkzeug zur Messung der Vertrauenswürdigkeit ihrer Softwaredesigns zur Verfügung steht.

Das "Sustainable Computing Consortium" [SCC] will nun entsprechende automatische Werkzeuge zur Analyse der Sicherheit der Software entwicklen.

Haftung für Sicherheitslücken

Andere sind überzeugt, dass nur eine Haftung der Hersteller zu einer Verbesserung führen kann.

Doch eine Einführung dieser Haftung könnte Innovationen bremsen und die Preise für Softwareprodukte in die Höhe treiben.

Überlegt wird daher, die Haftung nur bei Verschweigen des Bug an die Konsumenten und bei festgelegten Schadenshöhen greifen zu lassen.