In-house Debugging of Field Failures
Field failures are both difficult to foresee and difficult, if not impossible, to reproduce. In fact, a recent survey among many developers of the Apache, Eclipse, and Mozilla projects revealed that most developers consider information on how to reproduce field failures to be the most valuable, and difficult to obtain, piece of information for investigating such failures. The information typically contained in bug reports, such as memory dumps or call stacks, is usually insufficient for recreating the problem. Even more advanced approaches for gathering field data and help in-house debugging tend to collect either too little information, and be ineffective, or too much information, and be inefficient. To address these issues, we developed BugRedux, a novel approach for in-house debugging of field failures. BugRedux can synthesize, using execution data collected in the field, executions that mimic the observed field failures and can be used to investigate such failures. In this talk we present BugRedux and empirical results obtained on real-world software that show its effectiveness, practical applicability, and usefulness. This work is part of the Gamma project, whose goal is to overcome some limitations of traditional quality-assurance approaches by developing testing and analysis techniques that leverage information gathered from deployed applications and user resources. The talk will also provide a general overview of the Gamma project and its main results to date.
Alessandro Orso is an Associate Professor in the College of Computing at the Georgia Institute of Technology. He received his M.S. degree in Electrical Engineering (1995) and his Ph.D. in Computer Science (1999) from Politecnico di Milano, Italy. From March 2000, he has been at Georgia Tech, first as a research faculty, and now as an Associate Professor. His area of research is software engineering, with emphasis on software testing and program analysis. His interests include the development of techniques and tools for improving software reliability, security, and trustworthiness, and the validation of such techniques on real-world systems. Dr. Orso has received funding for his research from government agencies, such as NSF and the Department of Homeland Security, and industries, such as IBM and Microsoft. He serves on the editorial boards of ACM TOSEM, served as program chair for ACM-SIGSOFT ISSTA 2010, and serves on the Advisory Board of Reflective Corp. He has also served as a technical consultant to DARPA. Dr. Orso is a member of the ACM and the IEEE Computer Society.