An Extended Model of Software Configuration

12/01/2022
by   Rezvan Mahdavi-Hezaveh, et al.
0

Feature toggles and configuration options are modern programmatic techniques to easily include or exclude functionality in a software product. The research contributions to these two techniques have most often been focused on either one of them separately. However, focusing on the similarities of these two techniques may enable a more fruitful combined family of research on software configuration, a term we use to encompass both techniques. Also, a common terminology may have enabled meta-analysis, a more practical application of the research on the two techniques, and prevented duplication of research effort. The goal of this research study is to aid researchers in conducting a family of research on software configuration by extending an existing model of software configuration that provides terminology for research studies. To achieve our goal, we started with Seigmund et al. Model of Software Configuration (MSC) which was developed based on interviews and publications on configuration options. We explicitly extend the MSC to include feature toggles and to add qualitative analysis of feature toggle-related resources. From our analysis, we proposed MSCv2 as an extended version of MSC and evaluated it through its application on five academic publications and the Chrome system. Our results indicate that multiple researchers studying the same system may provide different definitions of software configuration in their publications. Also, similar research questions may be answered on feature toggles and configuration options repeatedly because of a lack of a clear definition of software configuration. These observations indicate that having a model for defining software configuration may enable more clear and generalized research on the software configuration family of research. Practitioners benefit MSCv2 in their systems to better knowledge transfer to other practitioners and researchers.

READ FULL TEXT
research
03/16/2020

Lazy Product Discovery in Huge Configuration Spaces

Highly-configurable software systems can have thousands of interdependen...
research
06/11/2014

A Hitchhiker's Guide to Search-Based Software Engineering for Software Product Lines

Search Based Software Engineering (SBSE) is an emerging discipline that ...
research
11/13/2022

Benefits, Challenges, and Research Topics: A Multi-vocal Literature Review of Kubernetes

Context: Kubernetes is an open source software that helps in automated d...
research
10/03/2020

Automated Performance Tuning for Highly-Configurable Software Systems

Performance is an important non-functional aspect of the software requir...
research
07/28/2020

Anomaly detection in Context-aware Feature Models

Feature Models are a mechanism to organize the configuration space and f...
research
10/20/2009

How to Complete an Interactive Configuration Process?

When configuring customizable software, it is useful to provide interact...
research
12/06/2022

Microservice Architecture Practices and Experience: a Focused Look on Docker Configuration Files

Cloud applications are more and more microservice-oriented, but a concre...

Please sign up or login with your details

Forgot password? Click here to reset