Computer Science Colloquium
Practical Analysis Tools for Large-Scale Software Development
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: http://cs.nyu.edu/csweb/Calendar/colloquium/index.html
Richard Cole firstname.lastname@example.org, (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
| contact email@example.com