user-story-fundamentals
0
总安装量
2
周安装量
安装命令
npx skills add https://github.com/flpbalada/my-opencode-config --skill user-story-fundamentals
Agent 安装分布
opencode
2
claude-code
2
amp
1
kimi-cli
1
codex
1
Skill 文档
User Story Fundamentals – Capturing User-Centered Requirements
A structured framework for capturing product requirements from the user’s perspective. User stories help teams understand who needs a feature, what they want to accomplish, and why it matters.
When to Use This Skill
- Writing backlog items
- Defining feature requirements
- Prioritizing development work
- Communicating with development teams
- Breaking down epics into actionable work
- Ensuring user focus in product decisions
User Story Format
THE STANDARD TEMPLATE
"As a [type of user],
I want [some goal],
so that [some reason/benefit]."
Components:
âââââââââââââââââââââââââââââââââââââââââââââââââââââââ
â WHO: The user persona or role â
â WHAT: The desired functionality or goal â
â WHY: The business value or user benefit â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââ
This format shifts focus from WRITING about requirements
to TALKING about them, with users at the center.
Core Components
WHO – User Persona
Specificity Spectrum:
Generic (avoid):
âââ "As a user..."
âââ "As a customer..."
Better:
âââ "As a first-time visitor..."
âââ "As a returning customer..."
âââ "As an admin user..."
âââ "As a mobile user..."
Best (with job context):
âââ "As a marketing manager who needs weekly reports..."
âââ "As a parent shopping for school supplies..."
âââ "As a developer debugging production issues..."
âââ "As a sales rep preparing for a client meeting..."
WHAT – Desired Functionality
Focus on GOALS, not IMPLEMENTATION:
â "I want a blue button in the header"
(prescriptive, limits solutions)
â "I want to quickly access my saved items"
(goal-focused, enables creativity)
â "I want a REST API endpoint"
(technical implementation)
â "I want to integrate my data with external tools"
(user goal, flexible implementation)
WHY – Business Value
The "So That" Connection:
This part explains:
âââ What pain it solves
âââ What value it creates
âââ Why this matters to the user
âââ How it connects to business goals
Without "so that":
"As a user, I want to filter search results"
â Why? What's the actual need?
With "so that":
"As a user, I want to filter search results
so that I can find relevant items faster
when browsing large catalogs"
â Clear value, enables better solutions
INVEST Criteria
QUALITY CHECKLIST FOR USER STORIES
I - Independent
â Can be developed and delivered separately
â No tight coupling to other stories
â
N - Negotiable
â Details open to discussion
â Not a rigid contract
â
V - Valuable
â Delivers real value to user or business
â Not just technical tasks
â
E - Estimable
â Team can estimate effort
â Clear enough to size
â
S - Small
â Fits within single sprint
â If too big, split it
â
T - Testable
â Has clear acceptance criteria
â Can verify when complete
Acceptance Criteria
Definition
ACCEPTANCE CRITERIA (AC)
Purpose: Define what makes the story "done"
Format: Specific, testable conditions
Example Story:
"As a user, I want to reset my password via email
so that I can regain access if I forget it"
Acceptance Criteria:
â¡ User can request reset from login page
â¡ Email sent within 60 seconds of request
â¡ Reset link expires after 24 hours
â¡ Link works only once
â¡ Password must meet security requirements
â¡ User receives confirmation after successful reset
Writing Good AC
| Characteristic | Example |
|---|---|
| Specific | “Within 60 seconds” not “quickly” |
| Testable | “Email contains reset link” – can verify |
| Outcome-focused | “User can access account” not “system sends” |
| Complete | Covers happy path AND edge cases |
Prioritization Framework
RICE Scoring
RICE = (Reach à Impact à Confidence) / Effort
Reach: How many users affected per time period?
(100 users/month, 1000 users/quarter)
Impact: How much will it move the needle?
3 = Massive, 2 = High, 1 = Medium, 0.5 = Low, 0.25 = Minimal
Confidence: How sure are we about estimates?
100% = High, 80% = Medium, 50% = Low
Effort: Person-months of work
(0.5, 1, 2, 3...)
Higher RICE score = Higher priority
MoSCoW Method
CATEGORIZATION FOR RELEASE PLANNING
MUST Have (Non-negotiable)
âââ Critical for release
âââ Legal/compliance requirements
âââ Core value proposition
SHOULD Have (Important)
âââ High value but not critical
âââ Workarounds exist
âââ Strong user demand
COULD Have (Nice to have)
âââ Desired but not necessary
âââ Easy wins if time permits
âââ Lower user impact
WON'T Have (Not this time)
âââ Explicitly out of scope
âââ Future consideration
âââ Documented for later
Story Splitting Techniques
When to Split
SPLIT IF:
âââ Can't complete in one sprint
âââ Story points > 13 (or team max)
âââ Multiple distinct user values
âââ Contains "and" connecting features
âââ Too many acceptance criteria
Splitting Methods
1. BY WORKFLOW STEPS
Original: "User can complete purchase"
Split:
âââ User can add items to cart
âââ User can enter shipping info
âââ User can enter payment info
âââ User can confirm and place order
2. BY USER TYPE
Original: "User can view dashboard"
Split:
âââ Admin can view full dashboard
âââ Manager can view team metrics
âââ User can view personal stats
3. BY OPERATIONS (CRUD)
Original: "User can manage contacts"
Split:
âââ User can create contact
âââ User can view contact details
âââ User can edit contact
âââ User can delete contact
4. BY DATA VARIATIONS
Original: "User can import data"
Split:
âââ User can import CSV files
âââ User can import Excel files
âââ User can import from API
5. BY ACCEPTANCE CRITERIA
Original: "User can search products"
Split:
âââ User can basic keyword search
âââ User can filter by category
âââ User can sort results
âââ User can save search
Definition of Done vs. Acceptance Criteria
DEFINITION OF DONE (DoD) ACCEPTANCE CRITERIA (AC)
ââââââââââââââââââââââââ ââââââââââââââââââââââââ
Universal checklist Story-specific conditions
Same for all stories Unique per story
Quality standard Functional requirements
DoD Examples: AC Examples:
â¡ Code reviewed â¡ User can X
â¡ Tests written â¡ System does Y
â¡ Documentation updated â¡ Data validates as Z
â¡ No critical bugs â¡ Performance meets N
Story Template
## User Story
**ID:** [PROJ-123] **Title:** [Brief descriptive title]
### Story
As a [specific user type], I want [goal/desire], so that [benefit/value].
### Acceptance Criteria
- [ ] [Specific, testable condition 1]
- [ ] [Specific, testable condition 2]
- [ ] [Specific, testable condition 3]
### Notes
- [Additional context]
- [Technical considerations]
- [Dependencies]
### Attachments
- [Link to designs]
- [Link to research]
### Estimation
- **Story Points:** [X]
- **Priority:** [High/Medium/Low]
- **Sprint:** [Sprint N]
Real-World Examples
E-commerce
Story: Password-less Login
As a returning customer,
I want to login using a magic link sent to my email,
so that I can access my account without remembering passwords.
Acceptance Criteria:
â¡ User enters email on login page
â¡ "Send magic link" option available
â¡ Email received within 30 seconds
â¡ Link valid for 15 minutes
â¡ One-click login from email
â¡ User lands on their dashboard after login
â¡ Link cannot be reused after login
SaaS Product
Story: Team Invitation
As an account admin,
I want to invite team members via email,
so that I can onboard my team without manual account creation.
Acceptance Criteria:
â¡ Admin can enter multiple email addresses
â¡ Invitation email clearly explains next steps
â¡ Invited user can set their own password
â¡ Admin can see pending invitations
â¡ Admin can revoke pending invitations
â¡ Duplicate email addresses are prevented
â¡ Admin can set role during invitation
Common Mistakes
ANTI-PATTERNS TO AVOID
â Implementation as story
"Create database table for users"
â Not user value, technical task
â Missing "so that"
"As a user, I want to search"
â Why? What problem does this solve?
â Too vague
"As a user, I want a better experience"
â What specifically? Not actionable
â Too large
"As a user, I want full account management"
â Multiple features, needs splitting
â Solution prescribed
"As a user, I want a dropdown menu"
â Describes UI, not user goal
Integration with Other Methods
| Method | Combined Use |
|---|---|
| Theme-Epic-Story | Stories fit within epic hierarchy |
| Jobs to Be Done | Stories address user jobs |
| Five Whys | Find root cause behind story need |
| Hypothesis Tree | Stories as hypotheses to test |
| Kanban | Stories flow through board stages |
Quick Reference
STORY WRITING CHECKLIST
Format:
â¡ Follows "As a... I want... so that..." format
â¡ User type is specific and meaningful
â¡ Goal is user-focused, not technical
â¡ Benefit clearly stated
Quality (INVEST):
â¡ Independent - can be built alone
â¡ Negotiable - details discussable
â¡ Valuable - delivers real value
â¡ Estimable - team can size it
â¡ Small - fits in single sprint
â¡ Testable - has clear AC
Acceptance Criteria:
â¡ Specific and measurable
â¡ Testable (can verify pass/fail)
â¡ Covers main scenarios
â¡ Includes edge cases
â¡ Outcome-focused