← Back to Projects
BA TOOLINGIn Progress

Automated User Story Generator

A template-driven user story creator that outputs Gherkin-formatted acceptance criteria — turning requirements into sprint-ready stories in seconds.

Business AnalysisAgileUser StoriesGherkinAutomation
Date2026-02-10
CategoryBusiness Analysis / Tooling
StatusIn Progress

Overview

Writing user stories is one of the most repetitive parts of a BA's workflow. The structure is always the same — persona, action, value, acceptance criteria — but every team reinvents the format. I built a tool that enforces a consistent template and automatically generates acceptance criteria from structured input.

The result: sprint-ready stories that developers, QA, and product can all read without ambiguity.

The Problem

User stories should be simple. In practice, they're a source of constant friction:

  • Inconsistent formats — every analyst writes stories differently, even on the same team
  • Missing acceptance criteria — stories ship to dev without clear definitions of "done"
  • Gherkin disconnect — QA teams need Given/When/Then scenarios but BAs write prose
  • Copy-paste templates — analysts maintain personal templates in Word, Confluence, or Notion and manually fill them in every time
  • Review cycles — poorly structured stories bounce back from grooming sessions, adding delay

How It Works

The generator takes structured input and produces complete, formatted user stories:

  1. Define the persona — select or create the user role (e.g., "Contact Center Agent", "System Administrator")
  2. Describe the action — what the user needs to do
  3. State the value — why this matters to the business or user
  4. Add conditions — specify the preconditions, triggers, and expected outcomes
  5. Generate — the tool outputs a formatted user story with acceptance criteria

Template Design

The template I designed enforces a structure that covers what most stories miss:

  • Story statement — "As a [persona], I want to [action] so that [value]"
  • Context — epic link, sprint target, priority, and dependencies
  • Acceptance criteria — structured using Given/When/Then logic
  • Edge cases — prompts for error states, boundary conditions, and negative scenarios
  • Definition of Done — checklist items beyond AC (documentation updated, tests written, etc.)

Acceptance Criteria Format

The acceptance criteria follow a structure rooted in Gherkin but written in a way that tells the full story. The general pattern:

Acceptance Criteria 1: <Given> the pre-existing condition.
Acceptance Criteria 2: <When> the action or trigger occurs.
Acceptance Criteria 3: <Then> something happens.

Additional AC's when needed...

Here's a real example:

Acceptance Criteria 1: A Company Rep is logged into the CRM and has a customer record open.

Acceptance Criteria 2: When the Company Rep updates the contact phone number the system saves the updated number.

Acceptance Criteria 3: Then the system shows a toast for error or confirmation.

Acceptance Criteria 4: The system also stores an audit log entry within the customer profile.

This follows the Gherkin format but with my own approach — structured to demonstrate a full understanding of the end-to-end process, not just the trigger and outcome. Each criterion is written so developers know exactly what to build and QA knows exactly what to test.

Key Features

  • Template enforcement — every story follows the same structure, eliminating format drift
  • Gherkin-based generation — acceptance criteria follow Given/When/Then logic in a readable, numbered format
  • Persona library — save and reuse personas across stories for consistency
  • Batch generation — create multiple related stories from a single feature description
  • Export options — output to Markdown, Jira-compatible format, or plain text
  • Edge case prompts — the tool asks about error states and boundary conditions so nothing gets missed

Why This Matters

In my experience working in Agile Scrum environments, the quality of user stories directly impacts sprint velocity. Ambiguous stories create rework. Missing acceptance criteria create defects. Inconsistent formats create confusion during grooming.

This tool doesn't replace the analyst's judgment — it enforces the discipline that makes stories actionable and removes the mechanical overhead of formatting.

What I Learned

  • The Gherkin format is deceptively simple — writing good Given/When/Then scenarios requires thinking about state, not just actions
  • Templates need to be opinionated enough to enforce quality but flexible enough to handle edge cases
  • Batch generation reveals gaps in feature thinking — if you can't generate stories for a feature, the requirements aren't clear enough
  • The best BA tools reduce time spent formatting and increase time spent thinking

Updates

2026-03-27 — Template engine and Gherkin output logic designed.