Abo
  • Services:

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. B&R Industrial Automation GmbH, Essen
  2. M-net Telekommunikations GmbH, München

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
Spiele-Angebote
  1. (-78%) 1,11€
  2. 2,99€
  3. (-78%) 8,99€
  4. (-15%) 23,79€

Klumpatsch 23. Mär 2010

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


Folgen Sie uns
       


Apple WWDC 2018 Keynote in 11 Minuten - Supercut

Im Supercut zur WWDC 2018 zeigen wir in zehn Minuten, was Apple Entwicklern und Nutzern von iOS 12, MacOS Mojave und WatchOS 5 und TvOS präsentiert hat.

Apple WWDC 2018 Keynote in 11 Minuten - Supercut Video aufrufen
Esa: Sonnensystemforschung ohne Plutonium
Esa
Sonnensystemforschung ohne Plutonium

Forscher der Esa arbeiten an Radioisotopenbatterien, die ohne das knappe und aufwendig herzustellende Plutonium-238 auskommen. Stattdessen soll Americium-241 aus abgebrannten Brennstäben von Kernkraftwerken zum Einsatz kommen. Ein erster Prototyp ist bereits fertig.
Von Frank Wunderlich-Pfeiffer

  1. Jaxa Japanische Sonde Hayabusa 2 erreicht den Asteroiden Ryugu
  2. Mission Horizons @Astro_Alex fliegt wieder
  3. Raumfahrt China lädt die Welt zur neuen Raumstation ein

Garmin Fenix 5 Plus im Test: Mit Musik ins unbekannte Land
Garmin Fenix 5 Plus im Test
Mit Musik ins unbekannte Land

Kopfhörer ins Ohr und ab zum Joggen, Rad fahren oder zum nächsten Supermarkt spazieren - ohne Smartphone: Mit der Sport-Smartwatch Fenix 5 Plus von Garmin geht das. Beim Test haben wir uns zwar im Wegfindungsmodus verlaufen, sind von den sonstigen Navigationsoptionen aber begeistert.
Ein Test von Peter Steinlechner

  1. Garmin im Hands on Alle Fenix 5 Plus bieten Musik und Offlinenavigation

KI in der Medizin: Keine Angst vor Dr. Future
KI in der Medizin
Keine Angst vor Dr. Future

Mit Hilfe künstlicher Intelligenz können schwer erkennbare Krankheiten früher diagnostiziert und behandelt werden, doch bei Patienten löst die Technik oft Unbehagen aus. Und das ist nicht das einzige Problem.
Ein Bericht von Tim Kröplin

  1. Medizintechnik Künstliche Intelligenz erschnüffelt Krankheiten
  2. Dota 2 128.000 CPU-Kerne schlagen fünf menschliche Helden
  3. KI-Bundesverband Deutschland soll mehr für KI-Forschung tun

    •  /