2 BACKGROUND
2.1 Feature Model
Variability is expressed in a software variability
model, which such as Feature Model (FM). A FM
(Lee et al., 2002) is a tree or a directed acyclic graph
of features. A FM is organized hierarchically. A
mandatory feature has to be selected if its parent fea-
ture is mandatory or if its parent feature is optional
and has been selected. Mandatory features define
commonalities. Optional, alternative, and ‘or’ fea-
tures define variability in feature models. As a re-
sult, a feature model is a compact representation of all
mandatory and optional features of a software product
line. Each valid combination of features represents a
potential product line application.
In Figure 1, we present a Feature-Oriented Do-
main Analysis (FODA) model associated with the
’Mobile Phone’ SPL. In this model, we identify the
following elements: the root feature ’Mobile Phone,’
optional features such as ’stores’ and ’Bluetooth,’
mandatory features like ’keyboard’ and ’camera’. The
group_or relationship between ’Connectivity’ and its
children ’Mobile-Network’, ’Bluetooth’ and ’NFC’.
The alternative relationship with cardinality
∧
1..1
∨
is represented between the feature ’Sensors’ and
its children ’Indicative’ and ’Capactive’. The inter-
val noted [1..2] which determine the possible number
of instances of a feature ’Sim’. Extensions of FMs
can be grouped into three categories: 1) basic fea-
ture models (offering mandatory, alternative and ‘or’
features, as well as ‘requires’ and ‘excludes’ cross-
tree constraints), 2) cardinality-based feature mod-
els (Sreekumar, 2023) and 3) extended feature mod-
els (adding arbitrary feature attributes; e.g., to ex-
press variation in non_functionals requirements such
as quality (Ferchichi et al., 2021).
2.2 Non_Functional Requirements
Non_Functional requirements (NFR) are classified as
quantitative when they involve measurable informa-
tion (e.g., cost) and qualitative when the information
lacks measurability (e.g., customer preference level)
as discussed by (Gérard et al., 2007). FMs with Car-
dinalities address the challenges of SPL by modeling
the variability in terms of choices in Features. The
variability in the product family is represented by Fea-
ture cardinality, a cardinality group of features.
The concepts of configuration and configuration
processes were initially used in the fields of artificial
intelligence (Kumar, 2017) and problem-solving in
operational research, primarily to enable the config-
uration of physical products. (Faltings and Freuder,
1998) introduced a special issue of ’Intelligent Sys-
tems and their Applications’ focused on configuration
processes. The two authors define this configuration
process as a means of customizing parts of products to
meet specific consumer needs. They particularly em-
phasize three criteria that a configuration must meet:
(i) it must be correct so that the company can deliver
the product; (ii) it must be produced quickly to avoid
losing the customer to the competition; (iii) it must be
optimal to convince the consumer. They also note that
these criteria strongly favor the automation of the con-
figuration process, and the progress of e-commerce
tends to amplify this trend. In SPL,the configuration
process is a major activity in application engineering,
involving the selection of desired features within the
PL before the product is realized. A FM represents
all possible product configurations in an SPL defined
in Figure 1 . As an example, the mobile phone fea-
ture model can generate up to 1232 different product
variants (configurations). A sample product configu-
ration for the mobile phone product line is illustrated
in Figure 2 with FeatureIDE (Kaur and Kumar, 2014).
In SPLs, a significant hurdle is the task of toggling
features within a feature model to craft new software
product configurations (Machado et al., 2014). As the
number of features increases in the model, so does the
array of potential product options. This process re-
sembles an optimal feature selection challenge within
an Extended Feature Model (EFM) when configur-
ing products within an SPL. However, without auto-
mated assistance, optimizing this selection becomes
cumbersome. It involves addressing various objec-
tives concurrently, such as aligning with user pref-
erences and maximizing feature selection. Identify-
ing the ’optimal’ products within these vast and con-
strained parameter spaces exceeds human intuition.
Thus, automated techniques for feature selection are
essential to streamline configuration efforts.
3 PROBLEM DESCRIPTION
The primary concern with SPL is determining how
to configure an optimized feature set that meets the
customer’s requirements. In Figure 1, features cor-
respond to the functional requirements of the Mobile
Phone SPL. However, features may also be linked to
non-functional requirements. (Ferchichi et al., 2021),
have highlighted the importance of considering non-
functional requirements. For example, in the con-
text of the Mobile Phone SPL, it’s possible to iden-
tify non-functional requirements associated with each
feature, such as quality. This implies that every prod-
Association Rule Learning Based Approach to Automatic Generation of Feature Model Configurations
263