What's in a feature: a requirements engineering perspective

  • Authors:
  • Andreas Classen;Patrick Heymans;Pierre-Yves Schobbens

  • Affiliations:
  • PReCISE Research Centre, Faculty of Computer Science, University of Namur, Namur, Belgium;PReCISE Research Centre, Faculty of Computer Science, University of Namur, Namur, Belgium;PReCISE Research Centre, Faculty of Computer Science, University of Namur, Namur, Belgium

  • Venue:
  • FASE'08/ETAPS'08 Proceedings of the Theory and practice of software, 11th international conference on Fundamental approaches to software engineering
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

The notion of feature is heavily used in Software Engineering, especially for software product lines. However, this notion appears to be confusing, mixing various aspects of problem and solution. In this paper, we attempt to clarify the notion of feature in the light of Zave and Jackson's framework for Requirements Engineering. By redefining a problem-level feature as a set of related requirements, specifications and domain assumptions--the three types of statements central to Zave and Jackson's framework--we also revisit the notion of feature interaction. This clarification work opens new perspectives on formal description and verification of software product lines. An important benefit of the approach is to enable an early identification of feature interactions taking place in the systems' environment, a notoriously challenging problem. The approach is illustrated through a proof-of-concept prototype tool and applied to a Smart Home example.