Concept: Supporting Requirements
This concept describes the supporting requirements
Relationships
Main Description

Requirements Classification

Supporting requirements are categorized according to the FURPS+ model, an acronym for Functionality, Usability, Reliability, Performance, Supportability + constraints. Constraints include design, implementation, interface, physical constraints, and business rules. A description of each of these types of requirements is provided below.

Supporting requirements and use cases together define the requirements on the system, supporting the features listed in the vision document. Each requirement relates to some features and vice versa.

In general, functional requirements describe behavior and are captured in use cases (see Artifact: Use Case). Non-functional requirements are captured in the Artifact: Supporting Requirements. However, non-functional requirements that are intimately associated with a particular use case are often captured within the use case itself to simplify communications and maintenance.  Similarly, there are global, system-wide functional requirements that are often captured in the supporting requirements for the same reasons. 

Functionality Requirements

Functionality requirements include all the overarching, system wide functional requirements. These functional requirements represent the main system features that are familiar within the business domain or technically oriented requirements such as auditing, licensing, localization, mail, online help, printing, reporting, security, system management, or workflow.

Usability Requirements

Usability requirements include requirements based on human factors and user interface issues such as accessibility, interface aesthetics, and consistency within the user interface.

Reliability Requirements

Reliability requirements include aspects such as availability, accuracy, predictability, frequency of failure or recoverability of the system from shut-down failure.

Performance Requirements

Performance requirements address concerns such as throughput of information through the system, system response time and resource usage.

Supportability Requirements

Supportability requirements include requirements such as testability, adaptability, maintainability, compatibility, configurability, install-ability, scalability, localizability, and so on.

+ Constraints

The "+" of the FURPS+ acronym allows us to specify constraints, such as design, implementation, interface, physical constraints, and business rules:

  • A design constraint limits the design, stating requirements on the approach that should be taken in developing the system.
  • Implementation constraints put limits on coding or construction (required standards, languages, tools or platform)
  • Interface constraints are requirements to interact with external systems, describing protocols or the nature of the information that is passed across that interface.
  • Physical constraints affect the hardware or packaging housing the system (shape, size, and weight....)
  • A business rule is a policy or decision that governs how the business operates and may therefore constrain the steps described in the use case flows.
More Information