During language evolution, compiler construction is usually d along two dimensions: defining new abstract syntax tree (AST) classes, or adding new operations. In order to facilita...
Xiaoqing Wu, Suman Roychoudhury, Barrett R. Bryant...
Design patterns are applied in software development to decouple individual concerns, so that a change in a design decision is isolated to one location of the code base. However, m...
Abstract. Traditionally, the use of good techniques to improve software modularity, such as advanced separation of concerns, has no impact in the user experience, for example while...
Jocelyne Nanard, Gustavo Rossi, Marc Nanard, Silvi...
—A measure of how a class is impacted during design evolution is presented. The history of design changes that involve a given class is the basis for the measure. Classes that ar...
Maen Hammad, Michael L. Collard, Jonathan I. Malet...
As part of the evolution of software systems, effort is often invested to discover in what parts of the source code a feature (or other concern) is implemented. Unfortunately, kn...