Abstract
Software Product Line Engineering is an approach to management of diversity in software families. Although several SPLE approaches exist in the domains of industrial software applications, product lines of data-intensive software systems have gained less attention. We use an incremental, delta-oriented technique to handle variability by specifying changes to be made to a core data model to define the data schemas of the products. We present a new merge-prune operator based on the superimposition of models as well as the structural well-formedness rules specified formally in Alloy. Our method provides a modular way to handle variability in data intensive systems. It is scalable with respect to the number of variation points in the system in contrast to the traditional annotative approaches for variability modeling. We have investigated the applicability of our approach by using it in a real-world case study.