Process Model Difference Analysis for Supporting Process Evolution
This work addresses the problem of managing process variations for software developers and organizations, but it is incremental as it builds on existing approaches and focuses on requirements for ongoing development.
The paper tackles the challenge of identifying and analyzing differences between software process models to support activities like process evolution and compliance analysis, and it presents an initial tool-based approach along with conceptual and technical challenges.
Software development processes are subject to variations in time and space, variations that can originate from learning effects, differences in application domains, or a number of other causes. Identifying and analyzing such differences is crucial for a variety of process activities, like defining and evolving process standards, or analyzing the compliance of process models to existing standards, among others. In this paper, we show why appropriately identifying, describing, and visualizing differences between process models in order to support such activities is a highly challenging task. We present scenarios that motivate the need for process model difference analysis, and describe the conceptual and technical challenges arising from them. In addition, we sketch an initial tool-based approach implementing difference analysis, and contrast it with similar existing approaches. The results from this paper constitute the requirements for our ongoing development effort, whose objectives we also describe briefly.