Mastering Non-Functional Requirements

Book description

This book covers the most critical 24 NFRs that are applicable to IT applications and systems.

About This Book

  • Explains three stages of nonfunctional requirements, that is, analysis, architecture, and assessment

  • In-depth knowledge of NFR framework and taxonomy that provides guidance around the modelling phase for the NFRs

  • Coverage of 24 critical and pivotal NFRs, including the analysis, architecture, and assessment.

  • Who This Book Is For

    The primary audience for this title are the gamut of roles starting from IT consultant to chief architects who are responsible to deliver strategic, tactical, and operational engagements for fortune 100 customers worldwide. Nonfunctional requirements are the key to any software / IT program. They cannot be overlooked or ignored. The book provides a comprehensive approach from analysis, architecture, and measurement of nonfunctional requirements. The book includes considerations for bespoke (Java, .Net, and COTS applications). These are applicable to IT applications from various 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. The audience for this book include business analysts, enterprise architects, business architects, solution architects, technical architects/designers, domain/security/integration architects, software developers, support engineers and test engineers, technical project managers, project leads/technical leads/technical project managers, and students from the computer science/IT stream

    What You Will Learn

  • Learn techniques related to the analysis, architecture, and monitoring of NFRs

  • Understand the various tools, techniques, and processes in order to improve the overall quality of the desired outcomes

  • Embrace the best practices of architecting, metrics, and success factors for NFRs

  • Identify the common pitfalls to be avoided and the patterns to leverage

  • Understand taxonomy and framework for NFRs

  • Learn the design guidelines for architecting applications and systems relating to NFRs

  • Abstract different methodologies to analyze and gather NFRs

  • In Detail

    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.

    Style and approach

    The book takes a pragmatic approach, describing various techniques related to the analysis of NFRs, the architecture of NFRs, and assessment of NFRs.

    Table of contents

    1. About the Reviewer
    2. Preface
      1. What this book covers
      2. Who this book is for
      3. Conventions
      4. Reader feedback
      5. Customer support
        1. Errata
        2. Piracy
        3. Questions
    3. Understanding NFRs
      1. Introducing NFRs
        1. Performance
        2. Scalability
        3. Availability
        4. Capacity
        5. Security
        6. Maintainability
        7. Manageability
        8. Reliability
        9. Extensibility
        10. Recovery
        11. Interoperability
        12. Usability
      2. Summary
    4. Taxonomy and Framework for NFRs
      1. Taxonomy of non-functional requirements
        1. Non-functional requirements framework
          1. NFR life cycle
            1. Analysis and planning for NFRs
            2. Architecture for NFR
            3. Engineering for NFRs
            4. Monitoring and improvements - NFRs
          2. NFRs KPI and KRA examples
            1. Performance
            2. Scalability
            3. Availability
            4. Capacity
            5. Security
            6. Maintainability
            7. Manageability
            8. Reliability
            9. Extensibility
            10. Recovery
            11. Interoperability
            12. Usability
      2. Summary
    5. Methodology Eliciting - Non Functional Requirements
      1. Methodology discovering non-functional requirements
        1. Stakeholder goals
        2. Legacy system restraints
        3. Market scan of software qualities
        4. Domain trends
        5. Requirements templates and catalogues
      2. Summary
    6. Solutions Addressing NFRs
      1. NFR modeling methodology
        1. Performance
          1. Key drivers
          2. Methodology
          3. Solution options
          4. Checklist
          5. KPIs
        2. Scalability
          1. Key drivers
          2. Methodology
          3. Solution options
          4. Checklist
          5. KPIs
        3. Availability
          1. Key drivers
          2. Methodology
          3. Solution options
          4. Checklist
          5. KPIs
        4. Capacity
          1. Key drivers
          2. Methodology
          3. Solution options
          4. Checklist
          5. KPIs
        5. Security
          1. Key drivers
          2. Methodology
          3. Solution options
          4. Checklist
          5. KPIs
        6. Maintainability
          1. Key drivers
          2. Methodology
          3. Solution options
          4. Checklist
          5. KPIs
        7. Manageability
          1. Key drivers
          2. Methodology
          3. Solution options
          4. Checklist
          5. KPIs
        8. Reliability
          1. Key drivers
          2. Methodology
          3. Solution options
          4. Checklist
          5. KPIs
        9. Extensibility
          1. Key drivers
          2. Methodology
          3. Solution options
          4. Checklist
          5. KPIs
        10. Recovery
          1. Key drivers
          2. Methodology
          3. Solution options
          4. Checklist
          5. KPIs
        11. Interoperability
          1. Key drivers
          2. Methodology
          3. Solution options
          4. Checklist
          5. KPIs
        12. Usability
          1. Key drivers
          2. Methodology
          3. Solution options
          4. Checklist
          5. KPIs
      2. Summary
    7. Architectural Patterns and its Impact on NFRs
      1. Core architecture patterns
        1. Component-based architecture
          1. Context
          2. Drivers
          3. Solution
            1. Impact on NFR's
        2. N-tier architecture
          1. Context
          2. Drivers
          3. Solution
            1. Impact on NFRs
        3. Message Bus
          1. Context
          2. Drivers
          3. Solution
            1. Impact on NFRs
        4. Service-oriented architecture
          1. Context
          2. Drivers
          3. Solution
            1. Impact on NFRs
      2. Business tier patterns
        1. Active/Passive clustering
          1. Context
          2. Drivers
          3. Solution
            1. Impact on NFRs
        2. Load-balancing architecture
          1. Context
          2. Drivers
          3. Solution
            1. Impact on NFRs
        3. Session failover
          1. Context
          2. Drivers
          3. Solution
            1. Impact on NFRs
        4. Resource pooling
          1. Context
          2. Drivers
          3. Solution
            1. Impact on NFRs
        5. Caching
          1. Context
          2. Drivers
          3. Solution
            1. Impact on NFRs
      3. Database tier patterns
        1. Data replication
          1. Context
          2. Drivers
          3. Solution
            1. Impact on NFRs
        2. Connection pooling
          1. Context
          2. Drivers
          3. Solution
            1. Impact on NFRs
        3. Reporting
          1. Context
          2. Drivers
          3. Solution
            1. Impact on NFRs
        4. Information security
          1. Context
          2. Drivers
          3. Solution
            1. Impact on NFRs
      4. Integration tier patterns
        1. Logging and exception management
          1. Context
          2. Drivers
          3. Solution
            1. Impact on NFRs
        2. Enterprise Monitoring and Management
          1. Context
          2. Drivers
          3. Solution
            1. Impact on NFRs
        3. Demilitarized zone
          1. Context
          2. Drivers
          3. Solution
            1. Impact on NFRs
      5. Summary
    8. Sizing, Measurement and Monitoring
      1. NFR - Sizing
      2. NFR - Analytical modeling
      3. NFR - Simulation
      4. Enterprise Monitoring and Management - EMM
        1. Challenges faced by the ASM teams:
        2. Monitoring landscape
        3. Functionality - dimensions
        4. End-user experience monitoring
          1. Real user monitoring:
          2. Synthetic
          3. Discovery, modeling, and display
          4. User defined transactions
          5. Component deep dive monitoring
          6. Application performance analytics
          7. Monitoring tools - managing the problem
        5. APM dashboard
        6. APM future roadmap
      5. Summary
    9. Understanding Pivotal NFRs and Closing Thoughts
      1. Pivotal NFRs
      2. Pivotal NFRs KPI and framework
      3. Pivotal NFR classification
        1. Integrity
          1. Infrastructure domain
          2. Business domain
          3. Application domain
          4. Data domain
          5. Infrastructure domain
        2. Business continuity
          1. Business domain
          2. Application domain
          3. Data domain
          4. Infrastructure domain
        3. Resilience
          1. Business domain
          2. Application domain
          3. Data domain
          4. Infrastructure domain
        4. Confidentiality
          1. Business domain
          2. Application domain
          3. Data domain
        5. Integratability
          1. Business domain
          2. Application domain
          3. Data domain
          4. Infrastructure domain
        6. Robustness
          1. Business domain
          2. Application domain
          3. Data domain
          4. Infrastructure domain
        7. Auditability
          1. Business domain
          2. Application domain
          3. Data domain
        8. Flexibility
          1. Business domain
          2. Application domain
          3. Data domain
          4. Infrastructure domain
        9. Portability
          1. Application domain
          2. Data domain
          3. Infrastructure domain
        10. Reusability
          1. Business domain
          2. Application domain
          3. Data domain
          4. Infrastructure domain
        11. Testability
          1. Business domain
          2. Application domain
          3. Data domain
          4. Infrastructure domain
        12. Accessibility
          1. Business domain
          2. Application domain
      4. Closing thoughts
        1. Audit and accountability
        2. Architecture reviews and risks
        3. Audit and business objectives
        4. Summary

    Product information

    • Title: Mastering Non-Functional Requirements
    • Author(s): Sameer Paradkar
    • Release date: May 2017
    • Publisher(s): Packt Publishing
    • ISBN: 9781788299237