Book Image

Mastering Non-Functional Requirements

By : Sameer Paradkar
Book Image

Mastering Non-Functional Requirements

By: Sameer Paradkar

Overview of this book

Non-functional Requirements are key to any software/IT program and cannot be overlooked or ignored. This book provides a comprehensive approach to the analysis, architecture, and measurement of NFRs. It includes considerations for bespoke Java, .NET, and COTS applications that are applicable to IT applications/systems in different domains. The book outlines the methodology for capturing the NFRs and also describes a framework that can be leveraged by analysts and architects for tackling NFRs for various engagements. This book starts off by explaining the various KPIs, taxonomies, and methods for identifying NFRs. Learn the design guidelines for architecting applications and systems relating to NFRs and design principles to achieve the desired outcome. We will then move on to various key tiers/layers and patterns pertaining to the business, database, and integrating tiers. After this, we will dive deep into the topics pertaining to techniques related to monitoring and measurement of NFRs, such as sizing, analytical modeling, and quality assurance. Lastly, we end the book by describing some pivotal NFRs and checklists for the software quality attributes related to the business, application, data, and infrastructure domains.
Table of Contents (14 chapters)

Pivotal NFRs KPI and framework


The following table and diagram depict the pivotal NFRs KPIs and frameworks:

NFR

Attributes

Integrity

Mean time to integrate with a new interfacing system

Ability of a system to perform its required functions under stated conditions for a specific period of time

Data integrity: Referential integrity in database tables and interfaces

Application integrity and information integrity--during transactions

Fault trapping (I/O): Handling failures and recovery

Business continuity

RTO/Restore time: Time required switching to secondary site when the primary fails

RPO/Backup time: Time taken to back your data

Resilience

Length of time between failures

Recoverability: Time required by the system to resume operations in the event of failure

Resilience: The reliability characteristics of the system and sub-components

Confidentiality

Encryption (data in flight and at rest): All external communications between the system's data server and clients must be encrypted

Data confidentiality: All...