A Taxonomy of Change Types and Its Application in Software Evolution | IEEE Conference Publication | IEEE Xplore

A Taxonomy of Change Types and Its Application in Software Evolution


Abstract:

Changes play a central role in software evolution, where the types of changes are as multifarious as their consequences. When changing software, impact analysis and regre...Show More

Abstract:

Changes play a central role in software evolution, where the types of changes are as multifarious as their consequences. When changing software, impact analysis and regression testing are required to preserve the quality of the system. However, without a consistent classification of types of change operations, a well-founded impact analysis methodology cannot be developed. Existing works which analyze and apply change types are typically limited to a certain aspect of software, e.g. source code or architecture. They also lack a thorough investigation of change types, which lead to duplicated proposals and the absence of a consistent taxonomy. In this paper, we review the usage of change types for impact analysis and regression testing, and illustrate how both activities are affected by different types of changes. Therefore, we outline how existing work deals with different types and granularities of changes. Our main contribution is a generic, graph-based description of changes which distinguishes between atomic and composite change types. We show how existing change types and classifications can be mapped onto our proposed approach and change taxonomy. Finally, we illustrate how our proposed change types can support real developer activities, such as refactorings, impact analysis, and regression testing.
Date of Conference: 11-13 April 2012
Date Added to IEEE Xplore: 07 May 2012
ISBN Information:
Conference Location: Novi Sad, Serbia

References

References is not available for this document.