Abstract :
The business community, especially that part involved with high technology, has long embraced the notion that progress is an evolutionary process that comes with markets, competition, and the survival of the fittest. In the world of the computer, the idea of evolutionary change has been applied to almost every aspect of the field. The software evolution metaphor offers a certain amount of insight into the nature of program development. It has provided computer scientists with a basic set of principles that suggest how large systems grow and change. These principles claim that all programs are in a state of constant change, a change influenced by the forces of market feedback mechanisms. The feedback generally pushes programs to increase in size and complexity, even though each new generation tends to preserve the familiar traits of prior versions.