Getting and Writing IT Requirements in a Lean and Agile World
Business Analysis Techniques for Discovering User Stories, Features, and Gherkin (Given-When-Then) Scenarios
Author: Tom and Angela Hathaway
Pages: 348 (paperback edition)
Format: Paperback and eBook
Publication Date: July 15, 2019
Also available as ecourse and covered in an instructor-led course (live and online classroom).
What is this book about?
Communicate Business Needs in an Agile (e.g. Scrum) or Lean (e.g. Kanban) Environment
Problem solvers are in demand in every organization, large and small, from a Mom and Pop shop to the federal government. Increase your confidence and your value to organizations by improving your ability to analyze, extract, express, and discuss business needs in formats supported by Agile, Lean, and DevOps.
The single largest challenge facing organizations around the world is how to leverage their Information Technology to gain competitive advantage. This is not about how to program the devices; it is figuring out what the devices should do. The skills needed to identify and define the best IT solutions are invaluable for every role in the organization. These skills can propel you from the mail room to the boardroom by making your organization more effective and more profitable.
- are tasked with defining business needs for a product or existing software,
- need to prove that a digital solution works,
- want to expand your User Story and requirements discovery toolkit, or
- are interested in becoming a Business Analyst,
this book presents invaluable ideas that you can steal. The future looks bright for those who embrace Lean concepts and are prepared to engage with the business community to ensure the success of Agile initiatives.
What You Will Learn
Learn Step by Step When and How to Define Lean / Agile Requirements
Agile, Lean, DevOps, and Continuous Delivery do not change the need for good business analysis. In this book, you will learn how the new software development philosophies influence the discovery, expression, and analysis of business needs. We will cover User Stories, Features, and Quality Requirements (a.k.a. Non-functional Requirements – NFR). User Story Splitting and Feature Drill-down transform business needs into technology solutions.
Acceptance Tests (Scenarios, Scenario Outlines, and Examples) have become a critical part of many Lean development approaches. To support this new testing paradigm, you will also learn how to identify and optimize Scenarios, Scenario Outlines, and Examples in GIVEN-WHEN-THEN format (Gherkin) that are the bases for Acceptance Test Driven Development (ATDD) and Behavior Driven Development (BDD).
This book presents concrete approaches that take you from day one of a change initiative to the ongoing acceptance testing in a continuous delivery environment. The authors introduce novel and innovative ideas that augment tried-and-true techniques for:
- discovering and capturing what your stakeholders need,
- writing and refining the needs as the work progresses, and
- developing scenarios to verify that the software does what it should.
Approaches that proved their value in conventional settings have been redefined to ferret out and eliminate waste (a pillar of the Lean philosophy). Those approaches are fine-tuned and perfected to support the Lean and Agile movement that defines current software development. In addition, the book is chock-full of examples and exercises that allow you to confirm your understanding of the presented ideas.
Who will benefit from reading this book?
How organizations develop and deliver working software has changed significantly in recent years. Because the change was greatest in the developer community, many books and courses justifiably target that group. There is, however, an overlooked group of people essential to the development of software-as-an-asset that have been neglected. Many distinct roles or job titles in the business community perform business needs analysis for digital solutions. They include:
- Product Owners
- Business Analysts
- Requirements Engineers
- Test Developers
- Business- and Customer-side Team Members
- Agile Team Members
- Subject Matter Experts (SME)
- Project Leaders and Managers
- Systems Analysts and Designers
- AND “anyone wearing the business analysis hat”, meaning anyone responsible for defining a future IT solution
Table of Contents
I. Requirements in a Lean and Agile World
- Agile and Lean Philosophies
- Agile and Scrum
- Lean and Kanban
- DevOps and Continuous Delivery: New Kids on the Block
- Testing in a Lean and Agile World
- WagiLeanFall or WaterKanScrumBanFall?
- Capturing Business Needs in Lean / Agile
- Traditional Software Requirements
- Agile or Lean Requirements Concepts
- User Stories Are Stakeholder Requirements
- The User Story Paradigm
- A Well-Formed User Story Template
- INVEST in Your User Stories
- User Stories Define the Business Need
II. Story and Feature Discovery in Lean and Agile
- Common Elicitation Techniques and Challenges
- Asking Questions
- Analyzing Documents
- Using Models and Examples
- Tracking Progress with a Question file
- What Is a Question File?Using the Question File
- Identifying Stakeholders
- Basic Stakeholder Discovery
- Using an Org Chart to Identify Internal Stakeholders
- Revisiting Types of Stakeholders
- Exercise: Stakeholder Identification
- Using Cynefin to Deal with Uncertainty
- Cynefin Is a Framework for Quantifying Uncertainty
- Simple Problems with Obvious Solutions
- Life Gets Complicated
- The Situation Becomes Complex
- How to Use Cynefin to Minimize Risk?
- Chaos Reigns Supreme
- Exercise: Cynefin Applied to Proposed Initiatives
- Finding Stories Using Business Problem Analysis
- Defining Business Problems
- Exercise: Defining Business Problems
- Problem Analysis Reveals User Stories, Epics, and Features
- Exercise: Lean Problem Symptom Reduction Applied
III. Conversations Are the Core of Lean and Agile
- Engaging with the Business Community
- Exercise: What Makes a Good Requirements Elicitor?
- Tips and Tricks for Effective Conversations
- Preparing and Planning
- Planning Productive Conversations
- Exercise: Comparing Types of Requirements Meetings
- User Story Conversations and Stakeholder Interactions
- Minimize Misunderstandings
- Nonverbal Communication
- Dealing with People
- Exercise: Problem People or People Problems
- Listening Techniques
- Prepare to End on a High Note
- Tips for Email and Chats
IV. Lean Business Analysis: User Stories & Features
- Timing of Analysis in a Typical Agile Lifecycle
- Just in Time (JIT) vs. Just in Case (JIC)
- Release Planning
- Sprint Planning
- Ongoing during Development
- Preparing User Stories for Release and Sprint Planning
- Who Needs Clarity, Anyway?
- What Are Ambiguity and Subjectivity?
- Revealing and Removing Ambiguity
- Ensuring a Common Understanding
- Exercise: Using Out-of-Box Thinking to Reduce Ambiguity
- 5 Common User Story Splitting Techniques
- Splitting to Reduce Complexity
- Splitting Stories by Data Types
- Splitting Stories by Business Rules
- Splitting Based on Workflow or Events
- Splitting by Use Case Path
V. User Story Decomp / Feature Drill-down
- What Are Solution Requirements
- Finding Functional Features and Quality Requirements
- Capturing Functional Features
- Exercise: Functional Story Decomp
- Discovering Data
- Exercise: Data Decomposition
- Defining Data Accuracy and Algorithms
- Non-functional Requirements, Qualities & Constraints
- Types of Non-functional Requirements
- Splitting Stories with NFR’s
VI. Lean Acceptance Testing: A User Perspective
- ATDD/BDD Explained
- Acceptance Criteria as Given-When-Then Scenarios
- Defining a Gherkin BACKGROUND
- Scenario Outlines
- Exercise: Expressing Scenarios in GWT Format
- Engineering AGILE Test Data
- Minimizing Scenarios and Examples
- Exercise: Engineering Test Data
VII. Lean Analysis to Find Gherkin Test Scenarios
- From User Stories to Scenarios
- Step 1: Use the “WHY” in the User Story
- Step 2: Use the “WHAT” in the User Story
- Step 3: Use the Qualifiers in the User Story
- Business Rules Identify Scenarios
- Problems and Symptoms Are Great Test Scenarios
- From Use Cases to Scenarios
- What is a Use Case?
- Getting Positive and Negative Scenarios
- Exercise: Discovering Scenarios in Use Cases
- Find Scenarios Using Acquire, Abolish, Affirm, Avoid
- Functional Features Reveal Scenarios
- Scenarios for Non-functional or Quality Requirements
- Writing Scenarios for NFRs
- Exercise: Testing NFRs
VIII. Implementing Lean and Agile Practices
About the Authors
Tom and Angela’s Story
Like all good IT stories, theirs started on a project many years ago. Tom was the super techie, Angela the super SME. They fought their way through the 3-year development of a new policy maintenance system for an insurance company.
They vehemently disagreed on many aspects, but in the process discovered a fundamental truth about IT projects. The business community (Angela) should decide on the business needs while the technical team’s (Tom)’s job was to make the technology deliver what the business needed. Talk about a revolutionary idea! All that was left was learning how to communicate with each other without bloodshed to make the project a resounding success. Mission accomplished.
They decided this epiphany was so important that the world needed to know about it. As a result, they made it their mission (and their passion) to share this ground-breaking concept with the rest of the world.
To achieve that lofty goal, they married and began the mission that still defines their life. After over 30 years of living and working together 24x7x365, they are still wildly enthusiastic about helping the victims of technology learn how to ask for and get the IT solutions they need to do their jobs better. More importantly, they are more enthusiastically in love with each other than ever before!
How they Can Help
Tom and Angela love to share their experience, knowledge, and expertise with the world. They have taught thousands of students in face-to-face training, published 7 business analysis how-to books on Amazon.com, authored 9 courses on Udemy.com with over 20K students, and enriched the global community with 1.5 million views on their YouTube channel.
Their company, BA-EXPERTS, focuses exclusively on business analysis for anyone wearing the BA hat™. Business needs analysis for IT has become a critical skill for most business professionals regardless of job title (Business Analyst, Product Owner, SME, Project Manager, etc.). In a Lean and Agile world, knowing how to define business needs in the form of User Stories, Features, and other forms of requirements will open many doors.
BA-EXPERTS’ value proposition is enabling anyone wearing the BA hat™ (SMEs and Techies) to have access to high quality training materials and performance support. Please call 702-625-0146 or email Tom.Hathaway@ba-experts.com for a free consultation.