Home | english | Impressum | Sitemap | Intranet | KIT
Portrait Monika Landgraf
Kontakt:
Monika Landgraf
Pressesprecherin, Leitung Presse

Tel: +49 721 608-47414
Fax: +49 721 608-43658
E-Mail

Presseinformation 009/2011

Der digitale Kammerjäger

KIT-Forscher entwickeln Methoden zur Lokalisierung von Software-Fehlern, um Entwicklungszeiten deutlich zu reduzieren
KIT-Forscher sind auf der Jagd nach digitalem Ungeziefer (Foto: Thorsten Freyer)
KIT-Forscher sind auf der Jagd nach digitalem Ungeziefer (Foto: Thorsten Freyer)

Der PC ist kaum noch aus dem heutigen Leben wegzudenken. Unzählige Anwender schätzen die elektronische Rechenmaschine für die Unterstützung bei den verschiedensten Anwendungen. Doch kaum ein Anwender bleibt von Software-Fehlern, so genannten Bugs (engl.: Käfer), verschont. Genau wie der reale Namensgeber ist das digitale Ungeziefer schwer zu finden und zu beseitigen. Spezialisten des Instituts für Programmstrukturen und Datenorganisation (IPD) am KIT arbeiten daran, die Suche einfacher zu gestalten.

Nach Aussagen des Research Triangle Institute (RTI) werden bei der Softwareentwicklung rund 35 Prozent der Zeit mit der Fehlersuche verbracht. Die Grundform dieses so genannten Debugging besteht darin, ein Programm Schritt für Schritt abzuarbeiten. Dabei muss die Belegung von Variablen beobachtet werden. Selbst bei kleineren Software-Projekten können sowohl die Anzahl der durchlaufenen Schritte als auch die Anzahl der belegten Variablen und die Entscheidungen, die von der Belegung abhängen, gigantisch sein. Die Komplexität von Software führt zudem in vielen Fällen dazu, dass sich ein Fehler nur unter gewissen Bedingungen manifestiert. Ein kurzer Blick auf den Programmtext hilft bei der Fehlersuche selten weiter. Um einen Fehler zu finden, sind oft viele schrittweise Ausführungen des Programmes unter den Argusaugen des Programmierers nötig – eine Sisyphusaufgabe.

Es existieren vielfältige Ansätze, diese Arbeit zu optimieren. Einige zielen darauf ab, Fehler von vornherein zu vermeiden. Aber Bugs können nicht vollständig vermieden werden und sind nicht nur während der Entwicklung ein lästiges Übel. Kaum ein Programm ist bei der Markteinführung vollständig fehlerfrei. Um Programmierer bei der Fehlersuche effektiv zu unterstützen, entwickeln Informatiker am Lehrstuhl für Systeme der Informationsverwaltung am IPD unter Leitung von Professor Klemens Böhm Methoden, die Programmierern Hinweise geben, wo sie überhaupt nach einem Fehler suchen sollten. „Wenn ein Programmierer im Schnitt nur noch halb so viel Programmtext ansehen muss, ist das eine enorme Arbeitserleichterung“, so Projektleiter Christopher Oßner.

Um einem Programmfehler auf die Schliche zu kommen, setzen die Forscher Methoden des Data-Mining ein. Diese beschäftigen sich damit, Interessantes in Datenbeständen zu finden. Ähnliche Mittel werden beispielsweise eingesetzt, um Spam von erwünschten E-Mails zu trennen oder Sterne in Teleskopaufnahmen zu Galaxien zusammenzufassen. Um so auf die Jagd nach Bugs zu gehen, wird aufgezeichnet, was ein Programm während seiner Ausführung tut. Diese Daten analysiert man mit Hinblick darauf, was für einen Programmfehler typisch ist.

Die gewonnenen Daten sind üblicherweise sehr umfangreich, die Analyse daher überaus aufwendig. Um der Datenfülle Herr zu werden, setzten die Wissenschaftler am IPD nun ein hierarchisches Vorgehen ein. Anstatt den gesamten Datenbestand auf einmal zu analysieren, wird er zunächst auf einer gröberen Ebene betrachtet. „Wenn Sie eine Weltreise planen, studieren Sie nicht als Erstes die Straßenkarten einer Stadt, sondern werfen zunächst einen Blick auf den Globus“, veranschaulicht Oßner das Vorgehen, mit dem auch größere Softwareprojekte analysiert werden können. Die so gewonnenen Informationen können schließlich einen Programmierer bei seiner Suche nach einem Defekt in dem Programm anleiten.

Die Aufgabenstellung ist nicht nur aus wirtschaftlicher Sicht interessant, schließlich gibt es hier großes Potenzial zum Einsparen von Zeit bei der Entwicklung von Software. Innerhalb der Data-Mining-Forschergemeinschaft wird Fehlerlokalisierung als eines der interessantesten und herausragendsten Probleme angesehen. Das IPD wird seine aktuellen Ergebnisse daher im April auf der SDM, der Konferenz für Daten-Analyse der amerikanischen Gesellschaft für industrielle und angewandte Mathematik, der Fachwelt vorstellen.

 

Das Karlsruher Institut für Technologie (KIT) ist eine Körperschaft des öffentlichen Rechts nach den Gesetzen des Landes Baden-Württemberg. Es nimmt sowohl die Mission einer Universität als auch die Mission eines nationalen Forschungszentrums in der Helmholtz-Gemeinschaft wahr. Thematische Schwerpunkte der Forschung sind Energie, natürliche und gebaute Umwelt sowie Gesellschaft und Technik, von fundamentalen Fragen bis zur Anwendung. Mit rund 9400 Mitarbeiterinnen und Mitarbeitern, darunter mehr als 6000 in Wissenschaft und Lehre, sowie 24 500 Studierenden ist das KIT eine der größten Forschungs- und Lehreinrichtungen Europas. Das KIT verfolgt seine Aufgaben im Wissensdreieck Forschung – Lehre – Innovation.

del, 20.01.2011

Weiterer Kontakt:

Denis Elbl
PKM, Internetredaktion
Tel.: +49 721 608-48750
Fax: +49 721 608-45681
denis elblClc6∂kit edu