Changes between Version 5 and Version 6 of path:tutorial:tdfn


Ignore:
Timestamp:
12/17/2013 05:05:10 PM (10 years ago)
Author:
michael.perscheid
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • path:tutorial:tdfn

    v5 v6  
    99We present test-driven fault navigation as an interconnected guide for debugging reproducible failures with the scientific method. Based on the analysis of passing and failing test cases, we reveal anomalies and integrate them into a breadth-first search that leads developers to defects. This systematic search consists of four specific navigation techniques that together support the creation, evaluation, and refinement of failure cause hypotheses for the scientific method. First, ''structure navigation'' localizes suspicious system parts and restricts the initial search space. Second, ''team navigation'' recommends experienced developers for helping with failures. Third, ''behavior navigation'' allows developers to follow emphasized infection chains back to root causes. Fourth, ''state navigation'' identifies corrupted state and reveals parts of the infection chain automatically. We implement test-driven fault navigation in our Path Tools framework for the !Squeak/Smalltalk development environment and limit its computation cost with the help of our incremental dynamic analysis. This lightweight dynamic analysis ensures a feeling of immediacy when debugging with our tools by splitting the run-time overhead over multiple test runs depending on developers’ needs. Hence, our test-driven fault navigation in combination with our incremental dynamic analysis answers important questions in a short time: where to start debugging, who understands failure causes best, what happened before failures, and which program entities are in question.
    1010
    11 == Screencast ==
     11== Demonstration ==
     12
     13[[Image(tdfnyoutube.png, 300px, link=http://www.youtube.com/watch?v=UFAbTpT1PWo#t=0)]]
    1214
    1315== Publications ==
    1416
    1517== Resources ==
     18TODO: Add Demo-Image