Abo
  • IT-Karriere:

Tikanga, Pachika und Javalanche helfen bei der Fehlersuche

Uni des Saarlandes erforscht automatische Fehlerbehebung per Programmanalyse

In drei Projekten haben Forscher an der Universität des Saarlandes die Fehlersuche und -analyse bei der Softwareentwicklung erforscht. Hinter den exotischen Namen Javalanche, Pachika und Tikanga stecken Tests für Testprogramme, sich selbst reparierende Software und Codeanalyse.

Artikel veröffentlicht am ,
Tikanga, Pachika und Javalanche helfen bei der Fehlersuche

Ein Team um Andreas Zeller arbeitet im Rahmen des Forschungsprojekts Autofix an drei Softwarewerkzeugen: Tikanga, Pachika und Javalanche. Zeller ist Professor an der Universität des Saarlandes und beschäftigt sich seit mehreren Jahren mit der Erkennung von Softwarefehlern. Von ihm stammt das erstmals 2005 erschienene Buch 'Why programs fail', das sich mit Debugging beschäftigt.

Tikanga: Analyse von Programmierregeln

Stellenmarkt
  1. BWI GmbH, bundesweit
  2. BWI GmbH, Meckenheim

Im Tikanga-Projekt haben die Forscher rund 6.000 freie Linux-Programme - etwa 200 Millionen Programmzeilen - aus dem Gentoo-Projekt analysiert. Daraus konnten sie etwa 16 Millionen Regeln ableiten. Sie wurden nach Häufigkeit gewichtet. Anhand dieser Statistik können Entwickler überprüfen, ob ihr Programmierstil dem anderer Programmierer entspricht.

Anhand der gefundenen Regeln kann innerhalb des Programmcodes aber auch schnell nach spezifischen Fehlern oder Anomalien gefahndet werden, etwa nach redundanten Fehlern eines Entwicklers. Das Tikanga-Framework kann Sourcecode mit C-ähnlicher Syntax analysieren, etwa C++, Java, C# oder PHP sowie Java-Bytecode.

Auf der Webseite checkmycode.org können Interessierte ihren Code mit den Ergebnissen des Forschungsprojekts vergleichen.

Pachika: Die Software repariert sich selbst

Pachika überwacht Programme zur Laufzeit und stellt Abstürze fest. Läuft das System wieder, erkennt Pachika den Fehler und repariert das Programm entsprechend. Die Software patcht sich also selbst. Pachika klinkt sich über eine Bibliothek in das Programm ein und überwacht dessen Aktionen. Dabei werden die Abläufe protokolliert und verglichen. Bislang wurde Pachika mit mehreren Millionen Zeilen Java-Bytecode getestet.

Pachika kann als Quellcode oder im Binärformat heruntergeladen und getestet werden.

Javalanche: Tests für Softwaretests

Um Softwaretests zu testen, wenden die Forscher ihr Projekt Javalanche an. Javalanche streut absichtlich Fehler in den Programmcode, um zu prüfen, ob ein Debugger die Fehler findet. Javalanche wurde - wie der Name schon impliziert - speziell für Javacode entwickelt. Dabei verwendet Javalanche die Mutationsprüfung, geht aber noch einen Schritt weiter. Zum einen wurde die Prüfgeschwindigkeit optimiert, indem Javalanche direkt auf den Bytecode eines Programms zugreift.

Außerdem kann bei der einfachen Mutationsprüfung die Semantik des Programmcodes unverändert bleiben, was zu äquivalenten Mutationen führt und False-Positives-Meldungen verursacht. Javalanche betrachtet deshalb den Einfluss, den Mutationen auf dynamische Invarianten haben. Je mehr Invarianten auftauchen, desto höher ist die Wahrscheinlichkeit, dass eine Mutation auch für das Prüfen eines Testprogramms sinnvoll ist. Getestet wurde das Programm an sieben großen Java-Applikationen. Dabei wurden weniger als 3 Prozent äquivalente Mutationen festgestellt.



Anzeige
Top-Angebote
  1. (u. a. Kingston A400 1.92 TB für 159,90€ + Versand statt ca. 176€ im Vergleich)
  2. (u. a. Logitech MX Master Gaming-Maus für 47,99€, Gaming-Tastaturen ab 39,00€, Lautsprecher ab...
  3. (aktuell u. a. AKRacing Masster Premium Gaming-Stuhl für 269,00€, QPAD OH-91 Headset für 49...
  4. 99€

Klumpatsch 23. Mär 2010

Gewöhne dir an Code nach Formatierungsregeln zu schreiben und zu lesen. Wer sich nicht...


Folgen Sie uns
       


Apple iPad 7 - Fazit

Apples neues iPad 7 richtet sich an Nutzer im Einsteigerbereich. Im Test von Golem.de schneidet das Tablet aufgrund seines Preis-Leistungs-Verhältnisses sehr gut ab.

Apple iPad 7 - Fazit Video aufrufen
Star Wars Jedi Fallen Order: Mächtige und nicht so mächtige Besonderheiten
Star Wars Jedi Fallen Order
Mächtige und nicht so mächtige Besonderheiten

Ein Roboter mit Schublade im Kopf, das Lichtschwert als Multifunktionswerkzeug und ein sehr spezielles System zum Wiederbeleben: Golem.de stellt zehn ungewöhnliche Elemente von Star Wars Jedi Fallen Order vor.


    Vision 5 und Epos 2 im Hands on: Tolinos neue E-Book-Reader-Oberklasse ist gelungen
    Vision 5 und Epos 2 im Hands on
    Tolinos neue E-Book-Reader-Oberklasse ist gelungen

    Die Tolino-Allianz bringt zwei neue E-Book-Reader der Oberklasse auf den Markt. Der Vision 5 hat ein 7 Zoll großes Display, beim besonders dünnen Epos 2 ist es ein 8-Zoll-Display. Es gibt typische Oberklasse-Ausstattung - und noch etwas mehr.
    Ein Hands on von Ingo Pakalski

    1. Tolino Page 2 Günstiger E-Book-Reader erhält Displaybeleuchtung

    Indiegames-Rundschau: Killer trifft Gans
    Indiegames-Rundschau
    Killer trifft Gans

    John Wick Hex ist ein gelungenes Spiel zum Film, die böse Gans sorgt in Untitled Goose Game für Begeisterung und in Noita wird jeder Pixel simuliert: Die Indiegames des Monats sind abwechslungsreich und hochwertig wie selten zuvor.
    Von Rainer Sigl

    1. Indiegames-Rundschau Überleben im Dschungel und tausend Tode im Dunkeln
    2. Indiegames-Rundschau Epische ASCII-Abenteuer und erlebnishungrige Astronauten
    3. Indiegames-Rundschau Von Bananen und Astronauten

      •  /