During software maintenance, some non-functional properties may be lost. This is due to the lack of an explicit definition of their links with the corresponding architectural choi...
The evolution of any software product over its lifetime is unavoidable, caused both by bugs to be fixed and by new requirements appearing in the later stages of the product's...
In this article, we address the problem of modularizing legacy applications with monolithic structure, primarily focusing on business software written in an objectoriented program...
To understand the evolution of software researchers have developed a plethora of tools to parse, model, and analyze the history of systems. Despite their usefulness, a common down...
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...