Home | Sign in | Products | Services | Demonstration | Brochures | Templates | Newsletters | News Room

People, Performance, Portfolios, Processes, Products and Projects
 
Requirements Management

Requirements Management

What

Requirements Management is the Process of managing the initial definition and then the ongoing maintenance of the project's requirements. Requirements Management is sometimes known as "Requirements Definition".

"Requirements" are different to "Scope":

  1. Scope refers to the project and includes the Application System requirements.

  2. Scope includes other things.

  3. (Application System) requirements may include manual processes.

  4. (Application System) requirements may include functionality not being delivered in the current project lifecycle phase or "Release".

  5. (Application System) requirements may include functionality not deliverable by the purchased software package (they are still requirements, but may become out of Scope because of this fact).

Process Diagram

Requirements Management consists of the following major Procedures:

Why

You need to manage "scope creep" (also known as "featuritis") to ensure you do not exceed your timebox.

When and Where

This technique is used throughout the following project lifecycle phases:

  1. Analysis Stage - Enterprise Analysis

  2. Analysis Stage - Business Area Analysis

  3. Analysis Stage - System Definition

  4. Infrastructure

  5. Market Scan

  6. Initial Investigation

  7. Detailed Evaluation

  8. Trial

  9. Business Case

  10. Design

  11. Development

How

Record all of the Functions early (however roughly) at the start of a project. This helps everyone associated with the project to get a good feel for the scope of the Application System.

  1. Business Staff can see that all of their requirements are being addressed (and sometimes they also surprise themselves at how complex their operations really are).

  2. The Project Co-ordinator can use them to calculate development estimates leading to delivery times and costings.

  3. Technical Staff can use the completed Function Decomposition to quickly develop program structure charts. The resultant program structure charts constitute the hierarchical and logical program module design for the processing required for each Function.

Define all scope inclusions.

Define all scope exclusions.

Ownership

Managing Expectations (Customers, vendors, staff, Stakeholders, each Business Area).

Managing Conflicts between different expectations.

Managing Conflicts between different requirements.

Impacts of requirements.

Requirements Traceability

Managing Contracts for embedded requirements.

Review Statement of Work (SOW) for embedded requirements.

Implicit Requirements
  1. Aesthetics

  2. Personal biases

  3. Personal preferences

  4. Hardware and system software platform

  5. Legacy Application Systems (for common "Look and Feel", and interfacing)

  6. Skills (Business Staff and Technical Staff)

  7. Experience

  8. Perceived career path

  9. Design choices

  10. Project Budget

  11. Assumptions

  12. Perceptions
Generic Requirements
  1. Features

  2. Functions

  3. Benefits

  4. Data

  5. Processes
Negotiating
  1. What is included

  2. What is excluded

  3. What is deferred

  4. Cost/Benefit Analysis

  5. Functional Priorities

  6. What then How
Basic Problem of Defining Requirements With Words
  1. Inconsistencies

  2. Incompleteness

  3. Natural language

  4. Meaning of words

  5. Ambiguities

  6. Implications

  7. Inferences

Be careful with the following:

  1. May/Can

  2. Must/Should/Could/Shall

Functional Requirements

Functional requirements are defined by the following:

  1. Function Decomposition

  2. Logical Data Model

  3. Functions/Data Matrix

Non-Functional Requirements

Non-Functional Requirements are defined by the following:

  1. Non-Functional Requirements

  2. What Makes Us Special

  3. Business Process Management

Quality Requirements

Quality requirements are normally defined in the "Non-Functional Requirements" sections of the documents lists under "Recording" (below).

A check list of quality requirements can be found under "Quality Definition".

Constraints

Constrains include:

  1. Deadlines

  2. Project Budget

  3. Platform (IT Infrastructure)

  4. Staffing

  5. Enterprise policy

  6. IT Department Processes

  7. Methodology

  8. Legal/Contracts

  9. Performance

  10. Capacity

Added Value Requirements

Added Value requirements include:

  1. Benefits Acquisition

  2. Cost/Benefit Analysis

  3. Added value chain

  4. Primary and secondary benefits

  5. Stakeholder buy-in

  6. Meeting Business Objectives

  7. "Why is the Client undertaking this project?"

  8. Desired outcome

The major Requirements Management Procedures are:

Concepts and Themes

The following important Concepts and Themes apply to the Requirements Management process:

  1. What then How

  2. Future (Not Current) Requirements

  3. Technology Independence

  4. Tool Independence

  5. Joint Ownership and Responsibility

  6. Timing - 1 elapsed month maximum

  7. Only the Best Team Members Will Do

  8. Project Team structure, composition as well as Roles and Responsibilities is extremely important.

  9. Every project is an Organisation Change Management project. Technology just happens to be the driver in many instances.

Elicit Requirements Procedure

You need to help Business Staff to articulate their requirements.

Use Joint Application Design (JAD) workshops because they are a more effective way to elicit requirements than Interviewing.

During the elicitation process, you need to Manage the Expectations of the people who are defining their requirements.

Beware of Business Staff presenting "needs" which are:

  1. Problems they have

  2. Solutions

  3. How the solution will work

Identify critical requirements versus desirable requirements.

The following activities are always performed in all Phases of the Analysis Stage:

  1. Perform Organisation Review (Organisation Design)

  2. Identify Project Scope (Scope)

  3. Moment of Truth Activities

  4. Perform Business Process Management (Business Process Management)

  5. Identify System User Roles

  6. Develop Function Decomposition (Function Decomposition)

  7. Develop Logical Data Model (Data Modelling)

  8. Develop Functions/Data Matrix (Functions/Data Matrix)

  9. Develop Non-Functional Requirements (Non-Functional Requirements)

  10. Develop What Makes Us Special (What Makes Us Special)

Each of these follows a Breadth Then Depth approach.

This can best be shown by the following diagram:

The sequence of these procedures within the overall Requirements Management process is important.

  1. Defining Moment of Truth Activities first gets the Project Team members thinking about Processes.

  2. Identifying System User Roles before Functions gets the Project Team members thinking about Functions ready for Function Decomposition.

  3. Functions gets the Project Team members thinking about data ready for Data Modelling.

  4. Doing Non-Functional Requirements last allows you to cleanup the "left overs".

  5. The above process is iterative, as shown by the backchannels (dotted lines) which indicate amendments.

Record Requirements Procedure

A project's functional requirements are normally defined explicitly (in increasing levels of depth) by the contents of:

  1. Enterprise Analysis Report

  2. Business Area Analysis Report

  3. System Definition Report

  4. Design Report

A project's Non-Functional Requirements are normally defined explicitly in a separate document.

Requirements are also defined by the deliverables which are to be produced by the project.

Requirements are also defined by any Contract which govern the conduct of the project.

Break up paragraphs so that there is only one requirement per paragraph.

Number every paragraph in every document so that a requirement can be traced backwards through each of the above documents.

Number every paragraph in every document so that Test Cases and Test Scripts can be traced back to specific requirements.

Validate Requirements Procedure

See "Validation and Verification Strategy" for details.

Estimate Size and Impact Procedure

See "Count Function Points and Impact Assessment" for details.

Plan Delivery Procedure

See "Planning Your Project" for details.

Manage Scope Changes Procedure

See "Scope Change Management" for details.

Trace Delivery Procedure

See "Requirements Traceability" for details.

Accept Delivery Procedure

See "Acceptance Testing and Testing" for details.

In all Test Cases and Test Scripts reference the original specific requirement in the source document (see "Recording" above for details).

Where Used

Requirements are used in the following places:

Project Lifecycle Phase Why Used
Package Acquisition Used as input to define Request For Information (RFI), Macro Evaluation Criteria and Micro Evaluation Criteria so package can be evaluated against these and ensure that no requirements are missed.
Business Case Used to size and then cost the effort required to Develop the Application System (usually by Counting Function Points).
Development Becomes "The Specification" of what to develop.
Customisation Assists in defining the gap between what is in the package and what needs to be developed (ie, Customised).
Testing All Test Cases and Test Scripts reference the original specific requirement in the source document (see "Recording" above for details).

Sayings

  1. "Producing software form a specification is like walking on water... it's easier if its frozen."

  2. "There is no such thing as a shortcut in software development, period."

Scaling

Also See

Requirements Management is one of the significant Processes that exist throughout PMMentor (PMM). To print a "Handout Pack" on this Process, create and print a title page and then click on the "Print" button (to print this topic to act as a Table of Contents) and then click on each of the following topics in turn. When the topic is displayed, click on the "Print" button, then click on the "Back" button to return to this topic and choose the next topic to print.

Acceptance Testing

Acquisition

Analysis

Breadth Then Depth

Business Area Analysis Phase

Capacity Management Plan

Capacity Planning

Change Control Board (CCB)

Change Request Form

Change Request Register

Common Processes and Cycle Times

Configuration Change Register

Configuration Management

Configuration Manager

Contracts

Corporate Good

Count Function Points

Current Configuration Record

Data Modelling

Decision Trees/Tables

Design Phase

Develop Function Decomposition

Develop Functions/Data Matrix

Develop Logical Data Model

Develop Non-Functional Requirements

Develop What Makes Us Special

Development Phase

Embrace Change

Enterprise Analysis Phase

Facilitate Change Impacts

Function Analysis

Function Decomposition

Function Point Counting

Functions/Data Matrix

Generic Data Subjects

High-Level Project Scope Definition

Identify System User Roles

Impact Assessment and Organisation Change Management Plan

Impact Assessment Group (IAG)

Joint Application Design (JAD)

Logical Data Model

Maintain High-Level Project Scope Definition

Managing Conflicts

Managing Contracts

Managing Expectations

Negotiating

Non-Functional Requirements

Organisation Change Management

Perform Business Process Management

Perform Organisation Review

Perform Performance Tuning

Performance Tuning

Product Breakdown Structure (PBS)

Project Plan

Requirements Traceability

Requirements Traceability Verification Matrix (RTVM)

Scope

Scope Change Management

Scope Change Management Plan

Significant Variations Register

Statement of Work (SOW)

System Definition Phase

Triage

Under Promise/Over Deliver

Use Case

Validation and Verification Strategy

What Makes Us Special


 About Us | Contact Us | Other Sites | Site Map | Technologies | What's New | Partners | Careers