Integration of static and dynamic analysis for understanding legacy source code
1. SCCH is an initiative of SCCH is located in
Integration of Static and Dynamic Analysis for
Understanding Legacy Source Code
Michael Moser
+43 7236 3343 814
michael.moser@scch.at
www.scch.at
ICSME’16, Industry Track, 06.10.2016
11. Integration of Static and Dynamic Analysis for Understanding Legacy Source Code
use of dynamic analysis
Examine program execution
Do not fully capture behavior
Needed: Model Interpretation
Include values from model execution
Merge with results from static analysis
Starting Point: Overall Approach
11
use of static analysis
Analyze entire program sources
Extract abstract representations
Application of RbG* to extract
Mathematical formulae
Decision tables / path conditions
Essential program structures
Needed: Stepwise Computation
from a model input to its outputs
Out1
Var1
In1
Var2
In2
Out1
Var1
In1
Var2
In2
input
values
*M. Moser and J. Pichler: RbG: A Documentation Generator
for Scientific and Engineering Software, (SANER 2015)
16. Integration of Static and Dynamic Analysis for Understanding Legacy Source Code
Results for Example: Stepwise Computation
Symbol Formula Path Condition Input
17. Integration of Static and Dynamic Analysis for Understanding Legacy Source Code
Results for Example: Stepwise Computation
Symbol Formula Path Condition Input
One table for each result
One row for each computation that may influence result
Variables used within definitions are repeatedly resolved
Variable names may be replaced with symbol info