Schattenblick →INFOPOOL →COMPUTER → FAKTEN

FORSCHUNG/097: Der digitale Kammerjäger (idw)


Karlsruher Institut für Technologie - 20.01.2011

Der digitale Kammerjäger


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 und staatliche Einrichtung 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. Das KIT verfolgt seine Aufgaben im Wissensdreieck Forschung - Lehre - Innovation.

Kontaktdaten zum Absender der Pressemitteilung unter:
http://idw-online.de/pages/de/institution1173


*


Quelle:
Informationsdienst Wissenschaft e. V. - idw - Pressemitteilung
Karlsruher Institut für Technologie, Monika Landgraf, 20.01.2011
WWW: http://idw-online.de
E-Mail: service@idw-online.de


veröffentlicht im Schattenblick zum 22. Januar 2011