Applying changes to a program results typically in stopping the program execution. This is not acceptable for highly available applications. Such applications should be evolved at ...
Aspect-oriented programming languages provide new composition mechanisms for improving the modularity of crosscutting concerns. Implementations of such language support use advanc...
: This paper describes six new architecture-altering operations that provide a way to dynamically determine the architecture of a multipart program during a run of genetic programm...
Although pair programming is becoming more prevalent in software development, and a number of reports have been written about it [4] [6], few have addressed the manner in which pa...
As a framework evolves, changes in its Application Programming Interface (API) can break client programs that extend the framework. Repairing a client program can be a challenging...