design-protocol 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +225 -0
- package/agents/dp-researcher.md +239 -0
- package/agents/dp-verifier.md +207 -0
- package/bin/install.js +464 -0
- package/commands/dp-back.md +221 -0
- package/commands/dp-discuss.md +257 -0
- package/commands/dp-execute.md +513 -0
- package/commands/dp-journey.md +85 -0
- package/commands/dp-progress.md +178 -0
- package/commands/dp-roadmap.md +83 -0
- package/commands/dp-skip.md +186 -0
- package/commands/dp-start.md +510 -0
- package/commands/dp-storytell.md +94 -0
- package/commands/dp-verify.md +207 -0
- package/package.json +59 -0
- package/skills/dp-color/SKILL.md +214 -0
- package/skills/dp-color/export_tokens.py +297 -0
- package/skills/dp-color/references/apca-contrast.md +87 -0
- package/skills/dp-color/references/hue-emotions.md +109 -0
- package/skills/dp-color/references/oklch-gamut.md +79 -0
- package/skills/dp-color/references/pitfalls.md +171 -0
- package/skills/dp-color/references/scale-patterns.md +206 -0
- package/skills/dp-color/references/tool-workflows.md +200 -0
- package/skills/dp-discovery/SKILL.md +480 -0
- package/skills/dp-eng_review/SKILL.md +471 -0
- package/skills/dp-eng_review/references/code-review-checklist.md +385 -0
- package/skills/dp-eng_review/references/react-patterns.md +512 -0
- package/skills/dp-eng_review/references/shadcn-patterns.md +510 -0
- package/skills/dp-eng_review/references/tailwind-conventions.md +351 -0
- package/skills/dp-journey/SKILL.md +682 -0
- package/skills/dp-journey/references/journey-types.md +97 -0
- package/skills/dp-journey/references/map-structures.md +177 -0
- package/skills/dp-journey/references/omnichannel-patterns.md +208 -0
- package/skills/dp-journey/references/research-methods.md +125 -0
- package/skills/dp-prd/SKILL.md +201 -0
- package/skills/dp-prd/references/claude-code-spec.md +107 -0
- package/skills/dp-prd/references/interview-questions.md +158 -0
- package/skills/dp-prd/references/section-templates.md +231 -0
- package/skills/dp-research/SKILL.md +540 -0
- package/skills/dp-research/references/facilitation-guide.md +291 -0
- package/skills/dp-research/references/interview-guide-template.md +190 -0
- package/skills/dp-research/references/method-selection.md +195 -0
- package/skills/dp-research/references/question-writing.md +244 -0
- package/skills/dp-research/references/research-report-template.md +363 -0
- package/skills/dp-research/references/synthesis-methods.md +289 -0
- package/skills/dp-research/references/usability-test-template.md +260 -0
- package/skills/dp-roadmap/SKILL.md +648 -0
- package/skills/dp-roadmap/references/prioritization-frameworks.md +312 -0
- package/skills/dp-roadmap/references/roadmap-structures.md +179 -0
- package/skills/dp-roadmap/references/roadmap-workshops.md +264 -0
- package/skills/dp-roadmap/references/theme-development.md +168 -0
- package/skills/dp-storytell/SKILL.md +645 -0
- package/skills/dp-storytell/references/audience-playbooks.md +260 -0
- package/skills/dp-storytell/references/content-type-templates.md +310 -0
- package/skills/dp-storytell/references/delivery-tactics.md +228 -0
- package/skills/dp-storytell/references/narrative-frameworks.md +259 -0
- package/skills/dp-ui/SKILL.md +503 -0
- package/skills/dp-ui/references/b2b-enterprise-patterns.md +319 -0
- package/skills/dp-ui/references/data-visualization.md +304 -0
- package/skills/dp-ui/references/visual-design-principles.md +237 -0
- package/skills/dp-ux/SKILL.md +414 -0
- package/skills/dp-ux/references/accessibility-checklist.md +128 -0
- package/skills/dp-ux/references/product-excellence.md +149 -0
- package/skills/dp-ux/references/usability-principles.md +140 -0
- package/skills/dp-ux/references/ux-patterns.md +221 -0
- package/templates/config.json +55 -0
- package/templates/context.md +96 -0
- package/templates/project.md +83 -0
- package/templates/requirements.md +137 -0
- package/templates/roadmap.md +168 -0
- package/templates/state.md +107 -0
|
@@ -0,0 +1,648 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: dp-roadmap
|
|
3
|
+
description: >
|
|
4
|
+
Build theme-based UX roadmaps using NNGroup's methodology (Sarah Gibbons). Trigger for
|
|
5
|
+
"/dp:roadmap", UX roadmap, design roadmap, product roadmap, theme roadmap, now/next/future
|
|
6
|
+
roadmap, roadmap workshop, prioritization session, quarterly planning. Optional Phase 1.5c of
|
|
7
|
+
DP workflow. Produces strategic, living roadmap artifacts organized by themes (problems to
|
|
8
|
+
solve) rather than features (things to build), with Now/Next/Future time horizons and explicit
|
|
9
|
+
beneficiary/need/business-objective framing.
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# UX Roadmapping
|
|
13
|
+
|
|
14
|
+
Build a strategic, living artifact that aligns, prioritizes, and communicates UX (or product) work across a cross-functional team. Based on Sarah Gibbons' NNGroup framework — problem-oriented, not feature-oriented; outcome-driven, not output-driven.
|
|
15
|
+
|
|
16
|
+
> **Roadmap (NNGroup, Gibbons):** *A strategic, living artifact that aligns, prioritizes, and communicates a UX team's future work and problems to solve.*
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## When to Use This Skill
|
|
21
|
+
|
|
22
|
+
Run `/dp:roadmap` when you need to:
|
|
23
|
+
|
|
24
|
+
- **Plan quarterly or annual UX work** at a team or org level
|
|
25
|
+
- **Align cross-functional stakeholders** around a shared set of problems
|
|
26
|
+
- **Convert journey-map opportunities** into prioritized, time-bounded work
|
|
27
|
+
- **Communicate direction to leadership** without making feature commitments
|
|
28
|
+
- **Replace a feature-based roadmap** with a problem-based one
|
|
29
|
+
- **Re-plan after a major strategic shift**
|
|
30
|
+
|
|
31
|
+
**Don't use this skill for:**
|
|
32
|
+
- Sprint planning or backlog grooming — roadmaps are strategic, not tactical
|
|
33
|
+
- Feature specs or requirements — use `/dp:prd`
|
|
34
|
+
- Engineering roadmaps (tech debt, infrastructure) — this is UX/product-oriented
|
|
35
|
+
- Individual feature design — use `/dp:ux` + `/dp:ui`
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## DP Workflow Integration
|
|
40
|
+
|
|
41
|
+
This skill is an optional sub-phase (Phase 1.5c) placed between Discovery and UX, parallel to PRD and Journey mapping. It can also run standalone for pure planning work.
|
|
42
|
+
|
|
43
|
+
### Detecting Workflow Mode
|
|
44
|
+
|
|
45
|
+
At the start of any `/dp:roadmap` invocation:
|
|
46
|
+
|
|
47
|
+
1. **Check for `.design/config.json`**
|
|
48
|
+
2. **If found** (workflow mode):
|
|
49
|
+
- Load `.design/config.json` for settings
|
|
50
|
+
- Load `.design/phases/DISCOVERY.md` for problem context
|
|
51
|
+
- Load `.design/phases/JOURNEY-MAP.md` if exists (opportunities feed themes)
|
|
52
|
+
- Load any research artifacts under `.design/research/` if any (findings feed themes) — this is where `/dp:research` writes, not under `phases/`
|
|
53
|
+
- Load `.design/phases/PRD.md` if exists (check alignment)
|
|
54
|
+
- Check for `.design/phases/01.5c-CONTEXT.md` if `/dp:discuss` was run first
|
|
55
|
+
- Announce: "Running roadmap generation as part of DP workflow..."
|
|
56
|
+
3. **If not found** (standalone mode):
|
|
57
|
+
- Ask: "Is this a new roadmap from scratch, or updating an existing one?"
|
|
58
|
+
- Ask: "What level — team, product line, or whole org?"
|
|
59
|
+
|
|
60
|
+
### Pre-fill Rules (Workflow Mode)
|
|
61
|
+
|
|
62
|
+
| Field | Pre-fill Source | Action |
|
|
63
|
+
|---|---|---|
|
|
64
|
+
| High-level goals | DISCOVERY.md problem statement + business goals | Confirm + refine |
|
|
65
|
+
| Beneficiaries | DISCOVERY.md personas | Confirm |
|
|
66
|
+
| Needs (themes seed) | JOURNEY-MAP.md opportunities + RESEARCH findings | Review + expand |
|
|
67
|
+
| Business objectives | DISCOVERY.md success metrics | Expand into measurable outcomes |
|
|
68
|
+
| Product / experience areas | DISCOVERY.md existing landscape | Confirm |
|
|
69
|
+
|
|
70
|
+
**Workflow mode summary:**
|
|
71
|
+
```
|
|
72
|
+
DP WORKFLOW ACTIVE
|
|
73
|
+
────────────────────────────────────────────────────────────────────────────────
|
|
74
|
+
Project: [name]
|
|
75
|
+
Phase: 1.5c (UX Roadmapping — optional)
|
|
76
|
+
Previous: Discovery (complete) [+ Journey (complete) if run]
|
|
77
|
+
Next: UX (Phase 2)
|
|
78
|
+
|
|
79
|
+
Inputs loaded:
|
|
80
|
+
Discovery ✓ Journey ◐ Research ◐ PRD ◐
|
|
81
|
+
Themes seed count: [N opportunities identified]
|
|
82
|
+
|
|
83
|
+
I'll walk you through the 6-step process: Goals → Inputs → Themes → Prioritize → Visualize → Revisit.
|
|
84
|
+
────────────────────────────────────────────────────────────────────────────────
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
## Core Concepts (Vocabulary)
|
|
90
|
+
|
|
91
|
+
These terms are used precisely throughout the skill. Based on Gibbons' UX Roadmaps Vocabulary.
|
|
92
|
+
|
|
93
|
+
### The artifact and the practice
|
|
94
|
+
- **Roadmap (noun)** — a strategic, living artifact that aligns, prioritizes, and communicates future work and problems to solve
|
|
95
|
+
- **Roadmapping (verb)** — the process of identifying, aligning, and prioritizing a team's future work
|
|
96
|
+
|
|
97
|
+
### The three audiences
|
|
98
|
+
Every roadmap has three audiences. Design for all three.
|
|
99
|
+
|
|
100
|
+
| Role | Who | Relationship to roadmap |
|
|
101
|
+
|---|---|---|
|
|
102
|
+
| **Creator** | Owner / Manager | Authors and leads creation; accountable for quality |
|
|
103
|
+
| **Contributor** | Peer / team member | Contributes to and delivers the work |
|
|
104
|
+
| **Consumer** | Stakeholder / partner / customer | Reads and uses the roadmap; doesn't directly create or deliver it |
|
|
105
|
+
|
|
106
|
+
### The context dimension (framing)
|
|
107
|
+
Every roadmap has these framing fields so any reader can understand it:
|
|
108
|
+
- **Title** — the product, team, or portfolio the roadmap covers
|
|
109
|
+
- **Roadmap Owner** — the named creator (team or person)
|
|
110
|
+
- **Date** — when it was created or last updated
|
|
111
|
+
- **High-Level Goals** — the broader company/org strategy the roadmap serves
|
|
112
|
+
|
|
113
|
+
### Time horizons
|
|
114
|
+
NNGroup's canonical time-horizon model:
|
|
115
|
+
|
|
116
|
+
| Horizon | Definition | Specificity |
|
|
117
|
+
|---|---|---|
|
|
118
|
+
| **Completed** | Work just previously delivered (shown for context) | Concrete |
|
|
119
|
+
| **Now** | Work in progress or to be completed imminently | Well-defined, specific |
|
|
120
|
+
| **Next** | Near-future work starting in the next ~2 quarters | Medium specificity |
|
|
121
|
+
| **Future** | Work 6+ months away | Ambiguous, most likely to change |
|
|
122
|
+
| **Future++** | Potential future work — parking-lot or idea pool | Hypothesis-level |
|
|
123
|
+
|
|
124
|
+
**Critical rule:** specificity decreases with distance. Treat "Future" as direction, not commitment.
|
|
125
|
+
|
|
126
|
+
### The 9 theme components (primary + secondary)
|
|
127
|
+
Every theme on the roadmap can have these attributes:
|
|
128
|
+
|
|
129
|
+
**Primary (required):**
|
|
130
|
+
- **Theme** — a bundle of future UX work representing an area of focus, initiative, or problem to solve
|
|
131
|
+
- **Beneficiary** — the recipient of the value (customer, end user, buyer, internal user)
|
|
132
|
+
- **Need** — the problem being solved (the purpose of the work)
|
|
133
|
+
- **Business Objective** — the outcome from the business POV (new insight, user growth, engagement, discovery ease, revenue)
|
|
134
|
+
|
|
135
|
+
**Secondary (add as needed):**
|
|
136
|
+
- **Subtheme** — specifics: sub-goals, specific personas, pre-validated solutions, or discrete features already tested
|
|
137
|
+
- **Ownership (who)** — the person or team who will complete the work
|
|
138
|
+
- **Ownership (what)** — at a high level, the kind of work required
|
|
139
|
+
- **Product / Experience Area** — the area the work will touch
|
|
140
|
+
- **Confidence** — informal assessment of likely impact and demonstrated need (High / Medium / Low)
|
|
141
|
+
- **Disclaimers** — requirements or risks associated with the theme
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
145
|
+
## Feature-Based vs Theme-Based Roadmaps
|
|
146
|
+
|
|
147
|
+
This is the central distinction in NNGroup's framework.
|
|
148
|
+
|
|
149
|
+
| Dimension | Feature-based (traditional) | Theme-based (NNGroup recommended) |
|
|
150
|
+
|---|---|---|
|
|
151
|
+
| Primary unit | A feature to ship | A problem to solve |
|
|
152
|
+
| Orientation | Output | Outcome |
|
|
153
|
+
| Communication | "We will ship X by Q3" | "We will improve Y for beneficiary Z" |
|
|
154
|
+
| Flexibility | Locks in solutions early | Preserves solution space |
|
|
155
|
+
| Stakeholder effect | Creates commitment debt | Creates alignment on *why* |
|
|
156
|
+
| Works when | Solutions are already validated | Solutions are still being discovered |
|
|
157
|
+
|
|
158
|
+
**Default:** this skill produces theme-based roadmaps. Feature-level specificity belongs in the "Now" column (or in a PRD), not across the whole horizon.
|
|
159
|
+
|
|
160
|
+
---
|
|
161
|
+
|
|
162
|
+
## Four Roadmap Types (Gibbons)
|
|
163
|
+
|
|
164
|
+
Pick one format at the start. Can be mixed but discuss tradeoffs first.
|
|
165
|
+
|
|
166
|
+
### 1. Now / Next / Future (theme-based)
|
|
167
|
+
The canonical NNGroup format. Three time columns × theme rows.
|
|
168
|
+
|
|
169
|
+
**Use when:** Communicating direction across a cross-functional audience, especially when timelines are uncertain.
|
|
170
|
+
|
|
171
|
+
### 2. Outcome-based
|
|
172
|
+
Organized by outcome metrics (e.g., "Reduce onboarding drop-off 20%"). Themes nest under outcomes.
|
|
173
|
+
|
|
174
|
+
**Use when:** The org has clear outcome targets and wants to tie work to measurable shifts.
|
|
175
|
+
|
|
176
|
+
### 3. Theme-based (without horizons)
|
|
177
|
+
Just themes ranked by priority, no time columns. Used when the team commits to themes but doesn't pre-allocate timing.
|
|
178
|
+
|
|
179
|
+
**Use when:** The team's velocity is highly variable or timing can't be predicted.
|
|
180
|
+
|
|
181
|
+
### 4. Lean / low-fidelity
|
|
182
|
+
A stripped-down sticky-note version. Used in early-stage workshops or when the roadmap is a living conversation, not a document.
|
|
183
|
+
|
|
184
|
+
**Use when:** Roadmapping is happening in a workshop and polish would slow alignment.
|
|
185
|
+
|
|
186
|
+
---
|
|
187
|
+
|
|
188
|
+
## The Six-Step Process (Gibbons)
|
|
189
|
+
|
|
190
|
+
The skill walks users through these six steps. Pre-workshop vs workshop vs post-workshop split indicated.
|
|
191
|
+
|
|
192
|
+
### Step 1 — Establish Goals (Pre)
|
|
193
|
+
- Confirm roadmap type (from the four above)
|
|
194
|
+
- Confirm audience mix (creator / contributor / consumer — who will consume this?)
|
|
195
|
+
- Define high-level goals this roadmap will serve
|
|
196
|
+
- Define scope (product, team, portfolio)
|
|
197
|
+
|
|
198
|
+
### Step 2 — Gather Inputs (Pre)
|
|
199
|
+
Collect raw material from:
|
|
200
|
+
- Research artifacts (interviews, usability tests, diary studies)
|
|
201
|
+
- Journey maps + their opportunities
|
|
202
|
+
- Analytics / quantitative signals
|
|
203
|
+
- Support/CS data (tickets, NPS comments)
|
|
204
|
+
- Stakeholder interviews (sales, marketing, leadership perspective)
|
|
205
|
+
- Existing PRDs / specs
|
|
206
|
+
- Competitive signals
|
|
207
|
+
|
|
208
|
+
**In workflow mode:** auto-load from `.design/phases/`.
|
|
209
|
+
|
|
210
|
+
### Step 3 — Create Themes (Workshop)
|
|
211
|
+
- Individual post-up of problems observed in the inputs
|
|
212
|
+
- Small-group convergence and theme naming
|
|
213
|
+
- Large-group affinity diagramming
|
|
214
|
+
- Name each theme using the pattern: *"For [beneficiary], [need] so that [business objective]"*
|
|
215
|
+
- Draft Beneficiary / Need / Business Objective per theme
|
|
216
|
+
|
|
217
|
+
### Step 4 — Prioritize (Workshop)
|
|
218
|
+
- Define prioritization criteria (see Prioritization Frameworks below)
|
|
219
|
+
- Score themes
|
|
220
|
+
- Place themes on the Now / Next / Future horizon
|
|
221
|
+
- Capture Confidence level per theme
|
|
222
|
+
- Note Disclaimers (risks, dependencies, open questions)
|
|
223
|
+
|
|
224
|
+
### Step 5 — Visualize & Share (Post)
|
|
225
|
+
- Produce the final artifact in a format appropriate to the Consumer audience
|
|
226
|
+
- Distribute via the org's channels (wiki, Miro, Figma, deck)
|
|
227
|
+
- Hold a read-out session for stakeholders
|
|
228
|
+
|
|
229
|
+
### Step 6 — Revisit (Post)
|
|
230
|
+
- Set a review cadence (typically monthly or quarterly)
|
|
231
|
+
- Define triggers for off-cycle updates (major strategy shift, research finding, incident)
|
|
232
|
+
- Assign the Roadmap Owner responsibility for the refresh
|
|
233
|
+
|
|
234
|
+
---
|
|
235
|
+
|
|
236
|
+
## Workshop Formats
|
|
237
|
+
|
|
238
|
+
The skill supports two NNGroup workshop structures. Pick based on how much time and research is available.
|
|
239
|
+
|
|
240
|
+
### Format A — Single 3-Hour Workshop
|
|
241
|
+
Assumes inputs are already gathered. Good when research exists.
|
|
242
|
+
|
|
243
|
+
| Time | Activity |
|
|
244
|
+
|---|---|
|
|
245
|
+
| 25 min | Introduction — icebreaker + "Roadmap hopes & fears" exercise |
|
|
246
|
+
| 15 min | Read-out — present context and input-collection methods |
|
|
247
|
+
| 45 min | Distill themes — small groups read inputs, individual post-up, converge, name themes, playback |
|
|
248
|
+
| 20 min | Break |
|
|
249
|
+
| 30 min | Affinity diagramming — large group converges cluster insights |
|
|
250
|
+
| 45 min | Prioritization — criteria, scoring, playback |
|
|
251
|
+
|
|
252
|
+
**Post-workshop:** visualize and share within 48 hours.
|
|
253
|
+
|
|
254
|
+
### Format B — Two Workshops + Research
|
|
255
|
+
Better when inputs are thin and more research is needed.
|
|
256
|
+
|
|
257
|
+
**Workshop 1 (1 hour):**
|
|
258
|
+
| Time | Activity |
|
|
259
|
+
|---|---|
|
|
260
|
+
| 5 min | Intro + roadmap definition |
|
|
261
|
+
| 15 min | Hopes & fears — individual then cluster |
|
|
262
|
+
| 30 min | Strategy collection from stakeholders, small groups identify insights + cluster |
|
|
263
|
+
| 10 min | Open questions — flag research gaps |
|
|
264
|
+
|
|
265
|
+
**Between workshops:** research team closes open questions (competitive, user, stakeholder interviews).
|
|
266
|
+
|
|
267
|
+
**Workshop 2 (2 hours):**
|
|
268
|
+
| Time | Activity |
|
|
269
|
+
|---|---|
|
|
270
|
+
| 15 min | Intro + research recap |
|
|
271
|
+
| 30 min | Distill themes — individual post-up, converge, playback |
|
|
272
|
+
| 15 min | Break |
|
|
273
|
+
| 30 min | Affinity diagramming |
|
|
274
|
+
| 30 min | Prioritization |
|
|
275
|
+
|
|
276
|
+
---
|
|
277
|
+
|
|
278
|
+
## Writing Good Themes
|
|
279
|
+
|
|
280
|
+
A theme should read as a problem statement with a beneficiary and a desired outcome — not as a feature list.
|
|
281
|
+
|
|
282
|
+
### The pattern
|
|
283
|
+
> *"For [beneficiary], [need] so that [business objective]."*
|
|
284
|
+
|
|
285
|
+
### Examples
|
|
286
|
+
|
|
287
|
+
| Bad (feature-based) | Good (theme-based) |
|
|
288
|
+
|---|---|
|
|
289
|
+
| Build a new onboarding wizard | For first-time customers, reduce time-to-first-value so that trial-to-paid conversion increases |
|
|
290
|
+
| Redesign checkout | For returning shoppers, remove friction in checkout so that cart-abandonment drops |
|
|
291
|
+
| Add SSO | For IT buyers, meet enterprise auth requirements so that deals over $50k don't stall |
|
|
292
|
+
| Improve search | For knowledge-base users, surface relevant help earlier so that support contact rate decreases |
|
|
293
|
+
|
|
294
|
+
### Good theme tests
|
|
295
|
+
- Can you state the beneficiary in concrete terms?
|
|
296
|
+
- Can you state the need without naming a solution?
|
|
297
|
+
- Can you state the business objective as a measurable shift?
|
|
298
|
+
- Does the theme survive the "what else could solve this?" question? (If it reduces to one solution, it's a feature masquerading as a theme)
|
|
299
|
+
|
|
300
|
+
---
|
|
301
|
+
|
|
302
|
+
## Prioritization Frameworks
|
|
303
|
+
|
|
304
|
+
Pick one framework per roadmap. The skill explains each and helps the user choose.
|
|
305
|
+
|
|
306
|
+
### RICE (Intercom, Sean McBride)
|
|
307
|
+
Formula: **(Reach × Impact × Confidence) ÷ Effort**
|
|
308
|
+
- Reach: how many users affected per quarter (absolute number)
|
|
309
|
+
- Impact: per-user effect (3 = massive, 2 = high, 1 = medium, 0.5 = low, 0.25 = minimal)
|
|
310
|
+
- Confidence: how sure are we? (100% / 80% / 50%)
|
|
311
|
+
- Effort: person-months
|
|
312
|
+
- **Use when:** team has reasonable data on reach and impact
|
|
313
|
+
|
|
314
|
+
### ICE (Sean Ellis)
|
|
315
|
+
Formula: **Impact × Confidence × Ease** (all 1-10)
|
|
316
|
+
- Simpler than RICE, less rigor
|
|
317
|
+
- **Use when:** speed matters more than precision (early stage, workshops)
|
|
318
|
+
|
|
319
|
+
### MoSCoW
|
|
320
|
+
Must / Should / Could / Won't (this cycle)
|
|
321
|
+
- **Use when:** scope negotiation with stakeholders, not comparing alternatives
|
|
322
|
+
|
|
323
|
+
### Value vs Effort (2×2)
|
|
324
|
+
Plot each theme on a 2×2 matrix: high/low value × high/low effort. Quick wins = high value × low effort.
|
|
325
|
+
- **Use when:** early in workshops when data is thin and you need visual alignment fast
|
|
326
|
+
|
|
327
|
+
### Kano Model
|
|
328
|
+
Basic (expected), Performance (satisfaction scales with investment), Excitement (delighters), Indifferent, Reverse
|
|
329
|
+
- **Use when:** deciding between "improve existing" and "add new" across a portfolio
|
|
330
|
+
|
|
331
|
+
### Opportunity Scoring (Ulwick / JTBD)
|
|
332
|
+
Opportunity = Importance + max(Importance − Satisfaction, 0)
|
|
333
|
+
Survey users on importance of outcomes and satisfaction with current state. Largest opportunity = most important *and* most underserved.
|
|
334
|
+
- **Use when:** you have quantitative JTBD research
|
|
335
|
+
|
|
336
|
+
### Framework selection guide
|
|
337
|
+
| Situation | Framework |
|
|
338
|
+
|---|---|
|
|
339
|
+
| Lots of data, need precision | RICE |
|
|
340
|
+
| Fast consensus in a workshop | ICE or Value/Effort |
|
|
341
|
+
| Scope negotiation with leadership | MoSCoW |
|
|
342
|
+
| Product strategy (new vs existing) | Kano |
|
|
343
|
+
| JTBD research available | Opportunity Scoring |
|
|
344
|
+
|
|
345
|
+
---
|
|
346
|
+
|
|
347
|
+
## Common Anti-Patterns
|
|
348
|
+
|
|
349
|
+
The skill actively guards against these:
|
|
350
|
+
|
|
351
|
+
1. **Feature list dressed up as themes** — "Build X, ship Y, launch Z" is not a roadmap; it's a backlog
|
|
352
|
+
2. **No beneficiary named** — themes without a clear user/customer tend to serve the org, not the user
|
|
353
|
+
3. **All themes in "Now"** — signals inability to defer or prioritize; every roadmap needs a distribution across horizons
|
|
354
|
+
4. **Missing business objectives** — themes without outcomes can't be evaluated for success
|
|
355
|
+
5. **Commitment creep** — stakeholders treat "Future" themes as commitments; the roadmap should explicitly disclaim this
|
|
356
|
+
6. **Set-and-forget** — no review cadence = stale roadmap in 3 months
|
|
357
|
+
7. **Designed for only one audience** — creator-only view misses consumer needs (and vice versa)
|
|
358
|
+
8. **No prioritization rationale** — if you can't explain *why* A is before B, the roadmap won't survive its first pushback
|
|
359
|
+
9. **Confusing a UX roadmap with a product roadmap with a release plan** — different artifacts, different audiences, different purposes
|
|
360
|
+
10. **Skipping confidence levels** — treating all themes with the same certainty misleads consumers
|
|
361
|
+
|
|
362
|
+
---
|
|
363
|
+
|
|
364
|
+
## Output Structure (Workflow Mode)
|
|
365
|
+
|
|
366
|
+
When in workflow mode, write to `.design/phases/ROADMAP.md`:
|
|
367
|
+
|
|
368
|
+
```yaml
|
|
369
|
+
---
|
|
370
|
+
phase: roadmap
|
|
371
|
+
skill: dp-roadmap
|
|
372
|
+
roadmap_type: [now_next_future | outcome_based | theme_based | lean]
|
|
373
|
+
completed: YYYY-MM-DDTHH:MM:SSZ
|
|
374
|
+
owner: [role / person]
|
|
375
|
+
scope: [team / product / portfolio]
|
|
376
|
+
horizon: [e.g., Q2–Q4 2026]
|
|
377
|
+
themes_count: N
|
|
378
|
+
prioritization_framework: [RICE | ICE | MoSCoW | Value/Effort | Kano | Opportunity Scoring]
|
|
379
|
+
inputs_used:
|
|
380
|
+
- DISCOVERY.md
|
|
381
|
+
- JOURNEY-MAP.md
|
|
382
|
+
- RESEARCH-interviews.md
|
|
383
|
+
review_cadence: [monthly | quarterly]
|
|
384
|
+
next_review: YYYY-MM-DD
|
|
385
|
+
---
|
|
386
|
+
|
|
387
|
+
# Roadmap: [Title]
|
|
388
|
+
|
|
389
|
+
> Type: [Now/Next/Future | Outcome-based | Theme-based | Lean]
|
|
390
|
+
> Owner: [Name / Role]
|
|
391
|
+
> Last updated: [Date]
|
|
392
|
+
|
|
393
|
+
## Context
|
|
394
|
+
|
|
395
|
+
**High-Level Goals**
|
|
396
|
+
- [Goal 1 — company / org strategy this serves]
|
|
397
|
+
- [Goal 2]
|
|
398
|
+
- [Goal 3]
|
|
399
|
+
|
|
400
|
+
**Scope**
|
|
401
|
+
[What is in / out of scope for this roadmap]
|
|
402
|
+
|
|
403
|
+
**Audience**
|
|
404
|
+
- Creator: [who]
|
|
405
|
+
- Contributors: [who]
|
|
406
|
+
- Consumers: [who]
|
|
407
|
+
|
|
408
|
+
---
|
|
409
|
+
|
|
410
|
+
## Roadmap
|
|
411
|
+
|
|
412
|
+
### Completed (just shipped)
|
|
413
|
+
| Theme | Beneficiary | Outcome achieved |
|
|
414
|
+
|---|---|---|
|
|
415
|
+
| [Theme] | [who] | [measurable shift] |
|
|
416
|
+
|
|
417
|
+
### Now
|
|
418
|
+
| # | Theme | Beneficiary | Need | Business Objective | Owner | Confidence | Disclaimers |
|
|
419
|
+
|---|---|---|---|---|---|---|---|
|
|
420
|
+
| 1 | [Name] | [who] | [problem] | [outcome] | [team] | H | [risk/dep] |
|
|
421
|
+
|
|
422
|
+
### Next (next ~2 quarters)
|
|
423
|
+
| # | Theme | Beneficiary | Need | Business Objective | Owner | Confidence | Disclaimers |
|
|
424
|
+
|---|---|---|---|---|---|---|---|
|
|
425
|
+
| 1 | [Name] | [who] | [problem] | [outcome] | [team] | M | [risk/dep] |
|
|
426
|
+
|
|
427
|
+
### Future (6+ months)
|
|
428
|
+
| # | Theme | Beneficiary | Need | Business Objective | Confidence | Disclaimers |
|
|
429
|
+
|---|---|---|---|---|---|---|---|
|
|
430
|
+
| 1 | [Name] | [who] | [problem] | [outcome] | L | [risk/dep] |
|
|
431
|
+
|
|
432
|
+
### Future++ (parking lot)
|
|
433
|
+
- [Idea 1 — source]
|
|
434
|
+
- [Idea 2 — source]
|
|
435
|
+
|
|
436
|
+
---
|
|
437
|
+
|
|
438
|
+
## Themes in Detail
|
|
439
|
+
|
|
440
|
+
### Theme 1: [Theme name]
|
|
441
|
+
|
|
442
|
+
**Pattern:** For [beneficiary], [need] so that [business objective].
|
|
443
|
+
|
|
444
|
+
- **Beneficiary:** [who]
|
|
445
|
+
- **Need:** [problem — no solution mentioned]
|
|
446
|
+
- **Business Objective:** [measurable shift]
|
|
447
|
+
- **Subthemes:**
|
|
448
|
+
- [sub-goal 1]
|
|
449
|
+
- [sub-goal 2]
|
|
450
|
+
- **Product / Experience Area:** [where]
|
|
451
|
+
- **Owner (who):** [team / role]
|
|
452
|
+
- **Owner (what):** [kind of work — research, redesign, new capability]
|
|
453
|
+
- **Confidence:** [H / M / L] — [rationale]
|
|
454
|
+
- **Disclaimers:** [risks, dependencies, open questions]
|
|
455
|
+
- **Prioritization score:** [framework] = [value]
|
|
456
|
+
- **Source inputs:** [research, journey opportunity, etc.]
|
|
457
|
+
|
|
458
|
+
[Repeat for each theme]
|
|
459
|
+
|
|
460
|
+
---
|
|
461
|
+
|
|
462
|
+
## Prioritization Detail
|
|
463
|
+
|
|
464
|
+
**Framework used:** [name]
|
|
465
|
+
|
|
466
|
+
**Scoring matrix:**
|
|
467
|
+
| Theme | [Criteria 1] | [Criteria 2] | [Criteria 3] | Score | Rank |
|
|
468
|
+
|---|---|---|---|---|---|
|
|
469
|
+
| T1 | [value] | [value] | [value] | [score] | 1 |
|
|
470
|
+
|
|
471
|
+
**Rationale for top 3:**
|
|
472
|
+
1. [Theme] — [why it ranks #1]
|
|
473
|
+
2. [Theme] — [why #2]
|
|
474
|
+
3. [Theme] — [why #3]
|
|
475
|
+
|
|
476
|
+
---
|
|
477
|
+
|
|
478
|
+
## Governance
|
|
479
|
+
|
|
480
|
+
- **Review cadence:** [monthly / quarterly]
|
|
481
|
+
- **Next scheduled review:** [date]
|
|
482
|
+
- **Update triggers (off-cycle):**
|
|
483
|
+
- Major strategic shift
|
|
484
|
+
- New research finding invalidates a theme
|
|
485
|
+
- Delivery signal (theme completed or abandoned)
|
|
486
|
+
- Leadership request
|
|
487
|
+
- **Versioning:** increment version on major refresh; track in git
|
|
488
|
+
|
|
489
|
+
---
|
|
490
|
+
|
|
491
|
+
## Open Questions
|
|
492
|
+
|
|
493
|
+
- [Question 1 — planned research to close]
|
|
494
|
+
- [Question 2]
|
|
495
|
+
|
|
496
|
+
---
|
|
497
|
+
|
|
498
|
+
## Disclaimers
|
|
499
|
+
|
|
500
|
+
- This roadmap is directional, not a commitment
|
|
501
|
+
- "Future" themes are likely to change as we learn
|
|
502
|
+
- Confidence levels reflect current evidence — not guaranteed outcomes
|
|
503
|
+
```
|
|
504
|
+
|
|
505
|
+
---
|
|
506
|
+
|
|
507
|
+
## State Updates (Workflow Mode)
|
|
508
|
+
|
|
509
|
+
After completing the roadmap:
|
|
510
|
+
|
|
511
|
+
1. **Write output to `.design/phases/ROADMAP.md`**
|
|
512
|
+
|
|
513
|
+
2. **Update `.design/STATE.md`:**
|
|
514
|
+
```markdown
|
|
515
|
+
### Last Activity
|
|
516
|
+
- **Date:** [TIMESTAMP]
|
|
517
|
+
- **Action:** Completed UX roadmap with /dp:roadmap
|
|
518
|
+
- **Type:** [roadmap_type]
|
|
519
|
+
- **Themes count:** [N]
|
|
520
|
+
|
|
521
|
+
#### Major Decisions Made
|
|
522
|
+
| Phase | Decision | Impact |
|
|
523
|
+
|---|---|---|
|
|
524
|
+
| Roadmap | Top "Now" theme identified | [Drives UX priority] |
|
|
525
|
+
| Roadmap | Framework chosen: [RICE/ICE/etc.] | [Governs future reviews] |
|
|
526
|
+
```
|
|
527
|
+
|
|
528
|
+
3. **Update `.design/config.json`:**
|
|
529
|
+
```json
|
|
530
|
+
{
|
|
531
|
+
"optional_phases": {
|
|
532
|
+
"roadmap": {
|
|
533
|
+
"enabled": true,
|
|
534
|
+
"roadmap_type": "now_next_future",
|
|
535
|
+
"prioritization_framework": "RICE",
|
|
536
|
+
"review_cadence": "quarterly",
|
|
537
|
+
"completed": true
|
|
538
|
+
}
|
|
539
|
+
},
|
|
540
|
+
"workflow": {
|
|
541
|
+
"phases_completed": [..., "roadmap"],
|
|
542
|
+
"current_optional_phase": null
|
|
543
|
+
}
|
|
544
|
+
}
|
|
545
|
+
```
|
|
546
|
+
|
|
547
|
+
**State-machine rules for this optional phase:**
|
|
548
|
+
- **On entry** (as soon as the user invokes `/dp:roadmap`): set `workflow.current_optional_phase` to `"roadmap"`.
|
|
549
|
+
- **On completion** (after writing ROADMAP.md): clear `workflow.current_optional_phase` to `null`. Do **not** change `workflow.current_phase` — the numeric main-phase value is governed by main workflow skills.
|
|
550
|
+
|
|
551
|
+
---
|
|
552
|
+
|
|
553
|
+
## Handoff (Workflow Mode)
|
|
554
|
+
|
|
555
|
+
```
|
|
556
|
+
═══════════════════════════════════════════════════════════════════════════════
|
|
557
|
+
ROADMAP COMPLETE
|
|
558
|
+
═══════════════════════════════════════════════════════════════════════════════
|
|
559
|
+
|
|
560
|
+
Output: .design/phases/ROADMAP.md
|
|
561
|
+
|
|
562
|
+
Summary:
|
|
563
|
+
• Type: [roadmap_type]
|
|
564
|
+
• Themes mapped: [N]
|
|
565
|
+
• Now: [X] Next: [Y] Future: [Z]
|
|
566
|
+
• Framework: [RICE / ICE / etc.]
|
|
567
|
+
• Review cadence: [monthly / quarterly]
|
|
568
|
+
• Next review: [date]
|
|
569
|
+
|
|
570
|
+
Ready for Next Phase?
|
|
571
|
+
────────────────────────────────────────────────────────────────────────────────
|
|
572
|
+
→ /dp:ux — Continue to UX phase (work on Now themes)
|
|
573
|
+
→ /dp:prd — Generate PRD for highest-priority theme
|
|
574
|
+
→ /dp:research — Close open questions / validate Future themes
|
|
575
|
+
|
|
576
|
+
Or:
|
|
577
|
+
→ /dp:progress — Review full status
|
|
578
|
+
→ /dp:back — Revisit discovery
|
|
579
|
+
═══════════════════════════════════════════════════════════════════════════════
|
|
580
|
+
```
|
|
581
|
+
|
|
582
|
+
---
|
|
583
|
+
|
|
584
|
+
## Standalone Mode Behavior
|
|
585
|
+
|
|
586
|
+
When no `.design/` directory exists:
|
|
587
|
+
|
|
588
|
+
1. Ask: "New roadmap or updating existing?"
|
|
589
|
+
2. Ask scope: team / product / portfolio
|
|
590
|
+
3. Ask roadmap type (4 options)
|
|
591
|
+
4. Walk through 6-step process
|
|
592
|
+
5. Output inline
|
|
593
|
+
6. Offer: "Would you like to start a full DP workflow with `/dp:start`?"
|
|
594
|
+
|
|
595
|
+
---
|
|
596
|
+
|
|
597
|
+
## Reference Files
|
|
598
|
+
|
|
599
|
+
Load these as needed for detailed guidance:
|
|
600
|
+
|
|
601
|
+
- **references/roadmap-structures.md** — Full templates for each of the 4 roadmap types, plus audience-specific variants (exec deck, team view, stakeholder one-pager)
|
|
602
|
+
- **references/theme-development.md** — How to derive themes from inputs (research, journey maps, support tickets); good vs bad theme examples; theme evolution across horizons
|
|
603
|
+
- **references/prioritization-frameworks.md** — Detailed guides for RICE, ICE, MoSCoW, Kano, Value/Effort, Opportunity Scoring with examples and pitfalls
|
|
604
|
+
- **references/roadmap-workshops.md** — Full facilitation guides for both workshop formats, stakeholder interview templates, hopes-and-fears exercises, dot-voting mechanics
|
|
605
|
+
|
|
606
|
+
---
|
|
607
|
+
|
|
608
|
+
## Config Integration
|
|
609
|
+
|
|
610
|
+
Respects these settings from `.design/config.json`:
|
|
611
|
+
|
|
612
|
+
```json
|
|
613
|
+
{
|
|
614
|
+
"optional_phases": {
|
|
615
|
+
"roadmap": {
|
|
616
|
+
"enabled": true,
|
|
617
|
+
"roadmap_type": "now_next_future",
|
|
618
|
+
"prioritization_framework": "RICE",
|
|
619
|
+
"review_cadence": "quarterly",
|
|
620
|
+
"include_confidence": true,
|
|
621
|
+
"include_disclaimers": true,
|
|
622
|
+
"workshop_format": "single_3hr"
|
|
623
|
+
}
|
|
624
|
+
}
|
|
625
|
+
}
|
|
626
|
+
```
|
|
627
|
+
|
|
628
|
+
---
|
|
629
|
+
|
|
630
|
+
## Workflow Navigation
|
|
631
|
+
|
|
632
|
+
```
|
|
633
|
+
┌─────────┐
|
|
634
|
+
/dp:start → /dp:discovery → (/dp:prd) → (/dp:journey) → │ YOU ARE │ → /dp:ux → /dp:execute → /dp:ui → /dp:eng_review → /dp:verify
|
|
635
|
+
Phase 1 Phase 1.5a Phase 1.5b │ HERE │ Phase 2
|
|
636
|
+
│ 1.5c │
|
|
637
|
+
└─────────┘
|
|
638
|
+
```
|
|
639
|
+
|
|
640
|
+
| | |
|
|
641
|
+
|---|---|
|
|
642
|
+
| **Previous** | `/dp:discovery` — Discovery (Phase 1) |
|
|
643
|
+
| **Parallel** | `/dp:prd` — PRD (1.5a), `/dp:journey` — Journey mapping (1.5b) |
|
|
644
|
+
| **Current** | `/dp:roadmap` — UX roadmap (Phase 1.5c) |
|
|
645
|
+
| **Next** | `/dp:ux` — UX phase (Phase 2) |
|
|
646
|
+
| **Related** | `/dp:research` — Close open questions / validate Future themes |
|
|
647
|
+
| | `/dp:discuss` — Capture context before this phase |
|
|
648
|
+
| | `/dp:back` — Return to discovery if scope changes |
|