Recovering design patterns can enhance existing source code analysis tools by bringing program understanding to the design level. This paper presents a new, fully automated patter...
Abstract. We propose a symbolic algorithm to accurately predict atomicity violations by analyzing a concrete execution trace of a concurrent program. We use both the execution trac...
Chao Wang, Rhishikesh Limaye, Malay K. Ganai, Aart...
Reusable APIs often dene usage protocols. We previously developed a sound modular type system that checks compliance with typestate-based protocols while aording a great deal of al...
A number of effective error detection tools have been built in recent years to check if a program conforms to certain design rules. An important class of design rules deals with s...
Michael C. Martin, V. Benjamin Livshits, Monica S....
The evolution of software systems over many years often leads to unnecessarily complex and in exible designs which in turn lead to a huge amount of e ort for enhancements and main...