Speaker: Sai Zhang, University of Washington
Title: Automated Diagnosis of End-User-Fixable Errors
Software errors degrade usability. This talk shows how program analysis enables software end-users to fix two types of software errors.
The first technique, called ConfDiagnoser, helps end-users troubleshoot software configuration errors. Given a software system that is exhibiting undesired behavior, it outputs specific configuration options the user should change. ConfDiagnoser uses a combination of execution trace comparison and static analysis to link undesired behavior to configuration options.
The second technique, called FlowFixer, helps end-users repair UI workflow errors. Given a new software version's changed UI, in which a user's desired action is not possible, FlowFixer suggests a replacement UI action. FlowFixer uses dynamic profiling, static analysis, and random testing to reason about code changes.
In addition, I will also briefly discuss my previous work on automated program analysis and testing techniques to help developers eliminate software errors and create reliable software systems.
Sai Zhang is a PhD candidate in Computer Science and Engineering at University of Washington. His research draws upon static analysis, dynamic monitoring, automated testing, and machine learning to improve software reliability and error diagnosis in domains ranging from software configurations and GUI applications to concurrent programs. His recent work focuses on designing practical program analysis techniques and tools to empower software end-users, with little or no programming knowledge, to fix problems in using a complex software system. Home page: http://homes.cs.washington.edu/~szhang/
For additional information contact: Marsha Chechik