Longitudinal Program
Analysis
My goal today
You start
The structure of program
analysis
Many variants
Broad uses
An aside
A key context: software
evolves
(Belady and Lehman, Parnas, …)
My premise
Incremental analysis:
an approach with this flavor
Modular analysis:
an approach with this flavor
Test prioritization:
an approach with this flavor
Historical test
selection:
an approach with this flavor
Why attractive?
A contrast among the
examples
Don’t weaker results hurt?
Middle ground
Analysis view of
synch-and-stabilize
Other analysis opportunities
<handwaving>
Wavelets and
multi-resolution techniques: a partial inspiration
Staged compilation:
a partial inspiration (Philipose
et al.)
A very sketchy example
Horizontal staging
</handwaving>
The real goal of analysis
Relating analyses
Confidence maps
Conclusion
Slide 30
In an ideal world…
Things change
"But not for an
arbitrary..."
"Development can be
considered a..."
Why does this matter?
A different approach
Synch-and-stabilize
augmented by an analysis goal
Positioning
The ultimate analysis??