Software evolution is an ongoing process carried out with the aim of extending base applications either for adding new functionalities or for adapting software to changing environm...
Software maintenance is responsible for as much as two thirds of the cost of any software, and is consequently an important research area. In this paper we focus on the change pro...
Software maintenance and evolution is arguably a lengthy and expensive phase in the life cycle of a software system. A critical issue at this phase is change propagation: given a ...
A central problem in software maintenance is change propagation: given a set of primary changes that have been made to software, what additional secondary changes are needed? Altho...
As a software system evolves to accommodate new features and repair bugs, changes are needed. Software components are interdependent, changes made to one component can require cha...
Abstract. One of the most critical problems in software maintenance and evolution is propagating changes. Although many approaches have been proposed, automated change propagation ...
This paper presents a model of change propagation during software maintenance and evolution. Change propagation is modeled as a sequence of snapshots, where each snapshot represen...
Packages are the basic units of release and reuse in software development. The contents and boundaries of packages should therefore be chosen to minimize change propagation and ma...
Software maintenance and evolution are inevitable activities since almost all software that is useful and successful stimulates user-generated requests for change and improvements...
In this paper, we introduce Static Execute After (SEA) relationship among program components and present an efficient analysis algorithm. Our case studies show that SEA may appro...