Non functional requirements

What

  • defines the quality attribute of a software system. They represent a set of standards used to judge the specific operation of a system.

  • Example

    • how fast does the website load?

    • Types of Non-functional requirement are Scalability, Capacity, Availability, Reliability, Recoverability, Data Integrity, Maintainability, Serviceability, Security, Regulatory, Manageability, Environmental, Data Integrity, Usability, Interoperability etc.

    • Performance- for example Response Time, Throughput, Utilization, Static Volumetric

  • It is essential to ensure the usability and effectiveness of the entire software system. Failing to meet non-functional requirements can result in systems that fail to satisfy user needs.

  • allows you to impose constraints or restrictions on the design of the system across the various agile backlogs. Example, the site should load in 3 seconds when the number of simultaneous users are > 10000.

  • Description of non-functional requirements is just as critical as a functional requirement.

  • It's an attribute of the system, and product properties

  • It is non-mandatory

  • It is captured as a quality attribute, hard to capture

  • Helps you to verify the performance of the software.

  • Concentrates on the user's expectation.

  • Documentation describes how the product works

  • Type of Testing involves Non-Functional Testing like Performance, Stress, Usability, Security testing, etc.

  • defines the performance attribute of a software system

Examples of Non-functional requirements

  • Users must change the initially assigned login password immediately after the first successful login. Moreover, the initial should never be reused.

  • Employees never allowed to update their salary information. Such attempt should be reported to the security administrator.

  • Every unsuccessful attempt by a user to access an item of data shall be recorded on an audit trail.

  • A website should be capable enough to handle 20 million users with affecting its performance

  • The software should be portable. So moving from one OS to other OS does not create any problem.

  • Privacy of information, the export of restricted technologies, intellectual property rights, etc. should be audited.

Advantages of Non-Functional Requirement

  • The nonfunctional requirements ensure the software system follow legal and compliance rules.

  • They ensure the reliability, availability, and performance of the software system

  • They ensure good user experience and ease of operating the software.

  • They help in formulating security policy of the software system.

Last updated