
Talk Topic: Using Static Analysis for Software Defect Detection Bill Pugh, University of Maryland September 12, 2006
Abstract Pugh will talk about his experiences using and expanding static analysis tools for defect detection. The FindBugs tool developed at the Univ. of Maryland is now being widely used (more than 250,000 downloads). It has been found that even production quality open source and commercial software contain blatant errors that can easily be found by simple analysis techniques. Pugh will give an overview of FindBugs, show some of the kinds of errors routinely found in production code, the analysis techniques used to find them, discuss the methodology used for enhancing and expanding FindBugs, and share his experience working with companies trying to incorporate FindBugs into their software development process.
Pugh will speak briefly about Marmoset, an innovative system developed at the University of Maryland for automating the testing of student programming projects and providing increased feedback to both students and instructors while students are working on their projects. In addition to the benefits Marmoset provides to the learning experience, Marmoset is also providing a rich dataset of information being used to improve software defect detection tools and understand how students learn to program.
Bio William Pugh received a B.S. in Computer Science from Syracuse University and received a Ph.D. in Computer Science (with in minor in Acting) from Cornell University. He is currently a professor at the University of Maryland, College Park.
He has also made research contributions in the fields of incremental computation, implementation of functional and object-oriented languages, the use of partial evaluation for hard real-time systems, in techniques for analyzing and transforming scientific codes for execution on supercomputers, and in a number of issues related to the Java programming language, including the development of JSR 133 - Java Memory Model and Thread Specification Revision.
Prof Pugh's current research focus is on developing tools to improve software productivity, reliability and education. Current research projects include FindBugs, a static analysis tool for Java, and Marmoset, an innovative framework for improving the learning and feedback cycle for student programming projects.
|