Software Process Commonality Analysis
Alexis Ocampo,Fabio Bella,Jürgen Münch
DOI: https://doi.org/10.48550/arXiv.1312.4742
2013-12-17
Software Engineering
Abstract:To remain viable and thrive, software organizations must rapidly adapt to frequent, and often rather far-ranging, changes to their operational context. These changes typically concern many factors, including the nature of the organization's marketplace in general, its customers' demands, and its business needs. In today's most highly dynamic contexts, such as web services development, other changes create additional, severe challenges. Most critical are changes to the technology in which a software product is written or which the software product has to control or use to provide its functionality. These product-support technology changes are frequently relatively 'small' and incremental. They are, therefore, often handled by relatively 'small,' incremental changes to the organization's software processes. However, the frequency of these changes is high, and their impact is elevated by time-to-market and requirements change demands. The net result is an extremely challenging need to create and manage a large number of customized process variants, collectively having more commonalities than differences, and incorporating experience-based, proven 'best practices'. This paper describes a tool-based approach to coping with product-support technology changes. The approach utilizes established capabilities such as descriptive process modeling and the creation of reference models. It incorporates a new, innovative, tool-based capability to analyze commonalities and differences among processes. The paper includes an example-based evaluation of the approach in the domain of Wireless Internet Services as well as a discussion of its potentially broader application.