Evaluating the Relative Importance of Product Line Features

Using Centrality Metrics

Fathiya Mohammed

1

a

, Mike Mannion

2

b

, Hermann Kaindl

3

c

and James Paterson

2

d

1

School of Computing, Engineering & Physical Sciences, University of West of Scotland, Paisley, U.K.

2

Department of Computing, Glasgow Caledonian University, 70 Cowcaddens Road, Glasgow, G4 0BA, U.K.

3

Institute of Computer Technology, TU Wien, Austria

Keywords: Feature Model, Centrality Metrics, Product Line.

Abstract: A software product line is a set of products that share a set of software features and assets, which satisfy the

specific needs of one or more target markets. One common artefact of software product line engineering is a

feature model, usually represented as a directed acyclic graph, which shows the product line as a set of

structural feature relationships. We argue that there are benefits to considering a feature model as a directed

graph and an undirected graph, respectively. One element of managing the impact of a change to these models,

as they increase in complexity, is to evaluate the relative importance of the features. This paper explores the

application of centrality metrics from social network analysis for the identification of the relative importance

of features in feature models. The metrics considered are degree centrality, closeness centrality, eccentricity

centrality, eigenvector centrality and between-ness centrality. To illustrate, a product feature model is

constructed from a real-world GSMA AI-mobile phone product line requirements specification.

1 INTRODUCTION

A software product line is a common platform to

develop a family of products at lower cost, reduced

time to market and with better quality (BS ISO 2017).

The discipline of systematically planning,

constructing, evolving and managing that set of

products is known as Software Product Line

Engineering (SPLE). In SPLE, a product line feature

model consists of a hierarchy of features with some

additional cross-cutting relationships.

Over time, within a product line organisation, as

the volume and variety of products increase in scope

and scale, and personnel come and go, the risk of the

organization not fully understanding the product line

increases. Feature model analysis methods and tools

can help mitigate that risk. Feature models are usually

represented as (directed acyclic) graphs. Graphs can

represent application problems in many fields e.g.

city networks, biological networks, social media.

Feature model analysis can benefit from graph

a

https://orcid.org/0009-0004-7563-5614

b

https://orcid.org/0000-0003-2589-3901

c

https://orcid.org/0000-0002-1133-0529

d

https://orcid.org/0000-0002-6955-1009

analysis theory.

There can be different purposes for analyszing a

feature model. (Benavides, 2010) provides a review

of automated approaches to analysis for discovering

valid product configurations and managing them

effectively. Other purposes include conducting an

impact analysis of a change to the model, planning the

introduction of a new product, or making a

comparison of products configured from the model.

Within most product lines, some features are

often perceived by different stakeholders as having a

different level of importance than others. A high

relative importance might be attributed, for example,

to a feature being a key differentiator in its market

sector, of significant value to a key customer, a

significant conduit for communication between other

features, or as start of a set of features whose design

will be allocated to an external third party. Often,

during feature model analysis, the greater the relative

importance of a feature, the more attention it receives

and the more influence it has on the analysis outcome.

Mohammed, F., Mannion, M., Kaindl, H. and Paterson, J.

Evaluating the Relative Importance of Product Line Features Using Centrality Metrics.

DOI: 10.5220/0012853300003753

Paper published under CC license (CC BY-NC-ND 4.0)

In Proceedings of the 19th International Conference on Software Technologies (ICSOFT 2024), pages 469-476

ISBN: 978-989-758-706-1; ISSN: 2184-2833

Proceedings Copyright © 2024 by SCITEPRESS – Science and Technology Publications, Lda.

469

Some characteristics that contribute to the

calculation of a feature’s relative importance can be

determined by its semantic properties e.g. its

significance to a key customer. Other characteristics

can be determined by its structural properties within

the model e.g. how many features depend on it. For a

product line that contains thousands of features the

calculation of relative importance values is only

practical when done automatically.

Different structural graph analysis metrics afford

an insight into the scope and scale of an application

problem. They are a useful aid when the scale and

scope of the graph make visual inspection unwieldy.

In social network analysis (Scott, 2017) centrality

metrics provide an assessment of each vertex’s

structural relative importance within a graph i.e. its

“centrality” to the graph.

This paper explores the application of several

centrality metrics to help identify the relative

importance of different features in a product line

feature model. The metrics considered are: degree

centrality, close centrality, eccentricity centrality,

eigenvector centrality and between-ness centrality.

Our research question is:

RQ1: What are the effects of different metrics for

calculating a feature’s relative importance

in a software product line?

We address this question by constructing a feature

model from a real-world product line requirements

specification and examining the value of the metrics.

Section 2 reviews the representation of a product

line feature model as a graph to make this paper self-

contained. Section 3 introduces a real-world product

line specification for next generation mobile phones.

Section 4 shows the calculations for centrality

metrics. Section 5 presents the application of the

metrics to the mobile phone specification. Section 6

discusses the the findings. Section 7 refers to related

work. Section 8 draws some conclusions.

2 SPL FEATURE MODELS

Feature models are often large and complex and many

factors affect their design e.g. graphical notation,

language rigour, tool support availability, ease of

comprehension, navigation difficulty, encoding

simplicity, analysis complexity, and product

configuration process. A feature model is often

constructed as a set of structural feature relationships

organized in a hierarchical graph with some abstract

features that aid modelling but are unimplemented.

The most popular graphical representation of a

feature model is a tree with additional crosscutting

relationships between nodes (Appendix 1), resulting

in an undirected acyclic graph.

Expressing crosscutting relationships between

features in different parts of the graph is hard and

often done separately in text. In (BS ISO, 2017) such

relationships are restricted to requires and excludes.

Sometimes, these relationships are so complex that

product-preserving transformation mechanisms are

needed to convert them into a feature modelling

language (Knuppel et al, 2017) to make processing

easier albeit longer

.

Product configuration is the task of selecting

features for a product from the feature model. During

selection, the feature model can be traversed using

different methods. Regardless, selection decisions are

largely governed by a feature’s variability type. This

property anticipates that not all features will appear in

every product. Domain engineers who construct and

maintain a feature model allocate values to feature

variability-type properties based on the existing

product portfolio and product roadmaps. Over the

lifecycle of a product line, for any individual feature,

the value of its variability-type property may also

change as features move in and out of popularity.

Table 1 shows four commonly used variability

types (BS ISO, 2017). When a feature is selected and

its variability type is Mandatory, it is automatically

selected. When a feature is selected and its variability

type is Exclusive-OR then only one of the set of

mutually exclusive features must be selected. When a

feature is selected and its variability type is Inclusive-

OR then one, some or all must be selected. When a

feature is selected and its variability type is Optional,

then it can be selected or not.

Table 1: Description of Variability Type.

Variability Type Description

Mandatory

A mandatory feature is automatically

selected.

Exclusive-OR

A set of choices which are mutually

exclusive and only one must be selecte

d

Inclusive-OR

A set of choices of which one, some or all

must be selected

Option

A single choice which may or may not be

selected

A feature model is sometimes implicitly

considered a directed graph because some features

are regarded as parents and some as children, In an

undirected graph, edges represent a two-way

connection between features. Deciding if a product

line feature model an undirected or a directed graph

can vary depending on the purposes of the modelling.

ICSOFT 2024 - 19th International Conference on Software Technologies

470

3 GSMA APPLICATION

The Global Systems for Mobile communications

Association (GSMA) is a worldwide industry trade

body to support and promote the interests of hundreds

of mobile operators. Its purposes include easing

cooperation between countries deploying GSM

technology, facilitating protocols and standards,

supporting interoperability, and encouraging

innovation across the mobile ecosystem.

In July 2023, to accelerate the deployment of AI

technology across the industry, GSMA published a

non-confidential Artificial Intelligence (AI) Mobile

Device Requirements Specification (GSMA, 2023).

In effect, it specifies a set of product line

requirements. Actual products derived from this

specification will have some but not all of the features

this specification points to. In the specification,

readers are directed to (Bradner, 1997) to understand

the interpretation of the keywords “MUST”, “MUST

NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”,

“SHOULD”, “SHOULD NOT”,

“RECOMMENDED”, “MAY” and “OPTIONAL”.

We used this specification to construct a feature

model. We introduced some abstract features in the

model to aid modelling and understanding, but they

would not be implemented in any product. We gave

each requirement an identifier. A full list showing

how we labelled each requirement in the specification

and where we introduced some abstract requirements

is at https://figshare.com/s/1475000bed40c6f7bc56.

We did not have access to the authors of this

document so in structuring the feature model and

allocating a variability type for each feature (using

Table 1) we used our own interpretation and do not

claim it to be the best.

Appendix 1 shows a feature model. It uses the

notation of the tool it was constructed with,

pure::variants (Pure Systems, 2024). Many feature

models are implicitly assumed to be directed graphs

because they adopt the guidance in (Lee et al, 2002)

i.e. the model captures structural or conceptual

relationships among features e.g. a composed-of

relationship, a generalization-specialization

relationship, an implemented-by relationship which in

turn assumes information flow direction. In practice,

when analysing a feature model the comprehension

process is iterative and includes viewing the model as

a directed and an undirected graph.

To illustrate product configuration, let us assume

for simplicity that the GSMA feature model is

traversed depth-first starting at Feature 0. Feature 1 is

considered first and selected automatically because it

is Mandatory a. Next, one or more of Features 2, 3, 4,

5 are selected because their variability type is

Inclusive-OR. Feature 6 is selected automatically

because it is Mandatory. Then, one or more of

features 7, 8, 9, 10, 11 are selected because their

variability type is Inclusive-OR. Feature 12 is

selected automatically because it is mandatory. Then

either Feature 13 or Feature 14 is selected because

their variability-type is Exclusive-OR. The process

continues until all selections have been made.

4 DETERMINING A FEATURE’S

RELATIVE IMPORTANCE

The process of allocation of a relative importance

value to a feature is undertaken before feature

analysis takes place. Importance is normally

represented by attaching a weight to a feature and/or

to the edges connecting it. Maintaining agreement on

weights allocation is difficult for many reasons

including the different perspectives of organizational

stakeholders, changes to the model, having people

who work on the product line come and go over time.

Collectively, they motivate seeking an automatic

weight allocation method.

Social Network Analysis (Scott, 2017) is the

discipline of analyzing the relationships of interaction

among actors in a social network. A network is

arranged as a graph with vertices and edges

connecting the vertices. Important vertices are

typically those which maintain the graph’s

cohesiveness, or are significant information conduits

from lying on pathways through which other vertices

are reached. Normally, the higher the connectivity of

a feature the greater is its relative importance.

In a product line feature model, a vertex is a

feature. Centrality metrics can provide an assessment

of each feature’s relative importance within a feature

model. There are many centrality metrics, each one a

function of the number of connections a feature has

to other features and the strength of each connection.

Connectivity can be measured in different ways,

reflecting an understanding that a feature might be

strongly connected locally within the graph but

weakly connected globally, or vice-versa. Some

metrics also consider connectivity to highly important

features wherever they are in the graph. Such features

may exist a priori from the graph structure e.g. the

root of a tree, or are designated by an engineer.

In large feature models, the manual allocation of

weights is not tenable and an agreed algorithm for the

automatic allocation of weights needs to be

established. We do not address this issue in this paper.

Degree Centrality: The connection strength of a

feature F can be formed by calculating the degree of

each feature (vertex) on a graph i.e. the sum of the

Evaluating the Relative Importance of Product Line Features Using Centrality Metrics

471

total number of edges going into the feature (in-

degree) and the total number of edges coming out of

the feature (out-degree). Eq. (1) shows that for an

undirected graph, the Degree Centrality (DC) of a

feature F is the sum of the connection strengths FG

i

for each F directly connected to a feature G

i

(i.e. “one-

hop”) where D

F

is the total number of connections to

feature F. Normalisation between 0 and 1 is achieved

through division by (N-1) where N is the total number

of features in the graph.

D

F

DC (F)= (Σ FG

i

) / (N-1)

(1)

i=0

Closeness Centrality: The overall connection

strength of a feature F can be formed by calculating

the average shortest distance from each feature to

every other feature G

i

where N is the total number of

features in the graph (Eq. 2). For undirected graphs

inward and outward edges are included in the

calculations. For directed graphs, only the out-degree

is included. If there is no (directed) path from F to G

i

then the distance is 0. If the sum of the distances for

a feature is small then its closeness is high. The higher

the closeness the quicker a feature can communicate

to other features across the graph. Closeness

Centrality can be a useful measure of identifying

global connectivity but in a highly connected

network, many features can have similar scores and

are less distinctive in their global relevance.

Closeness Centrality can also help with finding

influential features in an isolated large cluster.

D

F

CC (F) = 1 / (Σ FG

i

(avg shortest path distance)) (2)

i=0

Eccentricity Centrality: The overall connection

strength of a feature F can be formed by calculating

the maximum distance (longest path) between the

feature and any other feature G

i

in the graph. Eq. 3

shows Eccentricity Centrality to be the inverse of the

maximum distance i.e. the shorter the distance the

greater the relative importance. Eccentricity can be a

useful indicator of the absolute centrality of a feature

within a graph. For undirected graphs, inward and

outward edges are included in the calculations. For

directed graphs, only outward edges are included, and

if there is no outward edge e.g. on leaf features, then

the eccentricity score is 0.

D

F

EC (F) = 1 / Σ FG

i

(max distance) (3)

j= 0

Eigenvector Centrality: The overall connection

strength of a feature F can be formed by calculating if

it has an outgoing connection to features that in turn

have outgoing connections or if it has incoming

connections from features that themselves have

incoming connections. Eq. (4) shows that the

Eigenvector Centrality of F connected to G

i

is a

function of the eigenvector centralities of the features

that G

i

is connected to. For undirected graphs inward

and outward edges are included in the calculations.

For directed graphs, only outward edges are included.

Eigenvector centrality can be a useful measure of

global relevance. For directed graphs, a feature’s

importance derives from the centrality of the features

that point to it; for undirected graphs, a feature’s

importance combines the centrality of features that

point to it and those to which it points where

D

F

is the

set of features directly connected to F and where λ is

a constant.

D

F

EGC (F) = (1/λ) Σ EGC(G

i

) (4)

i=0

Between-ness Centrality: The overall connection

strength of a feature F can be formed by calculating

the number of times it lies on one of the shortest paths

between two other features P

i

and Q

j

(Eq. 5). For

undirected graphs inward and outward edges are

included in the calculations. For directed graphs, only

the out-degree is included. Features with high

between-ness centrality are important because they

typically connect different groups of features.

Features with a low between-ness centrality are less

important and are often located at the periphery of a

network. To normalize the value between 0 and 1

divide by (N-1)(N-2) where N is the total number of

features in the graph. For directed graphs divide by

(N-1)(N-2)/2.

D

F

BC (F) = Σ No. shortest paths in P

i

Q

j

going through F (5)

i,j, i≠j

No. of shortest paths in P

i

Q

j

Table 2 summarises the Centrality Metrics used

Table 2: Summary of Centrality Metrics.

Metric Benefits

Degree

Centrality

a measure of a feature’s local connectivity

(“one-hop” connections)

Closeness

Centrality

a measure of how quickly a feature can

communicate to other features across the

graph

–

the closer the bette

r

Eccentricity

Centrality

a measure of a feature’s distance to the absolute

centre point of the graph

Eigenvector

Centrality

a measure of a feature’s connectivity to other

important features

Between-ness

Centrality

a measure of a feature’s connectivity to

disparate groups of features

The metrics in Eqs. (1-5) assume that the connection

strength value (“weight”) of the connecting edge

between features is the same throughout the network

and equal to 1, effectively “unweighted”.

ICSOFT 2024 - 19th International Conference on Software Technologies

472

5 GSMA MODEL

Using the GSMA feature model we calculated values

for each of the five centrality metrics in Section 3.

Table 3 and 4 show the top 10 ranked features for

each centrality metric when considering the feature

model as an unweighted undirected graph. and an

unweighted directed graph.

Full tables are available at:

https://figshare.com/s/

1475000bed40c6f7bc56.

Table 3: Centrality Metrics for Feature Model as an

Unweighted Undirected Graph.

Unweighted Undirected Graph

Feature Rank DC CC EC EGC BC

1 82 15 0 16 15

2 16 0 15 15 0

3 36 77 77 82 77

4 30 16 1 0 82

5 47 30 6 30 47

6 53 47 12 77 30

7 0 6 70 47 16

8 6 12 16 26 53

9 15 65 30 27 36

10 77 68 47 28 70

Table 4: Centrality Metrics for Feature Model as an

Unweighted Directed Graph.

Directed Graph

Feature Rank DC CC EC EGC BC

1 82 1 2 21 15

2 16 6 3 24 82

3 36 12 4 38 47

4 30 17 5 39 53

5 47 20 7 45 30

6 53 23 8 55 36

7 0 26 9 56 16

8 6 27 10 58 77

9 15 28 11 59 89

10 77 37 13 60 95

When comparing metrics on the same graph, the

feature rank is more helpful than the absolute value

because the calculations are different. Absolute

values can be helpful when comparing the structure

of two different graphs with the same metric (using

normalised values between 0 and 1). Table 5a and 6b

show the frequency with which a feature appears in

the Top 10 rankings in Table 3 e.g. in Table 3 Feature

15 appears in the Top 10 for all five metrics.

For the unweighted undirected graph, the most

prominent six features that appear in each metric list

are: Features, 0, 15, 16, 30, 47, 77. Appendix 1 shows

these features occupy prominent roles in the upper

echelons of the model. Interestingly, Features 16, 30

and 47 are all Optional which raises the question of

whether they actually should be Optional. In other

cases, where a feature appears in the Top 10 of only

one metric, consideration might be given to whether

these features are connected appropriately within the

model. For example, consider Features 26 and 27

concerning device unlocking and application login,

respectively. Given that access to many functions is

dependent on if a device is locked or not and whether

a user is logged in or not, one might review if these

features should be situated higher up the model.

Table 5: Frequency of Top Features in Centrality Metrics

for Unweighted Graphs (a) Undirected (b) Directed.

Undirected (Table 3) Directed (Table 4)

Feature Top 10

Ranking

Frequency

Feature

Top 10

Ranking

Frequency

0 5 6 2

15 5 16 2

16 5 36* 2

30 5 47 2

47 5 53 2

77 5 77 2

6 4 82 2

82 3 89* 2

12,36,53,70 2 95* 2

*These 3 features also share the highest value for Closeness Centrality

with 16 other features so arguably are slightly more important.

For the unweighted directed graph, several

prominent features are also prominent in the

undirected graph i.e. Features 6, 16, 36, 47, 77, 82,

but their Top 10 ranking frequency is lower, which

seems to be less helpful. Similarly, Feature 15, which

appears prominently in the undirected graph, does not

appear in the directed graph principally because it is

not in the top 10 rankings for the closeness,

eccentricity or eigenvector metrics. However,

representing a feature model as a directed graph helps

identify “root nodes” and “leaf nodes”. Root nodes

have only outward connections i.e. their in-degree

value is 0. Leaf nodes have only inward connections

i.e. their out-degree is 0, and the closeness, between-

ness and eigenvector centrality metrics will be 0.

6 DISCUSSION AND THREATS

TO VALIDITY

Product line feature models evolve over time and can

include changes to their topology and to each

feature’s properties and its relative importance.

Relative importance metrics offer clues to where

significant impacts might occur as a model evolves

and are computationally straightforward.

Any analysis of a feature model using metrics

requires the normal degree of caution and prudence

about relying on any one metric. A single individual

metric is likely to be of greater value to managers and

Evaluating the Relative Importance of Product Line Features Using Centrality Metrics

473

engineers when it is placed against other sources of

evidence. The practices of reflection, relying on

intuition and any visual inspection of the graphical

version of a feature model, if available and practical,

remain valuable methods to deploy alongside metrics.

Relative Importance here refers only to a feature’s

prominence within the model and may be affected by

other perspectives of the supplier or a customer,

captured in a feature’s semantic properties. Future

work might explore the value of other centrality

metrics as well as combining them with semantic

property values. The usefulness of a metric is often

determined by the running time of the algorithm that

implements it. We did not explore the running times

of each of these metrics on very large feature models.

Allocating weights to features and edges in a

feature model can offer additional insight into the

relationships between features. In large feature

models, weights allocation is untenable without the

use of an automated algorithm. We did not address

automatic weight allocation in this paper. Future

work might also consider whether weights should be

adapted to reflect different influences that features

might have on one another when models are

scrutinised for different purposes e.g. examining the

impact of proposed changes on different customers,

exploring design or implementation considerations,

or considering outsourcing arrangements.

We used the open-source tool Gephi version

0.10.1 (Gephi, 2024). We observed that the

calculation for degree centrality includes both inward

and outward edges whether the graph is directed or

undirected. However, when calculating the other four

metrics in a directed graph, Gephi only includes

outward edges. We also noted that if there are weights

attached to edges, Gephi includes these in its

calculations for degree centrality, but ignores them

for the other four metrics. We have not explored how

other tools behave.

7 RELATED WORK

Many graph metrics have been proposed to identify

important vertices in a graph, across many different

fields. Selecting the most suitable for specific

applications remains a challenge. To address this

problem a culling method is proposed (Chebotarev et

2003) that involves forming a set of candidate

measures, generating the minimum number of graphs

needed to distinguish each measure, constructing a

decision-tree survey for experts, and identifying the

measure consistent with the expert’s view.

Centrality metrics have been investigated for

diverse applications. For internet topology analysis,

(Wills et al, 2020) made a comparison of commonly

used graph metrics and distance measures to discern

between common topological features found in both

random graph models and real-world networks. They

proposed a multi-scale picture of a graph structure to

study the effect of global and local structures on

changes in distance measures. In (Wan et al, 2011) a

small number of centrality metrics are discussed in

their application and performance for solving various

computing and engineering problems in networks

based on extensive simulation experiments. A com-

parative overview of metrics for evaluating network

robustness is presented in (Oehlers et al, 2021). Other

applications include mobile social network applica-

tions (Zhou et al, 2018), visual reasoning in online

social networks (Correa et al, 2012), water distribu-

tion networks (Narayanan et al, 2014) and traffic

management for space satellite networks (Zhang et al,

2018). (Jirapanthong 2012) proposed the use of a

social network to represent software product line

artefacts and relationships between those artefacts to

apply centrality metrics for analysing the dependen-

cies between software artefacts and stakeholders to

improve software processes.

(Bagheri et al, 2011) showed that structural met-

rics in an SPLE feature model can be used to predict

its maintainability. Thresholds for implementation

metrics were examined in (Vale at al 2015). In

(Bagheri et al, 2010) a Stratified Analytic Hierarchy

Process (S-AHP) method is presented for prioritizing

(ranking) and filtering the features based on the judg-

ments of users of a product line, to enhance and ex-

pedite the feature selection and product configuration

process. An algorithm was described in (Peng et al,

2016) to identify the relative importance of a feature

in a feature model assumed to be a directed acyclic

weighted graph. Relative importance was calculated

as a function of weighted degree centrality i.e. the

weighted in-degree divided by the weighted out-de-

gree. The weight values allocated were 1 to manda-

tory, 0.5 to optional, 1/N for XOR where N is the total

number of features that are mutually exclusive and for

I-OR the weight is some value between 1/N and 1

where N is the total number of features that can be

included. Another approach to weight allocation was

presented in (Mannion et al, 2023), where features

were allocated weights based on their variability type

and where the calculations relied on designated start

and end vertices i.e. a directed graph was assumed.

In object-oriented software engineering, the

connections between classes and objects can be used

to build a dependency graph of classes from which

ICSOFT 2024 - 19th International Conference on Software Technologies

474

centrality measures can be extracted. This type of

graph was used in (Ouellet et al, 2023) to show that

using centrality measures in combination with object-

oriented metrics can improve the prediction of fault-

prone classes as well as the prediction of the number

of faults in a class. Centrality measures when

combined with object-oriented metrics can also be

shown (Levasseur et al, 2024) to better predict the

unit testing effort and help prioritize unit tests.

8 CONCLUSION

During product line feature model analysis, the more

important a feature, the more attention it receives and

the more influence it has on the analysis outcome.

Over time, as a product line evolves, features’ relative

importance values change and need to be

recalculated. We show how a small number of

centrality metrics drawn from social network analysis

can be used to establish a feature’s relative

importance for feature model analysis. The metrics

selected were: degree centrality, closeness centrality,

eccentricity centrality, eigenvector centrality and

between-ness centrality. The metrics provide some

insight into a feature’s contribution to a model’s

cohesiveness and the information flows between

features. We acknowledge that a feature’s relative

importance refers here only to its structural

prominence within a feature model and does not

include its value from other perspectives. We

recommended comparing how a feature ranks across

several metrics rather than just one metric.

REFERENCES

Bagheri, E., Gasevic, Assessing the Maintainability of

Software Product Line Feature Models using Structural

Metrics D., Software Qual J (2011) 19:579–612.

Bagheri, E., Asadi, M., Gasevic, D., Soltani, S. (2010).

Stratified Analytic Hierarchy Process: Prioritization

and Selection of Software Features, Proceedings of

14th Int’l Conference on Software Product Lines, SPLC

2010, LNCS 6287, J. Bosch and J. Lee (Eds.), 300–315.

Benavides, D., Sergio, S., Ruiz-Cortés, A. (2010).

Automated Analysis of Feature Models 20 Years Later:

A Literature Review, Information Sys, 35, 6, 615-636.

Bradner, S. (1997). Key words for use in RFCs to Indicate

Requirement Levels. See http://www.ietf.org/rfc

/rfc2119.txt (accessed 27/4/24)

BS ISO/IEC 26558:2017 (2017). Software and Systems

Engineering. Methods and Tools for Variability

Modelling in Software and Systems Product Line.

Chebotarev, P. Gubanov, D: How to Choose the Most

Appropriate Centrality Measure? A Decision Tree

Approach, https://arxiv.org/abs/2003.01052 (accessed

27/4/24)

C. Correa, T. Crnovrsanin, and K. Ma. (2012). Visual

Reasoning About Social Networks Using Centrality

Sensitivity. IEEE Transactions on Visualization and

Computer Graphics 18, 1 (Jan. 2012), 106–120.

Gephi, https://gephi.org/ (accessed 27/4/24)

Global Systems for Mobile communications Association

(GSMA), (2023). AI Mobile Device Requirements

Specification Version 2.0, https://www.gsma.com/new

sroom/wp-content/uploads//TS.47-v2.0.pdf (accessed

27/4/24)

Jirapanthong, W. (2012). Using Social Network Analysis

Technique for supporting Software Product Line

Process, Proc 2012 IEEE Int’l Conf. on Computer

Science and Automation Engineering, 344-348.

Knüppel, T., Thüm, S.. Mennicke, J.. Meinicke, J.,

Schaefer, I. (2017). Is There a Mismatch between Real-

World Feature Models and Product-Line Research,

ESEC/FSE’17, Sept 4-8, Paderborn, Germany, 291-302.

Lee, K., Kang, K.C., Lee, J. (2002). Concepts and

Guidelines of Feature Modeling for Product Line

Software Engineering, in Proceedings of International

Conference on Software Reuse, ICSR 2002:Software

Reuse: Methods, Techniques, and Tools, 62–77.

Levasseur, M-A., Mourad, B. (2024). Prioritizing unit tests

using object-oriented metrics, centrality measures, and

machine learning algorithms, Innovations in Systems

and Software Engineering, https://doi.org/10.1007

/s11334-024-00550-9.

Mannion, M., Kaind, H. (2023). Using Binary Strings for

Comparing Products from Software-Intensive Systems

Product Lines. In: Proceedings of 2023 IEEE 47th

Annual Computers, Software, and Applications

Conference (COMPSAC), Torino, 1638-1645.

Narayanan, I. Vasan, A., Sarangan, V., Kadengal, J.,

Sivasubramaniam, A. (2014). Little Knowledge Isn’t

Always Dangerous–Understanding Water Distribution

Networks Using Centrality Metrics. IEEE Transactions

on Emerging Topics in Computing, 2, 2, 225–238.

Oehlers, M., Fabian, B., (2021). Graph Metrics for Network

Robustness—A Survey

. Mathematics, 9(8), 895.

Ouellet, A., Mourad, B. (2024). Combining Object‐

Oriented Metrics and Centrality Measures to Predict

Faults in Object‐Oriented Software: An Empirical

Validation, Journal of Software Evolution and Process,

36, 4, April, e2548

Peng, Z., Wang, J., He, K., Li ,H. (2016). An Approach for

Prioritizing Software Features Based on Node

Centrality in Probability Network, Proc of the 15th Int’l

Conf on Software Reuse, ICSR 2016, Kapitsaki, G.M.,

Santana de Almeida, E (Eds.), 106–121.

Pure Systems, https://www.pure-systems.com/purevariants

(accessed 27/4/24)

Scott, J. (2017). Social Network Analysis, 4th edition.

Vale, G., Albuquerque, D., Figueiredo, E., Garcia, A.

(2015) Defining Metric Thresholds for Software

Product Lines: A Comparative Study, Proc of 19

th

Int’l

Conf on Software Product Lines, SPLC 2015, 176-185.

Evaluating the Relative Importance of Product Line Features Using Centrality Metrics

475

Wan, Z., Mahajan, Y., Kang, B.W., Moore, T.J., Cho, J-H.,

A Survey on Centrality Metrics and Their Implications

in Network Resilience, https://arxiv.org/pdf/2011.14

575.pdf (accessed 27/4/24)

Wills, P. Meyer, F., Chen, P-Y. (2020). Metrics for Graph

Comparison: A Practitioner's Guide, PloS one, 15, 2,

p.e0228728-e0228728

Zhang, Z., Jiang, C., Guo, G., Qian, Y. and Y. Ren. (2018).

Temporal Centrality-balanced Traffic Management for

Space Satellite networks. IEEE Transactions on

Vehicular Technology 67, 5, 4427–4439.

Zhou, H., Ruan, M., Zhu, C., Leung, V,. Xu, S., Huang. C.

(2018). A Time-ordered Aggregation Model-based

Centrality Metric for Mobile Social Networks. IEEE

Access 6, 25588–25599.

APPENDIX

GSMA Mobile Phone Specification

!

Mandatory Inclusive_OR Exclusive-OR

?

Optional

ICSOFT 2024 - 19th International Conference on Software Technologies

476