Software evolution is the software maintenance and upgrade during the application period, this chapter mainly discusses the characteristics of software evolution, software maintenance and software re-engineering.
Software evolution features include software maintenance is inevitable, software changes will lead to software degradation, in the early development of the establishment of software development efficiency and input resources independent and software upgrade is to repair software defects.
Software maintenance said the concept of software maintenance is the software operation or maintenance phase of the SOFTWARE product changes, can be divided into three types of corrective maintenance, adaptive maintenance and perfect maintenance. Software maintenance is characterized by the large impact of software maintenance, the difficulty of software maintenance and the high cost of software maintenance. The software maintenance process mainly includes establishing maintenance organization, reporting and evaluating maintenance application, implementing maintenance process and so on.
Software re-engineering mainly includes object selection, reverse engineering, document reconstruction, code reconstruction, data reconstruction and forward engineering understanding activities.
Introduction to Software Engineering--the 11th chapter--Evolution