: From a maintenance perspective, only software that is well understood can evolve in a controlled and high-quality manner. Software evolution itself is a knowledge-driven process ...
During software evolution a collection of related artifacts with different representations are created. Some of these are composed of structured data (e.g., analysis data), some c...
Andrian Marcus, Andrea De Lucia, Jane Huffman Haye...
During the past decade, object-orientation (OO) has become the dominant software development methodology, accompanied by a number of modeling notations, programming languages, and...
Lose sight of the existence of system crosscutting concerns, e.g. safety and quality etc, often causes the system hard to maintain and evolve according to the changing environment...
Increasingly, high-assurance applications rely on autonomic systems to respond to changes in their environment. The inherent uncertainty present in the environment of autonomic sy...