Prompt file imported from parolkar/awesome-ai-driven-product-engineering (
.windsurf/workflows/generate-story.md). Copyright stays with the author.
Workflow for Generating User Story
User Story Fundamentals
A user story is a short description of functionality from a user's perspective. It represents valuable, small functionality for agile planning and prioritization.
Core Format:
As a [user/persona],
I want [capability/feature],
so that [benefit/value].
INVEST Model Checklist:
- Independent: Stands alone without dependencies
- Negotiable: Not rigid; details can be discussed
- Valuable: Delivers clear user benefit
- Estimable: Team can size the effort
- Small: Fits in single iteration
- Testable: Can be verified with clear criteria
Acceptance Criteria
Use Gherkin syntax (Given/When/Then) to define testable conditions:
Scenario: [Descriptive title]
Given [precondition/context]
When [user action]
Then [expected outcome]
Example:
As a mobile bank customer,
I want to see balance on my accounts,
So that I can make better informed decisions about my spending.
Scenario: Show balance after login
Given I have logged into the mobile banking app
When I navigate to the accounts page
Then I should see the balance for each of my accounts
Best Practices
- Focus on single feature - One incremental improvement per story
- User-centered perspective - Address real user needs
- Clear titles - Include specific user/persona
- Include business rationale - Always have a clear "so that"
- Define acceptance criteria - Outcomes, not implementations
- Keep stories small - Split if too complex
- Avoid technical details - Focus on what, not how
- Add supporting materials - Attach mockups or flow diagrams if helpful
- Use appropriate story type - Features for user functionality, Bugs for defects, Chores for technical tasks
Quick Checklist
- Clear persona identified
- Need and value clearly stated
- Meets INVEST criteria
- Acceptance criteria in Given/When/Then format
- No implementation details specified
- Appropriately sized
- Edge cases considered
- Additional context provided if needed
- Correct story type used