User Story

Create user stories with Mike Cohn format and Gherkin acceptance criteria. Use when turning user needs into development-ready work with clear

What Is This?

Overview

The User Story skill helps product managers, business analysts, and development teams create well-structured user stories that combine Mike Cohn's proven format with Gherkin-style acceptance criteria. This approach transforms vague user needs into precise, development-ready work items that both product and engineering teams can act on with confidence. The result is a shared understanding of what needs to be built, why it matters, and how success will be measured.

Mike Cohn's format follows the familiar "As a [user], I want [goal], so that [benefit]" structure, which keeps the focus on user value rather than technical implementation. Gherkin acceptance criteria extend this with "Given, When, Then" scenarios that define testable conditions, making it clear when a story is truly complete. Together, these two frameworks eliminate ambiguity and reduce the back-and-forth that slows down development cycles.

This skill is particularly valuable during sprint planning, backlog refinement, and discovery sessions where teams need to move quickly from a user insight to a work item that developers can estimate and implement without constant clarification.

Who Should Use This

  • Product managers who need to translate customer research and business requirements into actionable backlog items
  • Business analysts responsible for bridging the gap between stakeholder requests and technical specifications
  • Scrum masters and agile coaches who want to improve story quality and reduce rework during sprints
  • Software developers who want to write their own stories with clear acceptance criteria before handing off to QA
  • UX designers who need to document user flows and interaction requirements in a format the engineering team can consume
  • Technical leads who review stories before sprint commitment and need consistent, testable criteria

Why Use It?

Problems It Solves

  • Vague requirements that lead to misaligned implementations, forcing developers to make assumptions that result in rework
  • Missing acceptance criteria that make it impossible to determine when a story is actually done
  • Disconnected product and engineering teams who interpret the same requirement in different ways
  • Stories that focus on solutions rather than user outcomes, limiting the team's ability to find better technical approaches
  • Inconsistent story formats across a backlog that make estimation and prioritization unreliable

Core Highlights

  • Enforces Mike Cohn's "As a, I want, So that" structure to keep stories user-centered
  • Adds Gherkin "Given, When, Then" acceptance criteria for testable, unambiguous conditions
  • Produces stories that are ready for sprint planning without additional clarification sessions
  • Separates the what from the how, giving developers implementation flexibility
  • Creates a shared vocabulary between product, design, and engineering
  • Supports edge case documentation through multiple Gherkin scenarios per story
  • Reduces QA cycle time by defining expected behavior before development begins

How to Use It?

Basic Usage

A complete user story using this skill follows this structure:

User Story:
As a [type of user],
I want [to perform some action],
So that [I can achieve some goal or benefit].

Acceptance Criteria:

Scenario 1: [Descriptive scenario title]
  Given [the initial context or precondition]
  When [the user performs an action]
  Then [the expected outcome occurs]

Scenario 2: [Edge case or alternative path]
  Given [a different starting condition]
  When [the user performs an action]
  Then [the expected outcome for this case]

Specific Scenarios

For a login feature, the story might read: "As a returning customer, I want to log in with my email and password, so that I can access my account and order history." The acceptance criteria would then cover the happy path, an incorrect password attempt, and an account lockout condition as separate Gherkin scenarios.

For a notification preference feature, the story focuses on user control: "As a subscriber, I want to manage my email notification settings, so that I only receive messages relevant to my interests." Scenarios would cover enabling, disabling, and saving preferences with confirmation feedback.

Real-World Examples

A checkout flow story would include scenarios for successful payment, declined card handling, and session timeout during payment. Each scenario maps directly to a test case, reducing QA documentation overhead.

A search feature story would cover empty results, partial matches, and filter combinations as distinct scenarios, ensuring developers handle all states before the story is marked complete.

Important Notes

Requirements

  • A clear understanding of the target user or persona before writing the story
  • Access to user research, customer feedback, or product requirements as source material
  • Familiarity with the Gherkin syntax (Given, When, Then) to write valid acceptance criteria
  • Collaboration with at least one developer or QA engineer to validate that criteria are testable