Incremental and iterative reengineering towards software product line: An industrial case study

G Zhang, L Shen, X Peng, Z Xing… - 2011 27th IEEE …, 2011 - ieeexplore.ieee.org
2011 27th IEEE International Conference on Software Maintenance (ICSM), 2011ieeexplore.ieee.org
It is common in practice that a Software Product Line (SPL) is constructed by reengineering
a set of existing variant products. To alleviate the problems of high risks of failures and the
limitations of resources and cost, incremental reengineering towards a SPL is a natural
choice in many cases. However, several problems remain unaddressed properly, such as
how to define increments, how to satisfy regular product delivery in parallel with
reengineering, and how to achieve early successes. In this paper, we report an industrial …
It is common in practice that a Software Product Line (SPL) is constructed by reengineering a set of existing variant products. To alleviate the problems of high risks of failures and the limitations of resources and cost, incremental reengineering towards a SPL is a natural choice in many cases. However, several problems remain unaddressed properly, such as how to define increments, how to satisfy regular product delivery in parallel with reengineering, and how to achieve early successes. In this paper, we report an industrial case study on a successful SPL-targeted reengineering project conducted in Alcatel-Lucent. In this project, the project team applied the principles of agile development in the process of SPL reengineering. The key practices of the project include value-based increment definition, domain-driven responsibility alignment, iterative component refactoring and integration. We analyze the reengineering process of a major component qualitatively and quantitatively, with the focus on initial investment required, trend of investment, returns on investment and quality improvement. Our case study shows that incremental and iterative approach with stakeholder-value considerations can help to achieve steady and successful SPL reengineering in a cost-effective manner. We also find that SPL adoption can be regarded as an emergent result of the reconstruction and improvement of existing product assets.
ieeexplore.ieee.org