Abstract
Feature modeling is a common approach for configuring and capturing commonalities and variations among different Software Product Lines (SPL) products. This process is carried out by a set of SPL design teams, each working on a different configuration of the desired product. The integration of these configurations leads to inconsistencies in the final product design. The typical solution involves extensive deliberation and unnecessary resource usage, which makes SPL inconsistency resolution an expensive and unoptimized process. We present the first comprehensive evaluation of swarm intelligence (using Particle Swarm Optimization) to the problem of resolving inconsistencies in a configured integrated SPL product. We call it ${o}$ -SPLIT ( ${o}$ ptimization-based Software Product LIne Tool) and validate ${o}$ -SPLIT with standard ERP, SPLOT (Software Product Lines Online Tools), and BeTTy (BEnchmarking and TesTing on the analYsis) product configurations along with diverse feature set sizes. The results show that Particle Swarm Optimization can successfully optimize SPL product configurations. Finally, we implement ${o}$ -SPLIT as a decision-support tool in a real, local SPL setting and acquire subjective feedback from SPL designers which shows that the teams are convinced of the usability and high-level decision support provided by ${o}$ -SPLIT.
Highlights
Swarm Intelligence Module (SIM) Software Product Line (SPL) PRODUCT CONFIGURATIONS RESULTS In this subsection, we present the results of SIM application with tuned parameters on the given SPL product configurations
WORK In this article, we comprehensively explore the application of swarm intelligence algorithms to resolve the product inconsistencies in SPLs
Our results show that Particle Swarm Optimization (PSO) has the potential to generate almost 100% optimized feature models in an incomparably lesser time as compared to the manual feature model configuration
Summary
Software Product Line (SPL) is a collection of software-intensive information systems for configuring similar software products, which share common features to satisfy the need of a particular business market [1], [2]. SPL product configuration is a labor-intensive and time-consuming process [3] and requires high interaction between the developers and users to identify and select the. A. SOFTWARE PRODUCT LINES An SPL is a collection of software-intensive systems for configuring similar software products which share common features to satisfy the need of a particular business market. DE focuses on the problem domain and defines the commonalities and variabilities of the SPL products. The transition from DE to AE is done through a configuration, that adapts a domain model to define an application product. Each unique product derivation is labeled as a variant, i.e., the representation of a unique SPL configuration that differs from other variants on specific variation points
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.