Title :
On the uniformity of software evolution patterns
Author :
Barry, Evelyn J. ; Kemerer, Chris F. ; Slaughter, Sandra A.
Abstract :
Preparations for Y2K reminded the software engineering community of the extent to which long-lived software systems are embedded in our daily environments. As systems are maintained and enhanced throughout their lifecycles they appear to follow generalized behaviors described by the laws of software evolution. Within this context, however, there is some question of how and why systems may evolve differently. The objective of this work is to answer the question: do systems follow a set of identifiable evolutionary patterns? In this paper we use software volatility to describe the lifecycle evolution of a portfolio of 23 software systems. We show by example that a vector of software volatility levels can represent lifecycle behavior of a software system. We further demonstrate that the portfolio´s 23 software volatility vectors can be grouped into four distinguishable patterns. Thus, we show by example that there are different patterns of system lifecycle behavior, i.e. software evolution.
Keywords :
program debugging; software engineering; long-lived software systems; software engineering community; software evolution patterns; software lifecycle evolution; software volatility; Computer industry; Costs; Dynamic programming; Pattern analysis; Portfolios; Production systems; Programming profession; Software engineering; Software maintenance; Software systems;
Conference_Titel :
Software Engineering, 2003. Proceedings. 25th International Conference on
Print_ISBN :
0-7695-1877-X
DOI :
10.1109/ICSE.2003.1201192