Abo
  • Services:
Anzeige
Tikanga, Pachika und Javalanche helfen bei der Fehlersuche

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.

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.

Anzeige

Tikanga: Analyse von Programmierregeln

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.


eye home zur Startseite
Klumpatsch 23. Mär 2010

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



Anzeige

Stellenmarkt
  1. Bechtle Clouds GmbH, Frankfurt am Main
  2. Siemens Postal, Parcel & Airport Logistics GmbH, Nürnberg
  3. Home Shopping Europe GmbH, Ismaning Raum München
  4. Robert Bosch GmbH, Abstatt


Anzeige
Spiele-Angebote
  1. 499,99€
  2. (-57%) 12,99€
  3. 10,99€

Folgen Sie uns
       


  1. Siri-Lautsprecher

    Apple versemmelt den Homepod-Start

  2. Open Routing

    Facebook gibt interne Plattform für Backbone-Routing frei

  3. Übernahme

    Vivendi lässt Ubisoft ein halbes Jahr in Ruhe

  4. Boston Dynamics

    Humanoider Roboter Atlas macht Salto rückwärts

  5. Projekthoster

    Github zeigt Sicherheitswarnungen für Projektabhängigkeiten

  6. Sicherheitslücke bei Amazon Key

    Amazons Heimlieferanten können Cloud Cam abschalten

  7. Luftfahrt

    China plant Super-Windkanal für Hyperschallflugzeuge

  8. Quad9

    IBM startet sicheren und datenschutzfreundlichen DNS-Dienst

  9. Intel

    Ice-Lake-Xeon ersetzt Xeon Phi Knights Hill

  10. Star Wars Jedi Challenges im Test

    Lichtschwertwirbeln im Wohnzimmer



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Smartphoneversicherungen im Überblick: Teuer und meistens überflüssig
Smartphoneversicherungen im Überblick
Teuer und meistens überflüssig
  1. Winphone 5.0 Trekstor will es nochmal mit Windows 10 Mobile versuchen
  2. Librem 5 Das freie Linux-Smartphone ist finanziert
  3. Aquaris-V- und U2-Reihe BQ stellt neue Smartphones ab 180 Euro vor

Erneuerbare Energien: Siemens leitet die neue Steinzeit ein
Erneuerbare Energien
Siemens leitet die neue Steinzeit ein
  1. Siemens und Schunk Akkufahrzeuge werden mit 600 bis 1.000 Kilowatt aufgeladen
  2. Parkplatz-Erkennung Bosch und Siemens scheitern mit Pilotprojekten

Cubesats: Startup steuert riesigen Satellitenschwarm von Berlin aus
Cubesats
Startup steuert riesigen Satellitenschwarm von Berlin aus
  1. Arkyd-6 Planetary Resources startet bald ein neues Weltraumteleskop
  2. SAEx Internet-Seekabel für Südatlantikinsel St. Helena
  3. Sputnik Piep, piep, kleiner Satellit

  1. Re: Olivetti Tastaturfans hier mal reingucken

    Hamsterlina | 01:21

  2. Re: +++

    HelmutJohannes | 01:17

  3. Re: Frontantrieb...

    narfomat | 00:57

  4. Re: Reifenfrage

    Neuro-Chef | 00:51

  5. Re: Wow und....Ehm...

    burzum | 00:48


  1. 19:05

  2. 17:08

  3. 16:30

  4. 16:17

  5. 15:49

  6. 15:20

  7. 15:00

  8. 14:40


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel