Computer Science Colloquium

Practical Analysis Tools for Large-Scale Software Development

Manu Sridharan
University of California, Berkeley

Friday, April 6th 11:30 a.m.
Room 1302 Warren Weaver Hall
251 Mercer Street
New York, NY 10012-1185

Colloquium Information:


Richard Cole, (212) 998-3119


Program analysis tools are starting to change how real software is developed: verifiers can now eliminate certain complex bugs, and automatic refactoring tools can greatly simplify code cleanup. Nevertheless, writing robust large-scale software remains a challenge, as greater use of component frameworks complicates debugging and program understanding. Developers need more powerful programming tools to combat this complexity and produce reliable code.

This talk will present two techniques---refinement-based pointer analysis and thin slicing---that enable powerful new tools for debugging and understanding large-scale software. Our refinement-based pointer analysis is the first to compute precise answers in interactive time, allowing tools to handle previously inscrutable program behaviors interactively. Thin slicing is the first technique to give usable answers to code relevance questions---e.g., "What code might have caused this crash?"---a long-standing challenge for analysis tools. I will conclude by describing new tools enabled by the two techniques.

Refreshments will be served

top | contact