Claude-Skills story-mapping

install
source · Clone the upstream repo
git clone https://github.com/borghei/Claude-Skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/borghei/Claude-Skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/project-management/execution/story-mapping" ~/.claude/skills/borghei-claude-skills-story-mapping && rm -rf "$T"
manifest: project-management/execution/story-mapping/SKILL.md
source content

User Story Mapping Expert

Overview

Visualize the user journey and translate strategy into prioritized, deliverable work using Jeff Patton's user story mapping technique. Story maps shift teams from feature-first thinking to flow-first thinking -- understanding the complete user experience before deciding what to build and in what order.

When to Use

  • MVP definition -- When you need to draw a clear line between "must ship" and "can wait."
  • Release planning -- When sequencing work across multiple releases or sprints.
  • Cross-team alignment -- When multiple teams need a shared understanding of the user journey.
  • Backlog reorganization -- When a flat backlog has lost context and priority clarity.
  • New product kickoff -- When starting from scratch and need to decompose a vision into work.

When NOT to Use

  • When work is purely technical infrastructure with no user journey (use technical spikes instead).
  • When the team already has a well-prioritized, context-rich backlog.
  • For single-feature work that doesn't span multiple user activities.

Story Map Anatomy

A story map has three layers arranged in a 2D grid:

                    USER JOURNEY (left to right) →
                    
    ┌──────────────────────────────────────────────────┐
    │  Activities    Activity 1    Activity 2    Act 3  │  ← Backbone
    ├──────────────────────────────────────────────────┤
    │  Steps         Step 1.1      Step 2.1     Step   │  ← Backbone
    │                Step 1.2      Step 2.2      3.1   │
    ├──────────────────────────────────────────────────┤
    │  Tasks         Task A        Task D       Task G │  ← Body
    │  (Release 1)   Task B        Task E              │  ← MVP line
    │  ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ │
    │  Tasks         Task C        Task F       Task H │  ← Body
    │  (Release 2)                                     │  ← Follow-up
    └──────────────────────────────────────────────────┘
    
    PRIORITY (top to bottom) ↓
LayerWhat It ContainsGranularity
ActivitiesHigh-level user goals (what are they trying to accomplish?)Epic-level
StepsSequential actions within each activityFeature-level
TasksSpecific implementation items for each stepStory-level

Key Principle: Flow First, Then Priority

  • Horizontal axis (left to right): The user's journey through time -- activities and steps in the order users experience them.
  • Vertical axis (top to bottom): Priority -- most critical tasks at the top, nice-to-haves at the bottom.
  • MVP line: A horizontal line drawn across the map separating "Release 1" from "Later."

Building a Story Map

Step 1: Define Who and What

ElementDescription
SegmentThe target user segment for this map
PersonaThe specific persona experiencing this journey
Narrative/JTBDThe job or goal the user is trying to accomplish
DecisionWhat this map should inform (MVP scope, release plan, sequencing)

Step 2: Map the Backbone (Activities)

Walk through the user's journey and identify 3-7 high-level activities:

#### Activities:
1. [Discover the product]
2. [Sign up and onboard]
3. [Complete core task]
4. [Review results]
5. [Share with team]

Tips:

  • Use active verbs ("Discover," "Configure," "Review") not nouns.
  • Keep to 3-7 activities -- more means you need to zoom out.
  • Arrange left to right in the order users experience them.

Step 3: Break Activities into Steps

For each activity, identify 3-5 sequential steps:

#### Steps for "Sign up and onboard":
- Step 1: Create account
- Step 2: Verify email
- Step 3: Set up profile
- Step 4: Complete tutorial
- Step 5: Invite team members

Step 4: Decompose Steps into Tasks

For each step, list specific implementation tasks:

#### Tasks for "Create account":
- Email/password registration
- Social login (Google, GitHub)
- SSO integration
- Terms acceptance
- Password strength validation

Step 5: Prioritize Vertically

Arrange tasks within each column from top (highest priority) to bottom (lowest):

  • Top: Must-have for the journey to work at all.
  • Middle: Important for a good experience.
  • Bottom: Nice-to-have, can defer.

Step 6: Draw Release Lines

Draw horizontal lines across the map to define releases:

═══════════════════════════ Release 1 (MVP) ═══════════
- Email/password registration
- Verify email
- Basic profile setup
- Core task (minimal)
- View results

═══════════════════════════ Release 2 ═══════════════════
- Social login
- Team invitations
- Advanced tutorial
- Share results
- Export results

═══════════════════════════ Release 3 (Polish) ══════════
- SSO integration
- Custom branding
- Advanced analytics
- API access

Story Map Template

## User Story Map

### Context
- **Segment:** [Target segment]
- **Persona:** [Persona name and key characteristics]
- **Narrative:** [The job or goal being mapped]
- **Decision:** [What this map informs]

### Backbone

#### Activities:
1. [Activity 1]
2. [Activity 2]
3. [Activity 3]
4. [Activity 4]
5. [Activity 5]

#### Steps:
**[Activity 1]:**
- Step 1: [Description]
- Step 2: [Description]
- Step 3: [Description]

**[Activity 2]:**
- Step 1: [Description]
- Step 2: [Description]
- Step 3: [Description]

[Continue for each activity]

#### Tasks:
**[Activity 1, Step 1]:**
- Task 1: [Description]
- Task 2: [Description]
- Task 3: [Description]

[Continue for each step]

### Release Slices

**Release 1 (MVP):**
- [Task list -- minimum viable journey]

**Release 2:**
- [Task list -- improved experience]

**Release 3:**
- [Task list -- full vision]

### Assumptions to Validate
- [Assumption 1]
- [Assumption 2]
- [Assumption 3]

### Risks and Dependencies
- [Risk or dependency 1]
- [Risk or dependency 2]

Common Story Map Patterns

Pattern 1: Walking Skeleton

Map the thinnest possible end-to-end journey first:

Activity 1 → Activity 2 → Activity 3 → Activity 4
    ↓             ↓             ↓             ↓
  1 task        1 task        1 task        1 task

One task per activity, proving the full flow works. Then add depth.

Pattern 2: Thick Slice

When one activity is the core value, go deep there first:

Activity 1 → Activity 2 → Activity 3 → Activity 4
    ↓             ↓             ↓             ↓
  1 task        5 tasks       1 task        1 task
                (core)

Pattern 3: Progressive Enhancement

Layer capabilities across releases:

Release 1:  Basic flow    (all activities, minimum tasks)
Release 2:  Error handling (edge cases, validation)
Release 3:  Power features (automation, customization)
Release 4:  Scale          (performance, enterprise)

Facilitation Guide

Running a Story Mapping Workshop

PhaseDurationActivity
Setup10 minDefine persona, narrative, and decision scope
Backbone20 minMap activities and steps (sticky notes on wall or Miro)
Body30 minDecompose into tasks (everyone contributes)
Prioritize15 minArrange vertically by priority
Slice15 minDraw release lines; debate MVP scope
Review10 minIdentify risks, dependencies, and assumptions

Total: ~100 minutes for a focused session.

Materials: Sticky notes (3 colors: activities, steps, tasks), markers, large wall or whiteboard, or Miro/FigJam for remote.

Key facilitation rules:

  • Keep each sticky note to 4-8 words.
  • Activities and steps first; resist jumping to tasks.
  • Everyone writes, not just the PM.
  • Debate the MVP line, not individual task priority.

Integration with Other Skills

  • Use
    job-stories/
    JTBD discovery canvas to define the narrative before mapping.
  • Feed Release 1 tasks into
    create-prd/
    for detailed requirements.
  • Use
    prioritization-frameworks/
    RICE scoring to prioritize within release slices.
  • Use
    brainstorm-okrs/
    to align release slices with quarterly objectives.
  • Convert tasks into user stories or job stories using
    job-stories/
    or
    wwas/
    .

Troubleshooting

ProblemLikely CauseResolution
Map has 10+ activitiesScope too broad; multiple journeys mapped as oneSplit into separate maps per persona or JTBD; each map should cover one narrative
Tasks are too vague ("make it work")Jumped to tasks without defining steps clearlyRevisit steps layer; ensure each step is a concrete user action
MVP line includes everythingTeam can't say no; fear of shipping incompleteApply the "walking skeleton" pattern -- what's the minimum journey that works?
Map doesn't match backlogStory map created once and never referencedPost map in team space; reference it during sprint planning and refinement
Remote workshop produces shallow mapDigital tools don't create the same energy as physical sticky notesUse breakout rooms for parallel step decomposition; time-box strictly
Activities are features, not user goalsFeature-first thinking; activities named after product featuresRewrite activities as user actions: "Configure dashboard" → "Understand my performance"

Success Criteria

  • Story map covers one persona and one narrative end-to-end
  • 3-7 activities spanning the complete user journey
  • Each activity has 3-5 observable steps
  • MVP line drawn with team consensus
  • Release 1 (MVP) is a complete walking skeleton -- every activity has at least one task
  • All tasks are independently deliverable (pass INVEST criteria)
  • Map reviewed and updated at sprint boundaries

Scope & Limitations

In Scope: User story map creation, backbone and body decomposition, release slice definition, MVP scoping, facilitation guidance, workshop planning, template and pattern library.

Out of Scope: Individual story writing and acceptance criteria (see

job-stories/
or agile-product-owner), technical architecture decisions, detailed effort estimation, sprint planning mechanics.

Important Caveats: Story maps are planning tools, not contracts. They should be updated as the team learns. A map created before building will always be wrong in details -- the value is in the shared understanding, not the artifact itself. Jeff Patton: "The map is not the territory; the conversation is the territory."

Integration Points

IntegrationDirectionWhat Flows
job-stories/
Receives fromJTBD discovery canvas defines the narrative for mapping
create-prd/
Feeds intoRelease 1 tasks inform PRD scope (Sections 7 and 8)
prioritization-frameworks/
ComplementsRICE scoring prioritizes within release slices
brainstorm-okrs/
ComplementsRelease slices align with quarterly OKR targets
outcome-roadmap/
Feeds intoRelease slices map to Now/Next/Later roadmap horizons
wwas/
Feeds intoTasks become WWAS backlog items with strategic context

References

  • Jeff Patton, User Story Mapping (2014)
  • Jeff Patton, "The New User Story Backlog Is a Map" (2005)
  • Inspired by Productside story mapping workshops