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. Interhyp Gruppe, München
  2. EUROIMMUN AG, Dassow

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. 1.018,99€ inkl. Rabattgutschein (Vergleichspreis ca. 1.205€ inkl. Versand)
  2. 18,99€ (ohne Prime oder unter 29€ zzgl. Versand)
  3. 219,90€

Klumpatsch 23. Mär 2010

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


Folgen Sie uns
       


Sechs Bluetooth-Hörstöpsel im Test

Wir haben sechs neue Bluetooth-Hörstöpsel getestet. Mit dabei sind Modelle von Sennheiser, Audio Technica, Master & Dynamic sowie HMD Global. Aber auch zwei Modelle kleinerer Startups sind vertreten. Und eines davon hat uns bezüglich der Akkulaufzeit sehr überrascht. Kein anderer von uns getesteter Bluetooth-Hörstöpsel hat bisher eine vergleichbar lange Akkulaufzeit zu bieten - wir kamen auf Werte von bis zu 11,5 Stunden statt der sonst üblichen drei bis fünf Stunden.

Sechs Bluetooth-Hörstöpsel im Test Video aufrufen
Thyssen-Krupp Testturm Rottweil: Herr Fetzer parkt die Aufzugkabine um
Thyssen-Krupp Testturm Rottweil
Herr Fetzer parkt die Aufzugkabine um

Ohne Aufzüge gäbe es keine Hochhäuser. Aber inzwischen sind Wolkenkratzer zu hoch für herkömmliche Systeme. Thyssen-Krupp testet derzeit einen neuartigen Aufzug, der beliebig hoch fahren kann. Inspiriert ist er vom Paternoster und dem Transrapid. Wir waren im Testturm.
Ein Bericht von Werner Pluta

  1. Ceramic Speed Hätte, hätte - Fahrrad ohne Kette
  2. Geheimdienste und Bundeswehr Masterstudiengang für Staatshacker gestartet
  3. Sonitus Technologies Zahnmikrofon sorgt für klare Kommunikation

Mobile Bezahldienste: Wie sicher sind Apple Pay und Google Pay?
Mobile Bezahldienste
Wie sicher sind Apple Pay und Google Pay?

Die Zahlungsdienste Apple Pay und Google Pay sind nach Ansicht von Experten sicherer als klassische Kreditkarten. In der täglichen Praxis schneidet ein Dienst etwas besser ab. Einige Haftungsfragen sind aber noch juristisch ungeklärt.
Von Andreas Maisch

  1. Anzeige Was Drittanbieter beim Open Banking beachten müssen
  2. Finanzdienstleister Wirecard sieht kein Fehlverhalten
  3. Fintech Wirecard wird zur Smartphone-Bank

FreeNAS und Windows 10: Der erste NAS-Selbstbau macht glücklich
FreeNAS und Windows 10
Der erste NAS-Selbstbau macht glücklich

Es ist gar nicht so schwer, wie es aussieht: Mit dem Betriebssystem FreeNAS, den richtigen Hardwarekomponenten und Tutorials baue ich mir zum ersten Mal ein NAS-System auf und lerne auf diesem Weg viel darüber - auch warum es Spaß macht, selbst zu bauen, statt fertig zu kaufen.
Ein Erfahrungsbericht von Oliver Nickel

  1. TS-332X Qnaps Budget-NAS mit drei M.2-Slots und 10-GBit-Ethernet

    •  /