Overview

Our research focuses on the dependability of software systems, with particular emphasis on reliability, high availability, and manageability. We generally operate at the intersection of operating systems, programming languages, and software engineering; we develop tools, techniques, and runtimes that both improve dependability and increase programmer productivity. Our research seeks pragmatic solutions targeted primarily at large-scale real-life software with millions of lines of code running in highly concurrent systems with hundreds to thousands of threads.

Current projects include:

Testing Debugging Correcting
Cloud9: Software Testing as a Service
Selective Symbolic Execution
Library-level Fault Injection
Human Error Injection
• Replay-based Debugging Deadlock Immunity
Reverse Engineering