Software Evolution
Earnest Tellow, a well known in the field of intelligence, compared the evolution of software technology to the growth of tree. Like a tree, the software evolution has had distinct phases or layer of growth.Thes layers were built up one by one over the last five decades as shown in fig.
1.3, with each layer
representing an improvement over the previous one. However, the analogy fails
if we consider the life of these layers. In software system, each of the layers
continues to be functional.
Alan Kay, one of the
promoters of the object-oriented paradigm and the principal designer of
Smalltalk, has said, as complexity increases, architecture dominates the basic
material. To build today’s complex software it is just not enough to put
together a sequence of programming statements and sets of procedures and
modules, we need to incorporate sound construction techniques and program
structures that are easy to comprehend ,implement and modify. Science the
invention of the computer, many programming approaches has been tried. These
include techniques such as modular programming, top-down programming, and
bottom-up programming and strutted
programming .The primary motivation in each has been the concern to handle the
increasing complexity of programs that are reliable and maintainable. These
techniques have become popular among programmers two decades.