Requirement and Business Analysis

Learning Objectives

Upon completion of this workshop you will be able to:

  • Describe the key elements of an effective requirements management process using the CMM's Requirements Management Key Process Area
  • Define/evaluate your own process
  • Specify, document and evaluate requirements effectively
  • Prioritise requirements
  • Establish requirements traceability throughout the lifecycle
  • Manage changes to requirements
  • Maintain a consistent set of plans and work products throughout the lifecycle
  • Operate a continuously improving requirements management process

Topics Covered

Introduction

  • Perspectives on requirements
  • Who needs requirements?
  • Who needs a requirements management process?

Concepts and Elements of a Requirements Management process

  • Where do requirements come from?
  • When does requirements management take place?
  • What should requirements management achieve?
  • Requirements baselines
  • Agreeing requirements with customer
  • Negotiated commitments
  • Managing changes to requirements
  • Consistency and traceability

Using the CMM to help define and assess a requirements management process

  • Terminology
  • Key practices to implement the process
  • Key practices to institutionalise the process
  • Sample process descriptions
  • Steps to implement and evaluate a requirements management process

Specifying Individual Requirements

  • Using a template to define each requirement
  • Tips for writing for writing requirement statements

Documenting Requirements

  • Using Requirements Specification Template to document requirements
  • Quality criteria for documenting requirements
  • Sample Template:
    • Purpose
    • References
    • Reading Guide
    • General description
    • Software function
    • User Characteristics
    • Software constraints
    • Software future perspectives
    • Development Requirements
    • Prerequisites
    • Non-technical requirements, e.g. delivery timescales
    • Functional requirements
    • Nonfunctional requirements
    • User Interface requirements
    • External interface requirements
    • Usability requirements
    • Communications interface
    • Appendices

Verifying/Validating Requirements

  • Applying Requirements quality measures
  • Using checklists to validate requirements
  • Conducting Peer reviews/Formal inspections
  • Using Requirements test cases
  • Using low fidelity prototypes to validate requirements

Analyzing and Prioritising Requirements

  • Structuring requirements using affinity diagrams
  • Prioritizing requirements
  • Preference matrix
  • Ratings
  • Resolving conflicts on requirements needs and priorities

Requirements traceability

  • Policy
  • Techniques

Managing Requirements Changes

  • Who can raise a change request?
  • Where is the request deposited?
  • What information is required?
  • Who reviews requirement for scope, clarity and completeness?
  • Cost/benefit analysis
  • Business/technical impact and risk analysis
  • Approving the request (Software Change Control Board)
  • Communication and negotiated commitments
  • Prioritising and scheduling the request - updating the project plan and other dependent work products
  • Tracking and status

Requirements Metrics

  • Process measures
  • Requirements measures

Summary and implementation planning

  • A number of exercises will be performed during the workshop

Additional topics

Overview of requirements elicitation methods

  • Proactive and Reactive methods
  • Interviews, surveys and prototypes