Predictive Analytics for Product Configurations in Software Product Lines
A Software Product Line (SPL) is a collection of software for configuring software products in which sets of features are configured by different teams of product developers. This process often leads to inconsistencies (or dissatisfaction of constraints) in the resulting product configurations, whos...
Main Authors: | , , , , , |
---|---|
Format: | Article |
Language: | English |
Published: |
Springer
2021-06-01
|
Series: | International Journal of Computational Intelligence Systems |
Subjects: | |
Online Access: | https://www.atlantis-press.com/article/125958276/view |
_version_ | 1818539203832578048 |
---|---|
author | Uzma Afzal Tariq Mahmood Raihan ur Rasool Ayaz H. Khan Rehan Ullah Khan Ali Mustafa Qamar |
author_facet | Uzma Afzal Tariq Mahmood Raihan ur Rasool Ayaz H. Khan Rehan Ullah Khan Ali Mustafa Qamar |
author_sort | Uzma Afzal |
collection | DOAJ |
description | A Software Product Line (SPL) is a collection of software for configuring software products in which sets of features are configured by different teams of product developers. This process often leads to inconsistencies (or dissatisfaction of constraints) in the resulting product configurations, whose resolution consumes considerable business resources. In this paper, we aim to solve this problem by learning, or mathematically modeling, all previous patterns of feature selection by SPL developers, and then use these patterns to predict inconsistent configuration patterns at runtime. We propose and implement an informative Predictive Analytics tool called predictive Software Product LIne Tool (p-SPLIT) which provides runtime decision support to SPL developers in three ways: 1) by identifying configurations of feature selections (patterns) that lead to inconsistent product configurations, 2) by identifying feature selection patterns that lead to consistent product configurations, and 3) by predicting feature inconsistencies in the product that is currently being configured (at runtime). p-SPLIT provides the first application of Predictive Analytics for the SPL feature modeling domain at the application engineering level. With different experiments in representative SPL settings, we obtained 85% predictive accuracy for p-SPLIT and a 98% Area Under the Curve (AUC) score. We also obtained subjective feedback from the practitioners who validate the usability of p-SPLIT in providing runtime decision support to SPL developers. Our results prove that p-SPLIT technology is a potential addition for the global SPL product configuration community, and we further validate this by comparing p-SPLIT's characteristics with state-of-the-art SPL development solutions. |
first_indexed | 2024-12-11T21:38:57Z |
format | Article |
id | doaj.art-fdf7ff4cd7d54555a77cb2c6a19f5538 |
institution | Directory Open Access Journal |
issn | 1875-6883 |
language | English |
last_indexed | 2024-12-11T21:38:57Z |
publishDate | 2021-06-01 |
publisher | Springer |
record_format | Article |
series | International Journal of Computational Intelligence Systems |
spelling | doaj.art-fdf7ff4cd7d54555a77cb2c6a19f55382022-12-22T00:49:55ZengSpringerInternational Journal of Computational Intelligence Systems1875-68832021-06-0114110.2991/ijcis.d.210620.003Predictive Analytics for Product Configurations in Software Product LinesUzma AfzalTariq MahmoodRaihan ur RasoolAyaz H. KhanRehan Ullah KhanAli Mustafa QamarA Software Product Line (SPL) is a collection of software for configuring software products in which sets of features are configured by different teams of product developers. This process often leads to inconsistencies (or dissatisfaction of constraints) in the resulting product configurations, whose resolution consumes considerable business resources. In this paper, we aim to solve this problem by learning, or mathematically modeling, all previous patterns of feature selection by SPL developers, and then use these patterns to predict inconsistent configuration patterns at runtime. We propose and implement an informative Predictive Analytics tool called predictive Software Product LIne Tool (p-SPLIT) which provides runtime decision support to SPL developers in three ways: 1) by identifying configurations of feature selections (patterns) that lead to inconsistent product configurations, 2) by identifying feature selection patterns that lead to consistent product configurations, and 3) by predicting feature inconsistencies in the product that is currently being configured (at runtime). p-SPLIT provides the first application of Predictive Analytics for the SPL feature modeling domain at the application engineering level. With different experiments in representative SPL settings, we obtained 85% predictive accuracy for p-SPLIT and a 98% Area Under the Curve (AUC) score. We also obtained subjective feedback from the practitioners who validate the usability of p-SPLIT in providing runtime decision support to SPL developers. Our results prove that p-SPLIT technology is a potential addition for the global SPL product configuration community, and we further validate this by comparing p-SPLIT's characteristics with state-of-the-art SPL development solutions.https://www.atlantis-press.com/article/125958276/viewSoftware product linePredictive analyticsData scienceFeature modelInconsistencyInformation system |
spellingShingle | Uzma Afzal Tariq Mahmood Raihan ur Rasool Ayaz H. Khan Rehan Ullah Khan Ali Mustafa Qamar Predictive Analytics for Product Configurations in Software Product Lines International Journal of Computational Intelligence Systems Software product line Predictive analytics Data science Feature model Inconsistency Information system |
title | Predictive Analytics for Product Configurations in Software Product Lines |
title_full | Predictive Analytics for Product Configurations in Software Product Lines |
title_fullStr | Predictive Analytics for Product Configurations in Software Product Lines |
title_full_unstemmed | Predictive Analytics for Product Configurations in Software Product Lines |
title_short | Predictive Analytics for Product Configurations in Software Product Lines |
title_sort | predictive analytics for product configurations in software product lines |
topic | Software product line Predictive analytics Data science Feature model Inconsistency Information system |
url | https://www.atlantis-press.com/article/125958276/view |
work_keys_str_mv | AT uzmaafzal predictiveanalyticsforproductconfigurationsinsoftwareproductlines AT tariqmahmood predictiveanalyticsforproductconfigurationsinsoftwareproductlines AT raihanurrasool predictiveanalyticsforproductconfigurationsinsoftwareproductlines AT ayazhkhan predictiveanalyticsforproductconfigurationsinsoftwareproductlines AT rehanullahkhan predictiveanalyticsforproductconfigurationsinsoftwareproductlines AT alimustafaqamar predictiveanalyticsforproductconfigurationsinsoftwareproductlines |