Course 302:
Developing Quality Requirements

(4 days)

 

Course Description

Requirements constitute the primary driving force for any project. The degree to which the requirements are defined is the degree to which the project is successful. This course specifies how to identify and document quality requirements so as to produce a quality product. Since requirements can be rendered in many different ways from classic requirements documents to more agile user story forms, the course presents techniques for developing and documenting all forms of requirements representation.

Learning Objectives

At the end of the course, the participant will know:

  • How to determine the difference between gathering information and generating requirements
  • How to define the real requirements in the format that is most useful to the developers
  • The importance of defining the problem before defining the requirements
  • How to develop requirements with a consistent process and produce requirements for any software development approach

Who Should Attend

Business analysts, requirements analysts, project managers, and anyone with an interest in a successful software development project.

Prerequisites

No specific prerequisites are assumed. A familiarity with information system concepts is recommended.


Course Outline

Unit 1: Understanding Requirements

  • What Are Requirements?
    • Requirements Analyst in the Center
    • Project, Product, and Process
    • The Challenge of Quality
    • Why Don’t We Get Good Requirements?
    • What Are Requirements?
    • Business, User, System Requirements
    • Requirements Aspects
  • Reason for Requirements
    • Relative Cost of Defect Fix
    • Linking Requirements to the Life Cycle
    • Why Organizations Don’t Get Good Requirements
  • Requirements Process
    • Software Engineering Process
    • Software Development Processes
    • Requirements in Agile Approaches to Software Development
    • General Requirements Process Overview

Unit 2: Gather Information to Identify Requirements

  • Prepare an Information Gathering Plan
    • Developing the Plan
    • The Primary Questions
    • What to Gather Information About
    • Sources of Information
  • Methods of Gathering Requirements
    • Forms of One-on-One Information Gathering
    • Requirements Sessions
    • Observation
    • Demonstration
    • Choosing an Approach
  • Information Gathering Process
  • Workshop: Information Gathering Plan

Unit 3: Identifying the Problem and Vision

  • Define the Problem
    • Determine the Problem
    • Components of the Problem
    • Basic Problem Definition
    • Identify the Real Problem
    • Establish the Product Vision
  • The Business Orientation
    • Justification
    • Product Risks
    • Business and Product Constraints
    • Context Analysis
  • Establish Product Scope
    • Functional Goals
    • The Product Scope Formula
    • Product Glossary
    • Deliver the Message
    • Agile Product Roadmaps

Unit 4: Gather the Information

  • Six Questions
  • What Information?
    • How to Gather Information
    • Focuses of Information
    • Identifying Non-Functional Requirements
    • Iterative Information Acquisition
  • Interviewing
    • Interviewing Levels of the Organization
    • The Interview
    • Success in Gathering Information
    • Gaining Interviewing Skill
    • Forms of Interviewing
    • Getting the Most Information
    • Categories of Questions
    • Interview Considerations
  • Information Gathering Tips and Techniques
    • Meetings
    • Brainstorming
    • Use Cases and Use Case Models
  • Recording the Information
    • Methods of Recording
    • CRC Card Model
    • Recording Prototype Information
  • Workshop: Developing Use Cases 

Unit 5: Requirements Analysis

  • Modeling and Diagramming Techniques
    • What Is Analysis?
    • Why Model?
    • Modeling the Problem and Solution
    • Model with a Purpose
    • Modeling Perspectives
  • Analysis Methods
    • Categorization
    • Scope Filter
    • Process Lists
    • Diagrams
  • Derive the Functional Requirements
    • Gap Analysis: Methods for Identifying the Gap
    • Scenarios
    • Gap Analysis Chart
    • Develop Scenarios
  • User Stories
    • The Purpose of User Stories
    • Write a User Story in Standard Format
    • Alternate Formats for User Stories
    • Epics and Themes
    • The Product Backlog and User Stories
  • Including the Non-Functional Requirements
    • Analyzing the Data for Non-Functional Requirements
    • Quality Issues
  • Prioritizing the Requirements
    • Need for Priority
    • The Priority Filter
    • Constraining the Design
    • Prioritization in Agile Approaches
  • Workshop: Modeling Requirements

Unit 6:  Guidelines to Valid Requirements

  • Requirements Format and Contents
  • Requirements Representation
    • Quality Requirements
    • General Content Recommendations
    • Structured English
    • Good and Valid Requirements
  • Requirements Documentation Guidelines
    • Writing Valid Requirements
    • Things to Avoid
    • Accuracy
    • Consistency
    • Precision
    • Completeness
    • Correctness
    • Traceability
    • Testability
    • Validation Filter

Unit 7: Requirements Communication and Management

  • Requirements Communication
    • Steps in Approval Process
    • Confirmation and Approval Levels
    • Using Use Case to Confirm Requirements
    • Communication with User Stories
    • Formal Approval
  • Inspecting Requirements
    • Review Processes
    • Inspection and Verification Methods
    • The Inspection Process
    • Checklist for Requirements Reviews
  • Requirements Confirmation and Approval
    • Confirmation
    • Approval process
    • Formal Approval
    • Negotiating Requirements
    • Requirements Confirmation and Approval in Agile Approaches
  • Requirements Management
    • Need for Requirements Management
    • The Traceability Matrix
    • Tracing the Requirements
    • Tracing to Use Cases
    • Change Management
    • Requirements Management in Agile Approaches

Unit 8: The Bottom Line

  • Develop a Quality Requirements Process
  • The Processes Reviewed
  • Ideas to Use
  • Where to Go for Additional Information

Please Contact Your ROI Representative to Discuss Course Tailoring!