A Theory of Software Product Line Refinement

Paulo Borba, Leopoldo Teixeira, Rohit Gheyi. A Theory of Software Product Line Refinement. Theoretical Computer Science, (0), 2012. [doi]

Abstract

To safely evolve a software product line, it is important to have a notion of product line refinement that assures behavior preservation of the original product line products. So in this article we present a language independent theory of product line refinement, establishing refinement properties that justify stepwise and compositional product line evolution. Moreover, we instantiate our theory with the formalization of specific languages for typical product lines artifacts, and then introduce and prove soundness of a number of associated product line refinement transformation templates. These templates can be used to reason about specific product lines and as a basis to derive comprehensive product line refinement catalogues.