One of the most successful applications of static analysis based bug finding tools is to search the source code for violations of system-specific rules. These rules may describe h...
In this paper, we propose to apply artifact mining in a global development environment to support measurement based process management and improvement, such as SEI/CMMI’s GQ(I)M...
Most computer science educators hold strong opinions about the “right” approach to teaching introductory level programming. Unfortunately, we have comparatively little hard ev...
Jaime Spacco, Jaymie Strecker, David Hovemeyer, Wi...
As a software system evolves, programmers make changes that sometimes cause problems. We analyze CVS archives for fix-inducing changes—changes that lead to problems, indicated ...
Jacek Sliwerski, Thomas Zimmermann, Andreas Zeller
Refactoring is one means of improving the structure of existing software. Locations for the application of refactoring are often based on subjective perceptions such as ”bad sme...
Software continually changes due to performance improvements, new requirements, bug fixes, and adaptation to a changing operational environment. Common changes include modificatio...
Sunghun Kim, E. James Whitehead Jr., Jennifer Beva...