Modularizing Software Product Line Feature Models
Ebrahim Bagheri, Marko C. Boskovic, Dragan Gašević, Faezeh Ensan · 2010
Feature modeling is a widely used technique for capturing commonality and managing variability in software product lines. In industrial settings, feature models grow very large in size. Furthermore, usually large groups of experts with different capabilities and responsibilities are involved in the design of large-scale feature models. Other than some recent work by researchers, feature models have mostly been treated as a monolithic entity. Treating feature models in such a way makes feature model configuration and management complex and time consuming. In this paper, we introduce the concept of modular feature models. Modularity allows for the distributed development, maintenance and evolution of feature models. We base our modular feature models on the Distributed Description Logics formalism, and propose methods for the configuration and validation of feature models grounded on standard Description Logic inference mechanisms. The results of our experiments show that modularizing feature models reduces the time required for feature model validation and configuration and also enhances the maintainability of feature models.