My main research interest is software engineering, with a focus on improving programmer productivity. I develop techniques and tools that make both managers and developers aware of history.
My research activities cover program analysis, aspect-oriented programming, empirical studies, and in particular, the analysis of software archives.
- What makes a good bug report? Ask Cuezilla!
- Users know what developers need, but fail to provide this information.
- Bug reports with stack traces get fixed sooner.
- Information in bug duplicates helps developers to resolve bugs quicker.
- What is it that makes software fail?
- The BugCache model selects 10% of the source code files — these files account for 73%-95% of defects.
- Domino effect: depending on defect-prone binaries increases the likelihood of a defect.
- Tell us what you import, and we’ll tell you how vulnerable you are.
- Depending on kdelibs increases the risk of an application being vulnerable.
- Be warned: Don’t program on Fridays!
- Meet iBUGS: 401 real bugs in 124kLOC. More than 2000 test cases.
- Recommendation system: Developers who changed the field fKeys also changed the method initDefaults().
- Usage patterns: A call to addWidget() should be followed by a call to removeWidget().
- Cross-cutting changes: A developer inserted calls to lock() and unlock() into 1284 different locations.