Talks and Poster Presentations (with Proceedings-Entry):
"On architectural stability and evolution";
Talk: Reliable Software Technologies -- Ada-Europe,
Vienna, Austria (invited);
- 2002-06-21; in: "Proceedings of 7th Ada-Europe International Conference on Reliable Software Technologies",
Many organizations are now pursuing software architecture as a way to control their software development and evolution costs and challenges. A software architecture describes a systemís structure and global properties and thus determines not only how the system should be constructed but also guides its evolution. An important challenge is to be able to evaluate the "goodness" of a proposed architecture. I suggest stability or resilience as a primary criterion for evaluating an architecture. The stability of an architecture is a measure of how well it accommodates the evolution of the system without requiring changes to the architecture. As opposed to traditional predictive approaches to architecture evaluation, I suggest retrospective analysis for evaluating architectural stability by examining the amount of change applied in successive releases of a software product. I review the results of a case study of twenty releases of a telecommunication software system containing a few million lines of code to show how retrospective analysis may be performed.
Electronic version of the publication:
Created from the Publication Database of the Vienna University of Technology.