Automated Reasoning for Multi-Step Software Product-Line Configuration Problems
Source: Vanderbilt University
The increasing complexity and cost of software-intensive systems has led developers to seek ways of reusing software components across development projects. One approach to increasing software reusability is to develop a Software Product-Line (SPL), which is a software architecture that can be reconfigured and reused across projects. Rather than developing software from scratch for a new project, a new configuration of the SPL is produced. It is hard, however, to find a configuration of the SPL that meets an arbitrary requirement set and does not violate any configuration constraints in the SPL. Existing research has focused on techniques that produce a configuration of the SPL in a single step. Budgetary constraints or other restrictions, however, may require multi-step configuration processes.