Like many other fields, change propagation has been an active area of research in software engineering, particularly the analysis, evaluation, and propagation of changes in large, complex software systems. Authors in earlier works have suggested concepts of choreography to describe interactions between partner process and public process models to describe the commonality between them and describe elements affecting only a process. These models are formulated as network graphs called refined process trees. A change could be an insert, delete, update, or replace (a graph element) operation.
In this paper, the authors have used these concepts to present a generic change propagation model to describe results of changes in a private and/or public model. A formal analytic treatment of the resulting process choreography for the propagation of each type of change is presented in this paper. It explains the approach using easy-to-follow examples. The authors point out the soundness of the change choreography, which needs to be assured, by checking the compatibility of proposed changes with the different elements of the private and public models, in addition to assuring the private model is consistent with its observed (that is, public) behavior. To check compatibility and consistency, the authors recommend the use of a graphical editing tool called C3 Pro.
This well-written paper would interest researchers and professional software engineers. It provides 63 references and pointers to possible avenues for further work.