Non-functional requirement

Non-functional requirement

In systems engineering and requirements engineering, a non-functional requirement is a requirement that specifies criteria that can be used to judge the operation of a system, rather than specific behaviors. This should be contrasted with functional requirements that define specific behavior or functions. The plan for implementing functional requirements is detailed in the system design. The plan for implementing non-functional requirements is detailed in the system architecture.

In general, functional requirements define what a system is supposed to do whereas non-functional requirements define how a system is supposed to be. Functional requirements are usually in the form of "system shall do <requirement>", while non-functional requirements are "system shall be <requirement>".

Non-functional requirements are often called qualities of a system. Other terms for non-functional requirements are "constraints", "quality attributes", "quality goals", "quality of service requirements" and "non-behavioral requirements".[1] Qualities, that is non-functional requirements, can be divided into two main categories:

  1. Execution qualities, such as security and usability, which are observable at run time.
  2. Evolution qualities, such as testability, maintainability, extensibility and scalability, which are embodied in the static structure of the software system.[2][3]

Contents

Examples

A system may be required to present the user with a display of the number of records in a database. This is a functional requirement. How up-to-date this number needs to be is a non-functional requirement. If the number needs to be updated in real time, the system architects must ensure that the system is capable of updating the displayed record count within an acceptably short interval of the number of records changing.

Sufficient network bandwidth may also be a non-functional requirement of a system.

Other examples:

See also

References

  1. ^ Stellman, Andrew; Greene, Jennifer (2005). Applied Software Project Management. O'Reilly Media. p. 113. ISBN 978-0-596-00948-9. http://www.stellman-greene.com/aspm/. 
  2. ^ Wiegers, Karl E. (2003). Software Requirements, Second Edition. Microsoft Press. ISBN 0-7356-1879-8. 
  3. ^ Young, Ralph R. (2001). Effective Requirements Practices. Addison-Wesley. ISBN 978-0201709124. 

External links

Scientific links

Templates and examples

Modeling non-functional properties in SOA

Agile non-functional requirements


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Look at other dictionaries:

  • non-functional requirement — noun A requirement of a piece of software, such as accessibility or portability, that is not a specific, measurable aspect of performing a particular task. Ant: functional requirement …   Wiktionary

  • Non-functional requirements — In systems engineering and requirements engineering, non functional requirements are requirements which specify criteria that can be used to judge the operation of a system, rather than specific behaviors. This should be contrasted with… …   Wikipedia

  • functional requirement — noun a) A condition or capability that a system, person or object has to satisfy, fulfill or comply with. b) A description of any of the functions of a software system Ant: non functional requirement …   Wiktionary

  • Requirement — In engineering, a requirement is a singular documented need of what a particular product or service should be or do. It is most commonly used in a formal sense in systems engineering or software engineering. It is a statement that identifies a… …   Wikipedia

  • Functional requirements — In software engineering, a functional requirement defines a function of a software system or its component. A function is described as a set of inputs, the behavior, and outputs (see also ). Functional requirements may be calculations, technical… …   Wikipedia

  • Non-coding RNA — A non coding RNA (ncRNA) is a functional RNA molecule that is not translated into a protein. Less frequently used synonyms are non protein coding RNA (npcRNA), non messenger RNA (nmRNA) and functional RNA (fRNA). The term small RNA (sRNA) is… …   Wikipedia

  • Non-rocket spacelaunch — Non rocket space launch (NRS) is a launch into space where some or all needed speed and altitude is provided by non rocket means, rather than simply using conventional chemical rockets from the ground. A number of alternatives to rockets have… …   Wikipedia

  • Holomorphic functional calculus — In mathematics, holomorphic functional calculus is functional calculus with holomorphic functions. That is to say, given a holomorphic function fnof; of a complex argument z and an operator T , the aim is to construct an operator:f(T),which in a… …   Wikipedia

  • Consortium for Functional Glycomics — Formation 2001 Purpose/focus to define paradigms by which protein carbohydrate interactions mediate cell communication Headquarters The Scripps Research Institute …   Wikipedia

  • Performance engineering — Within systems engineering, performance engineering encompasses the set of roles, skills, activities, practices, tools, and deliverables applied at every phase of the Systems Development Lifecycle which ensures that a solution will be designed,… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”