SLIDE 3 What Is Static Analysis (SA) of Software?
Establish a property of a program at compile time, without executing it
Some Facts
◮ Checking done by a tool, not a human ◮ Performed usually on source or assembler code ◮ Original motivation: compiler optimization
◮ Data flow analysis, e.g., used variables ◮ Control flow analysis, e.g., reachable code
◮ Current focus: software quality
◮ Security, e.g., confidentiality, vulnerability ◮ Compliance, e.g., MISRA-C, web service protocols ◮ Defects (bug finding), e.g., memory leaks, buffer overflows ◮ Code quality, e.g., metrics, “code smells” 160425 | TUD CS SE | R. Hähnle | Static Analysis | Dagstuhl 16172 ML & SA | 1