Hier finden Sie wissenschaftliche Publikationen aus den Fraunhofer-Instituten.

What is a feature?: A qualitative study of features in industrial software product lines

: Berger, Thorsten; Lettner, Daniela; Rubin, Julia; Grünbacher, Paul; Silva, Adeline de Sousa; Becker, Martin; Chechik, Marsha; Czarnecki, Krzysztof


Association for Computing Machinery -ACM-:
19th International Software Product Line Conference, SPLC 2015. Proceedings. Vol.1 : July 20-24, Nashville, Tennessee, USA
New York: ACM, 2015
ISBN: 978-1-4503-3613-0
International Software Product Line Conference (SPLC) <19, 2015, Nashville/Tenn.>
Fraunhofer IESE ()
software product line; product line engineering; feature

The notion of features is commonly used to describe the functional and non-functional characteristics of a system. In software product line engineering, features often become the prime entities of software reuse and are used to distinguish the individual products of a product line. Properly decomposing a product line into features, and correctly using features in all engineering phases, is core to the immediate and long-term success of such a system. Yet, although more than ten different definitions of the term feature exist, it is still a very abstract concept. Definitions lack concrete guidelines on how to use the notion of features in practice.
To address this gap, we present a qualitative empirical study on actual feature usage in industry. Our study covers three large companies and an in-depth, contextualized analysis of 23 features, perceived by the interviewees as typical, atypical (outlier), good, or bad representatives of features. Using structured interviews, we investigate the rationales that lead to a feature's perception, and identify and analyze core characteristics (facets) of these features. Among others, we find that good features precisely describe customer-relevant functionality, while bad features primarily arise from rashly executed processes. Outlier features, serving unusual purposes, are necessary, but do not require the full engineering process of typical features.