Functional requirements

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 details, data manipulation and processing and other specific functionality that show "how" a use case is to be fulfilled. They are supported by non-functional requirements, which impose constraints on the design or implementation (such as performance requirements, security, or reliability).

As defined in requirements engineering, functional requirements specify particular behaviors of a system. This should be contrasted with non-functional requirements which specify overall characteristics such as cost and reliability. Typically, a requirements analyst generates functional requirements after building use cases. However, this may have exceptions since software development is an iterative process and sometimes certain requirements are conceived prior to the definition of the use cases. Both artifacts (use cases documents and requirements documents) complement each other in a bidirectional process.

Process

A typical functional requirement will contain a unique name and number, a brief summary, and a rationale. This information is used to help the reader understand why the requirement is needed, and to track the requirement through the development of the system.

The crux of the requirement is the description of the required behavior, which must be clear and readable. The described behavior may come from organizational or business rules, or it may be discovered through elicitation sessions with users, stakeholders, and other experts within the organization. Many requirements may be uncovered during the use case development. When this happens, the requirements analyst should create a placeholder requirement with a name and summary, and research the details later, to be filled in when they are better known.

Software requirements must be clear, correct, unambiguous, specific, and verifiable.

Books

*cite book
first = Karl E.
last = Wiegers
authorlink =
year = 2003
title = Software Requirements 2: Practical techniques for gathering and managing requirements throughout the product development cycle
edition = 2nd ed.
publisher = Microsoft Press
location = Redmond
id = ISBN 0-7356-1879-8
url = http://processimpact.com/pubs.shtml#reqs

*cite book
author = Andrew Stellman and Jennifer Greene
authorlink =
year = 2005
title = Applied Software Project Management
edition =
publisher = O'Reilly Media
location = Cambridge, MA
id = ISBN 0-596-00948-8
url = http://www.stellman-greene.com/

*cite book
author = Ian Sommerville
authorlink = Ian Sommerville
year = 2006
title = Software Engineering
edition = 8th ed.
id = ISBN 0-321-31379-8


Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Look at other dictionaries:

  • Functional Requirements for Bibliographic Records — or FRBR, sometimes pronounced (IPA pronunciation: IPA| [fɝbɚ] ) is a conceptual entity relationship model developed by the International Federation of Library Associations and Institutions (IFLA) that relates user tasks of retrieval and access in …   Wikipedia

  • Functional Requirements for Authority Records — or FRAR is a conceptual entity relationship model developed by the International Federation of Library Associations and Institutions (IFLA) for relating the data that are recorded in library authority records to the needs of the users of those… …   Wikipedia

  • Functional Requirements for Bibliographic Records — Die Functional Requirements for Bibliographic Records (FRBR) sind ein bibliothekswissenschaftliches Datenmodell für bibliographische Metadaten. Die FRBR Ontologie basiert auf dem Entity Relationship Modell und definiert eine Reihe von… …   Deutsch Wikipedia

  • 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

  • Non-functional requirements framework — NFR (Non Functional Requirements) is a framework on Goal Modelling. The analysis begins with softgoals that represent NFR which stakeholders agree upon. Softgoals are goals that are hard to express, but tend to be global qualities of a software… …   Wikipedia

  • Non-Functional Requirements framework — NFR (Non Functional Requirements) is a framework on Goal Modelling. The analysis begins with softgoals that represent NFR which stakeholders agree upon. Softgoals are goals that are hard to express, but tend to be global qualities of a software… …   Wikipedia

  • Requirements analysis — in systems engineering and software engineering, encompasses those tasks that go into determining the needs or conditions to meet for a new or altered product, taking account of the possibly conflicting requirements of the various stakeholders,… …   Wikipedia

  • Requirements management — The purpose of Requirements management is to assure the organization leverages to the expectations of its customers, internal or external stakeholders. It focuses on requirements as the element capturing these expectations, and thus, as a focal… …   Wikipedia

  • Functional verification — Functional verification, in electronic design automation, is the task of verifying that the logic design conforms to specification. In everyday terms, functional verification attempts to answer the question Does this proposed design do what is… …   Wikipedia

  • Functional zoning — is a term used to describe the phenomenon when buildings of the same function cluster together in an area of a city or town. Sometimes zoning laws require that uses be concentrated in a particular area. However, this clustering can occur even in… …   Wikipedia

Share the article and excerpts

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