Among the leading causes of project failure are unclear or undefined requirements. It is crucial that everyone associated with a project understands how to gather and manage requirements to ensure a successful project outcome.
This course focuses on the processes of requirements gathering, communication and prioritization in an Agile environment. It is geared towards providing critical information to those who serve in the role of product owners and to those who support the work of fulfilling requirements as development team members. You will cover visual modeling and tips on how to engage stakeholders. You will understand how to differentiate the levels of requirements and how to gather the right level at the right time. This course is designed to be interactive. Participants will learn how to read into the full extent of what stakeholders are saying, so no requirements are overlooked.
Requirements of excessive size or quantity can also hinder a project’s realization. You will learn how to break down hefty requirements and prioritize so no essential requirements are missed.
No project can succeed without properly defined and prioritized requirements. Be sure you know how to gather and manage these vital components of the project process.
- Address requirements challenges from the perspective of the product owner
- Apply principles of the Kanban and Lean methodologies to Agile project work
- Analyze stakeholders and their role in project requirements
- Define the Product vision and the customer’s “Conditions of Satisfaction”
- How to maintain and continually prioritize requirements as the Product Owner
- Use facilitation and elicitation techniques for Requirements Gathering
- Identify non-functional/technical requirements
- Describe when a requirement is “done”
- Explain the User Acceptance tests and effective process modeling
- Use business value points and dependency for prioritization
- Brainstorm and consolidate features of requirements as well as break down large requirements
Overview of Agile and Agile Requirements
Agile Value Proposition
When to Use Agile
Agile & Waterfall
Traditional and Agile Project Constraints
Challenges with the Waterfall Approach
The Agile Manifesto
The Agile Project Lifecycle
Engaging Through the Lifecycle
Traditional Roles and Responsibilities vs. Agile Ones
What is Waste?
Agile Approach to Requirements
Six Levels of Agile Planning
Work Items in Agile
What Do Customers Really Want?
How Value Flows and is Broken Down
What Is the Vision?
Delivering the Vision
Cut Scope Creep by Modeling Early!
Conditions of Satisfaction and Definition of Done
Knowing When to Stop
Sample Conditions of Satisfaction
User Roles and Personas
Steps for Identifying User Roles
Creating a Backlog
Building a Product Roadmap
Slices of Functionality
Using Business Value Buckets
Agile Requirements Principles
Understanding the Problem Domain
Traditional vs. Agile Requirements
The Levels of Requirements
Creating a Roadmap: Generating Themes and Epics
High-Level Use Case Diagrams
User Interface Flow
Stakeholder Management: Identifying the Right Stakeholders
Agile Requirements Elicitation Techniques
Dealing with Technical Debt
Causes of Technical Debt
What Is a User Story?
What Makes a Correct User Story?
User Story Structure
User Story's Definition of Done
Definition of Done and Kanban Boards
Why Does DoD Matter so Much?
Generating User Stories
How Do Stories Appear?
Slicing Large User Stories
Breaking Down the Epics
Sample Compound Stories
Sample Complex Stories
Techniques for Slicing Stories
CRUD – Function-based Breakdown
Business Rule Breakdown
User- or Platform-based Breakdown
Technical User Stories and Spike Stories
What is a Technical User Story?
Where is the User?
Technical Stories and Technical Debt
Track User Stories
Burn Downs and Burn Ups
Deep Dive (Testing and Acceptance Criteria)
Knowing When to Stop
Where Are the Story Details?
Who Does What?
“Team Members” Over “Functional Roles
A New Approach to Quality Management
Agile Quality Management
Principles for Successful Testing
Agile Testing Quadrants
Identifying Acceptance Tests
Types of Testing
Example: User Story Testing
Example: Regression Testing
Example: Integration Testing
Examples of Other Tests
Sample Acceptance Test Cases
The “Traceability” Question
Test-Driven Development (TDD)
Behavior-Driven Development (BDD)