Quantifying Structural Attributes of System Decompositions in 28 Feature-oriented Software Product Lines: An Exploratory Study

Background: A key idea of feature orientation is to decompose a software product line along the features it provides. Feature decomposition is orthogonal to object-oriented decomposition it crosscuts the underlying package and class structure. It has been argued often that feature decomposition impr...

Full description

Bibliographic Details
Main Authors: Sobernig, Stefan, Apel, Sven, Kolesnikov, Sergiy, Siegmund, Norbert
Format: Others
Language:en
Published: WU Vienna University of Economics and Business 2014
Subjects:
Online Access:http://epub.wu.ac.at/4272/8/report.pdf
id ndltd-VIENNA-oai-epub.wu-wien.ac.at-4272
record_format oai_dc
spelling ndltd-VIENNA-oai-epub.wu-wien.ac.at-42722014-11-09T05:01:03Z Quantifying Structural Attributes of System Decompositions in 28 Feature-oriented Software Product Lines: An Exploratory Study Sobernig, Stefan Apel, Sven Kolesnikov, Sergiy Siegmund, Norbert RVK ST 230 Software product lines / Feature-oriented programming / Fuji /Structural coupling / Structural cohesion / Software measurement / Softwaremetrie / Software Engineering Background: A key idea of feature orientation is to decompose a software product line along the features it provides. Feature decomposition is orthogonal to object-oriented decomposition it crosscuts the underlying package and class structure. It has been argued often that feature decomposition improves system structure (reduced coupling, increased cohesion). However, recent empirical findings suggest that this is not necessarily the case, which is the motivation for our empirical investigation. Aim: In fact, there is little empirical evidence on how the alternative decompositions of feature orientation and object orientation compare to each other in terms of their association with observable properties of system structure (coupling, cohesion). This motivated us to empirically investigate and compare the properties of three decompositions (object-oriented, feature-oriented, and their intersection) of 28 feature-oriented software product lines. Method: In an exploratory, observational study, we quantify internal attributes, such as import coupling and cohesion, to describe and analyze the different decompositions of a feature-oriented product line in a systematic, reproducible, and comparable manner. For this purpose, we use three established software measures (CBU, IUD, EUD) as well as standard distribution statistics (e.g., Gini coefficient). Results: First, feature decomposition is associated with higher levels of structural coupling in a product line than a decomposition into classes. Second, although coupling is concentrated in feature decompositions, there are not necessarily hot-spot features. Third, the cohesion of feature modules is not necessarily higher than class cohesion, whereas feature modules serve more dependencies internally than classes. Fourth, coupling and cohesion measurement show potential for sampling optimization in complex static and dynamic product-line analyses (product-line type checking, feature-interaction detection). Conclusions: Our empirical study raises critical questions about alleged advantages of feature decomposition. At the same time, we demonstrate how the measurement of structural attributes can facilitate static and dynamic analyses of software product lines. (authors' abstract) WU Vienna University of Economics and Business 2014-07 Paper NonPeerReviewed en application/pdf http://epub.wu.ac.at/4272/8/report.pdf Creative Commons: Attribution 3.0 Austria Series: Technical Reports / Institute for Information Systems and New Media http://epub.wu.ac.at/4272/
collection NDLTD
language en
format Others
sources NDLTD
topic RVK ST 230
Software product lines / Feature-oriented programming / Fuji /Structural coupling / Structural cohesion / Software measurement / Softwaremetrie / Software Engineering
spellingShingle RVK ST 230
Software product lines / Feature-oriented programming / Fuji /Structural coupling / Structural cohesion / Software measurement / Softwaremetrie / Software Engineering
Sobernig, Stefan
Apel, Sven
Kolesnikov, Sergiy
Siegmund, Norbert
Quantifying Structural Attributes of System Decompositions in 28 Feature-oriented Software Product Lines: An Exploratory Study
description Background: A key idea of feature orientation is to decompose a software product line along the features it provides. Feature decomposition is orthogonal to object-oriented decomposition it crosscuts the underlying package and class structure. It has been argued often that feature decomposition improves system structure (reduced coupling, increased cohesion). However, recent empirical findings suggest that this is not necessarily the case, which is the motivation for our empirical investigation. Aim: In fact, there is little empirical evidence on how the alternative decompositions of feature orientation and object orientation compare to each other in terms of their association with observable properties of system structure (coupling, cohesion). This motivated us to empirically investigate and compare the properties of three decompositions (object-oriented, feature-oriented, and their intersection) of 28 feature-oriented software product lines. Method: In an exploratory, observational study, we quantify internal attributes, such as import coupling and cohesion, to describe and analyze the different decompositions of a feature-oriented product line in a systematic, reproducible, and comparable manner. For this purpose, we use three established software measures (CBU, IUD, EUD) as well as standard distribution statistics (e.g., Gini coefficient). Results: First, feature decomposition is associated with higher levels of structural coupling in a product line than a decomposition into classes. Second, although coupling is concentrated in feature decompositions, there are not necessarily hot-spot features. Third, the cohesion of feature modules is not necessarily higher than class cohesion, whereas feature modules serve more dependencies internally than classes. Fourth, coupling and cohesion measurement show potential for sampling optimization in complex static and dynamic product-line analyses (product-line type checking, feature-interaction detection). Conclusions: Our empirical study raises critical questions about alleged advantages of feature decomposition. At the same time, we demonstrate how the measurement of structural attributes can facilitate static and dynamic analyses of software product lines. (authors' abstract) === Series: Technical Reports / Institute for Information Systems and New Media
author Sobernig, Stefan
Apel, Sven
Kolesnikov, Sergiy
Siegmund, Norbert
author_facet Sobernig, Stefan
Apel, Sven
Kolesnikov, Sergiy
Siegmund, Norbert
author_sort Sobernig, Stefan
title Quantifying Structural Attributes of System Decompositions in 28 Feature-oriented Software Product Lines: An Exploratory Study
title_short Quantifying Structural Attributes of System Decompositions in 28 Feature-oriented Software Product Lines: An Exploratory Study
title_full Quantifying Structural Attributes of System Decompositions in 28 Feature-oriented Software Product Lines: An Exploratory Study
title_fullStr Quantifying Structural Attributes of System Decompositions in 28 Feature-oriented Software Product Lines: An Exploratory Study
title_full_unstemmed Quantifying Structural Attributes of System Decompositions in 28 Feature-oriented Software Product Lines: An Exploratory Study
title_sort quantifying structural attributes of system decompositions in 28 feature-oriented software product lines: an exploratory study
publisher WU Vienna University of Economics and Business
publishDate 2014
url http://epub.wu.ac.at/4272/8/report.pdf
work_keys_str_mv AT sobernigstefan quantifyingstructuralattributesofsystemdecompositionsin28featureorientedsoftwareproductlinesanexploratorystudy
AT apelsven quantifyingstructuralattributesofsystemdecompositionsin28featureorientedsoftwareproductlinesanexploratorystudy
AT kolesnikovsergiy quantifyingstructuralattributesofsystemdecompositionsin28featureorientedsoftwareproductlinesanexploratorystudy
AT siegmundnorbert quantifyingstructuralattributesofsystemdecompositionsin28featureorientedsoftwareproductlinesanexploratorystudy
_version_ 1716719929422512128