Rethinking the Notion of Non-Functional Requirements

Rethinking the Notion of Non-Functional Requirements

conference
Martin Glinz
Requirements standards and textbooks typically classify requirements into functional requirements on the one hand and attributes or non-functional requirements on the other hand. In this classification, requirements given in terms of required operations and/or data are considered to be functional, while performance requirements and quality requirements (such as requirements about security, reliability, maintainability, etc.) are classified as nonfunctional. In this paper, we present arguments why this notion of non-functional requirements is flawed and present a new classification of requirements which is based on four facets: kind (e.g. function, performance, or constraint), representation (e.g. operational, quantitative or qualitative), satisfaction (hard or soft), and role (e.g. prescriptive or assumptive). We define the facets, discuss typical combinations of facets and argue why such a faceted classification of requirements is better than the traditional notion of functional and non-functional requirements.
Rethinking the Notion of Non-Functional Requirements
2005
September
55-64
Proceedings of the Third World Congress for Software Quality
rerg