Identification and Classification of Inconsistency in Relationship to Software Maintenance
Daniel E. Cooke, Luqi, Владик Крейнович · scholarworks - UTEP (The University of Texas at El Paso) · 1997
This paper provides an overview of the relationship between recent work in logic programming and recent developments in software engineering. The relationship to software engineering is more specifically concerned with how formal specifications can be used to explain and represent the basis of software maintenance and evolution. Some of the results reviewed here have appeared in [5] and [13]. These previous results are summarized, extended, and made more general in this paper. 1 Introduction Maintenance activities can be divided into three distinct classes: corrective, perfective, and adaptive. Corrective maintenance largely reflects the failure of software engineers to validate and verify software specifications and programs with respect to software specifications, respectively. Perfective maintenance is traditionally viewed as a form of maintenance necessary to improve or change the performance of a system, but not its functionality. Adaptive software maintenance alters the function...