Many software systems rely on third-party components during their build process. Because the components are constantly evolving, quality assurance demands that developers perform ...
Il-Chul Yoon, Alan Sussman, Atif M. Memon, Adam A....
Dependence analysis underpins many activities in software maintenance such as comprehension and impact analysis. As a result, dependence has been studied widely for programming la...
Kelly Androutsopoulos, Nicolas Gold, Mark Harman, ...
Back in 2001, the MIT announced aspect-oriented programming as a key technology in the next 10 years. Nowadays, 8 years later, AOP is not widely adopted. Several reasons can expla...
This work presents a descriptive and analytic study of classes playing zero, one, or two roles in six different design patterns (and combinations thereof). First, we answer three...
As development on a software project progresses, developers shift their focus between different topics and tasks many times. Managers and newcomer developers often seek ways of un...
The goal of a load test is to uncover functional and performance problems of a system under load. Performance problems refer to the situations where a system suffers from unexpect...
Zhen Ming Jiang, Ahmed E. Hassan, Gilbert Hamann, ...
This paper presents an approach based on Information Retrieval (IR) techniques for extracting and representing the unstructured information in large software systems such that it ...
Within a large, object-oriented software system it is common to partition the classes into a set of packages, which implicitly serve as a set of coarsely-grained logical design un...
Source code search is an important activity for programmers working on a change task to a software system. As part of a larger project to improve tool support for finding informa...