Separation of concerns in feature diagram languages: A systematic survey

Research output: Contribution to journalArticle

Abstract

The need for flexible customization of large feature-rich software systems, according to requirements of various stakeholders, has become an important problem in software development. Among the many software engineering approaches dealing with variability management, the notion of Software Product Line (SPL) has emerged as a major unifying concept. Drawing from established disciplines of manufacturing, SPL approaches aim to design repertoires of software artifacts, from which customized software systems for specific stakeholder requirements can be developed. A major difficulty SPL approaches attempt to address is the modularization of software artifacts, which reconciles the user's needs for certain features and the development and technical constraints. Towards this end, many SPL approaches use feature diagrams to describe possible configurations of a feature set. There have been several proposals for feature diagram languages with varying degrees of expressiveness, intuitiveness, and precision. However, these feature diagram languages have limited scalability when applied to realistic software systems. This article provides a systematic survey of various concerns of feature diagrams and ways in which concerns have been separated. The survey shows how the uncertainty in the purpose of feature diagram languages creates both conceptual and practical limitations to scalability of those languages.

Original languageEnglish
Article number2501665
JournalACM Computing Surveys
Volume45
Issue number4
DOIs
Publication statusPublished - 1 Aug 2013

Fingerprint

Software Product Lines
Scalability
Software engineering
Diagram
Software System
Modularization
Software
Customization
Requirements
Expressiveness
Software Engineering
Software Development
Manufacturing
Language
Uncertainty
Configuration

Keywords

  • Feature diagram
  • Separation of concerns
  • Software product line
  • Variability

Cite this

@article{a1e6be0e7ffd492486ba1b5f2a119e55,
title = "Separation of concerns in feature diagram languages: A systematic survey",
abstract = "The need for flexible customization of large feature-rich software systems, according to requirements of various stakeholders, has become an important problem in software development. Among the many software engineering approaches dealing with variability management, the notion of Software Product Line (SPL) has emerged as a major unifying concept. Drawing from established disciplines of manufacturing, SPL approaches aim to design repertoires of software artifacts, from which customized software systems for specific stakeholder requirements can be developed. A major difficulty SPL approaches attempt to address is the modularization of software artifacts, which reconciles the user's needs for certain features and the development and technical constraints. Towards this end, many SPL approaches use feature diagrams to describe possible configurations of a feature set. There have been several proposals for feature diagram languages with varying degrees of expressiveness, intuitiveness, and precision. However, these feature diagram languages have limited scalability when applied to realistic software systems. This article provides a systematic survey of various concerns of feature diagrams and ways in which concerns have been separated. The survey shows how the uncertainty in the purpose of feature diagram languages creates both conceptual and practical limitations to scalability of those languages.",
keywords = "Feature diagram, Separation of concerns, Software product line, Variability",
author = "Arnaud Hubaux and Tun, {Thein Than} and Patrick Heymans",
year = "2013",
month = "8",
day = "1",
doi = "10.1145/2501654.2501665",
language = "English",
volume = "45",
journal = "ACM Computing Surveys",
issn = "0360-0300",
publisher = "ACM Press",
number = "4",

}

Separation of concerns in feature diagram languages : A systematic survey. / Hubaux, Arnaud; Tun, Thein Than; Heymans, Patrick.

In: ACM Computing Surveys, Vol. 45, No. 4, 2501665, 01.08.2013.

Research output: Contribution to journalArticle

TY - JOUR

T1 - Separation of concerns in feature diagram languages

T2 - A systematic survey

AU - Hubaux, Arnaud

AU - Tun, Thein Than

AU - Heymans, Patrick

PY - 2013/8/1

Y1 - 2013/8/1

N2 - The need for flexible customization of large feature-rich software systems, according to requirements of various stakeholders, has become an important problem in software development. Among the many software engineering approaches dealing with variability management, the notion of Software Product Line (SPL) has emerged as a major unifying concept. Drawing from established disciplines of manufacturing, SPL approaches aim to design repertoires of software artifacts, from which customized software systems for specific stakeholder requirements can be developed. A major difficulty SPL approaches attempt to address is the modularization of software artifacts, which reconciles the user's needs for certain features and the development and technical constraints. Towards this end, many SPL approaches use feature diagrams to describe possible configurations of a feature set. There have been several proposals for feature diagram languages with varying degrees of expressiveness, intuitiveness, and precision. However, these feature diagram languages have limited scalability when applied to realistic software systems. This article provides a systematic survey of various concerns of feature diagrams and ways in which concerns have been separated. The survey shows how the uncertainty in the purpose of feature diagram languages creates both conceptual and practical limitations to scalability of those languages.

AB - The need for flexible customization of large feature-rich software systems, according to requirements of various stakeholders, has become an important problem in software development. Among the many software engineering approaches dealing with variability management, the notion of Software Product Line (SPL) has emerged as a major unifying concept. Drawing from established disciplines of manufacturing, SPL approaches aim to design repertoires of software artifacts, from which customized software systems for specific stakeholder requirements can be developed. A major difficulty SPL approaches attempt to address is the modularization of software artifacts, which reconciles the user's needs for certain features and the development and technical constraints. Towards this end, many SPL approaches use feature diagrams to describe possible configurations of a feature set. There have been several proposals for feature diagram languages with varying degrees of expressiveness, intuitiveness, and precision. However, these feature diagram languages have limited scalability when applied to realistic software systems. This article provides a systematic survey of various concerns of feature diagrams and ways in which concerns have been separated. The survey shows how the uncertainty in the purpose of feature diagram languages creates both conceptual and practical limitations to scalability of those languages.

KW - Feature diagram

KW - Separation of concerns

KW - Software product line

KW - Variability

UR - http://www.scopus.com/inward/record.url?scp=84885220291&partnerID=8YFLogxK

U2 - 10.1145/2501654.2501665

DO - 10.1145/2501654.2501665

M3 - Article

VL - 45

JO - ACM Computing Surveys

JF - ACM Computing Surveys

SN - 0360-0300

IS - 4

M1 - 2501665

ER -