Nonfunctional requirements: from elicitation to conceptual models
Top Cited Papers
- 4 May 2004
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Software Engineering
- Vol. 30 (5), 328-350
- https://doi.org/10.1109/tse.2004.10
Abstract
Nonfunctional requirements (NFRs) have been frequently neglected or forgotten in software design. They have been presented as a second or even third class type of requirement, frequently hidden inside notes. We tackle this problem by treating NFRs as first class requirements. We present a process to elicit NFRs, analyze their interdependencies, and trace them to functional conceptual models. We focus our attention on conceptual models expressed using UML (Unified Modeling Language). Extensions to UML are proposed to allow NFRs to be expressed. We show how to integrate NFRs into the class, sequence, and collaboration diagrams. We also show how use cases and scenarios can be adapted to deal with NFRs. This work was used in three case studies and their results suggest that by using our proposal we can improve the quality of the resulting conceptual models.Keywords
This publication has 17 references indexed in Scilit:
- Integrating non-functional requirements into data modelingPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2003
- Goal-oriented requirements engineering: a guided tourPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Non-functional requirements analysis: deficiencies in structured methodsInformation and Software Technology, 2001
- Non-Functional Requirements in Software EngineeringPublished by Springer Science and Business Media LLC ,2000
- Enhancing a requirements baseline with scenariosRequirements Engineering, 1997
- Aspect-oriented programmingLecture Notes in Computer Science, 1997
- Nonfunctional Requirements of Real-Time SystemsDigital Twin Paradigm For Smarter Systems and Environments: The Industry Use Cases, 1996
- Five ways to destroy a development project (software development)IEEE Software, 1993
- Experimentation in software engineeringIEEE Transactions on Software Engineering, 1986
- Structured Analysis (SA): A Language for Communicating IdeasIEEE Transactions on Software Engineering, 1977