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)

Taxonomy of non-functional requirements


This session describes the software quality attributes that an architect should emphasize while architecting the application.

Refer to the following table to gain a perception of how software quality attributes map to system factors, and the detailed description for each of the software quality attributes.

Later sections of this chapter contain best practice guidelines for each quality attribute, to understand how the attributes will impact the solution design and the dependent decisions to address these issues.

Note

Remember that the list of quality attributes in this chapter is critical and will be essential to be considered for every application or IT system.

The following table describes all the critical software quality attributes covered in this book. It categorizes the attributes in four categories which includes runtime, design, system, and user. Leverage the following table to understand each of the quality attributes and their associated solution...