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.
Files changed (72) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +225 -0
  3. package/agents/dp-researcher.md +239 -0
  4. package/agents/dp-verifier.md +207 -0
  5. package/bin/install.js +464 -0
  6. package/commands/dp-back.md +221 -0
  7. package/commands/dp-discuss.md +257 -0
  8. package/commands/dp-execute.md +513 -0
  9. package/commands/dp-journey.md +85 -0
  10. package/commands/dp-progress.md +178 -0
  11. package/commands/dp-roadmap.md +83 -0
  12. package/commands/dp-skip.md +186 -0
  13. package/commands/dp-start.md +510 -0
  14. package/commands/dp-storytell.md +94 -0
  15. package/commands/dp-verify.md +207 -0
  16. package/package.json +59 -0
  17. package/skills/dp-color/SKILL.md +214 -0
  18. package/skills/dp-color/export_tokens.py +297 -0
  19. package/skills/dp-color/references/apca-contrast.md +87 -0
  20. package/skills/dp-color/references/hue-emotions.md +109 -0
  21. package/skills/dp-color/references/oklch-gamut.md +79 -0
  22. package/skills/dp-color/references/pitfalls.md +171 -0
  23. package/skills/dp-color/references/scale-patterns.md +206 -0
  24. package/skills/dp-color/references/tool-workflows.md +200 -0
  25. package/skills/dp-discovery/SKILL.md +480 -0
  26. package/skills/dp-eng_review/SKILL.md +471 -0
  27. package/skills/dp-eng_review/references/code-review-checklist.md +385 -0
  28. package/skills/dp-eng_review/references/react-patterns.md +512 -0
  29. package/skills/dp-eng_review/references/shadcn-patterns.md +510 -0
  30. package/skills/dp-eng_review/references/tailwind-conventions.md +351 -0
  31. package/skills/dp-journey/SKILL.md +682 -0
  32. package/skills/dp-journey/references/journey-types.md +97 -0
  33. package/skills/dp-journey/references/map-structures.md +177 -0
  34. package/skills/dp-journey/references/omnichannel-patterns.md +208 -0
  35. package/skills/dp-journey/references/research-methods.md +125 -0
  36. package/skills/dp-prd/SKILL.md +201 -0
  37. package/skills/dp-prd/references/claude-code-spec.md +107 -0
  38. package/skills/dp-prd/references/interview-questions.md +158 -0
  39. package/skills/dp-prd/references/section-templates.md +231 -0
  40. package/skills/dp-research/SKILL.md +540 -0
  41. package/skills/dp-research/references/facilitation-guide.md +291 -0
  42. package/skills/dp-research/references/interview-guide-template.md +190 -0
  43. package/skills/dp-research/references/method-selection.md +195 -0
  44. package/skills/dp-research/references/question-writing.md +244 -0
  45. package/skills/dp-research/references/research-report-template.md +363 -0
  46. package/skills/dp-research/references/synthesis-methods.md +289 -0
  47. package/skills/dp-research/references/usability-test-template.md +260 -0
  48. package/skills/dp-roadmap/SKILL.md +648 -0
  49. package/skills/dp-roadmap/references/prioritization-frameworks.md +312 -0
  50. package/skills/dp-roadmap/references/roadmap-structures.md +179 -0
  51. package/skills/dp-roadmap/references/roadmap-workshops.md +264 -0
  52. package/skills/dp-roadmap/references/theme-development.md +168 -0
  53. package/skills/dp-storytell/SKILL.md +645 -0
  54. package/skills/dp-storytell/references/audience-playbooks.md +260 -0
  55. package/skills/dp-storytell/references/content-type-templates.md +310 -0
  56. package/skills/dp-storytell/references/delivery-tactics.md +228 -0
  57. package/skills/dp-storytell/references/narrative-frameworks.md +259 -0
  58. package/skills/dp-ui/SKILL.md +503 -0
  59. package/skills/dp-ui/references/b2b-enterprise-patterns.md +319 -0
  60. package/skills/dp-ui/references/data-visualization.md +304 -0
  61. package/skills/dp-ui/references/visual-design-principles.md +237 -0
  62. package/skills/dp-ux/SKILL.md +414 -0
  63. package/skills/dp-ux/references/accessibility-checklist.md +128 -0
  64. package/skills/dp-ux/references/product-excellence.md +149 -0
  65. package/skills/dp-ux/references/usability-principles.md +140 -0
  66. package/skills/dp-ux/references/ux-patterns.md +221 -0
  67. package/templates/config.json +55 -0
  68. package/templates/context.md +96 -0
  69. package/templates/project.md +83 -0
  70. package/templates/requirements.md +137 -0
  71. package/templates/roadmap.md +168 -0
  72. package/templates/state.md +107 -0
@@ -0,0 +1,97 @@
1
+ # Journey Artifact Types — Decision Guide
2
+
3
+ This reference helps pick the right artifact type for the situation. Source: NNGroup's UX Mapping Methods cheat sheet (Sarah Gibbons) plus related Kaplan, Salazar, and Flaherty articles.
4
+
5
+ ---
6
+
7
+ ## Decision Tree
8
+
9
+ ```
10
+ Is the scope tied to a specific product or service?
11
+ ├── No, broader human behavior across providers
12
+ │ ├── Whole-day or whole-life context?
13
+ │ │ ├── Yes → Day-in-the-Life Map
14
+ │ │ └── No → Experience Map
15
+ │ └──
16
+ └── Yes, specific product/service
17
+ ├── Do channels/handoffs matter?
18
+ │ ├── Yes → Omnichannel Journey Map
19
+ │ └── No → Continue
20
+ ├── Do internal operations/backstage matter?
21
+ │ ├── Yes → Service Blueprint
22
+ │ └── No → Customer Journey Map
23
+ └──
24
+ ```
25
+
26
+ ---
27
+
28
+ ## Comparison Matrix
29
+
30
+ | Method | Perspective | Scope | Chronological? | Tied to product? | Primary output |
31
+ |---|---|---|---|---|---|
32
+ | Customer Journey Map | One actor | One scenario | Yes | Yes | Emotional arc + opportunities |
33
+ | Experience Map | Generic human | Whole domain | Yes | No | Context + upstream opportunities |
34
+ | Day-in-the-Life Map | One actor | Whole day | Yes | No | Context + unmet needs |
35
+ | Service Blueprint | Organization | One service | Yes | Yes | Frontstage/backstage alignment |
36
+ | Omnichannel Journey Map | One actor | Multi-channel journey | Yes | Yes | Channel transitions + gaps |
37
+
38
+ ---
39
+
40
+ ## Current-State vs Future-State vs Day-in-the-Life
41
+
42
+ Three purposes for a journey map, per Kaplan:
43
+
44
+ | Variant | Purpose | When to use |
45
+ |---|---|---|
46
+ | **Current-state** | Diagnose how the journey works *today* | Improving an existing experience; aligning on reality; onboarding new team members |
47
+ | **Future-state** | Envision how the journey *should* work | Vision-setting; pitching a North Star; designing something that doesn't exist |
48
+ | **Day-in-the-Life** | Understand the person's *wider context* | Finding new opportunities; pre-product discovery; designing for moments not screens |
49
+
50
+ **Rule of thumb:** Use current-state to fix. Use future-state to envision. Use day-in-the-life to find.
51
+
52
+ ---
53
+
54
+ ## Examples Per Type
55
+
56
+ ### Customer Journey Map — "First-time SaaS trial signup"
57
+ Actor: IT manager evaluating tools
58
+ Scenario: from email ad click → 14-day trial → purchase decision
59
+ Phases: Discover → Evaluate → Trial → Expand → Decide → Purchase/Abandon
60
+
61
+ ### Experience Map — "Learning a new skill"
62
+ Actor: self-directed adult learner
63
+ Scope: not tied to any one course platform
64
+ Phases: Awaken desire → Explore options → Commit → Practice → Plateau → Apply → Share
65
+
66
+ ### Day-in-the-Life Map — "Remote knowledge worker"
67
+ Actor: mid-career software engineer
68
+ Scope: 6am–11pm weekday
69
+ Swimlanes: activities, tools, emotional state, meeting load, unmet needs
70
+
71
+ ### Service Blueprint — "Home appliance warranty claim"
72
+ Actor: customer with broken dishwasher
73
+ Customer actions: call support → schedule visit → technician arrives → repair done
74
+ Frontstage: phone agent, scheduling app, technician
75
+ Backstage: CRM, parts inventory, dispatch system
76
+ Support: vendor parts supplier, SLA contracts
77
+
78
+ ### Omnichannel Journey Map — "Buy online, pick up in store"
79
+ Actor: working parent
80
+ Channels: web (browse), mobile (pay), email (receipt), SMS (ready-for-pickup), in-store (counter)
81
+ Transitions: 4 channel handoffs, each requiring context persistence
82
+
83
+ ---
84
+
85
+ ## When NOT to Use Journey Mapping
86
+
87
+ Use something else when:
88
+
89
+ | Situation | Use instead |
90
+ |---|---|
91
+ | You need to synthesize user research | Empathy map, affinity diagramming |
92
+ | You need to design a specific screen flow | User flow diagram (part of UX) |
93
+ | You need to document information architecture | Sitemap, IA diagram |
94
+ | You need feature requirements | PRD |
95
+ | You need persona detail | Persona document |
96
+
97
+ Journey maps are for *narrative and alignment*, not for *specification*.
@@ -0,0 +1,177 @@
1
+ # Map Structures — Templates Per Artifact Type
2
+
3
+ Full swimlane templates for each of the five artifact types. Use these as the scaffold when synthesizing research into a draft.
4
+
5
+ ---
6
+
7
+ ## 1. Customer Journey Map — Full Template
8
+
9
+ ### Zone A — The Lens
10
+ ```
11
+ Actor: [Persona name] — [one-line description]
12
+ Scenario: [Specific time-bounded scenario with entry and exit points]
13
+ Expectations Entering:
14
+ 1. [What they expect]
15
+ 2. [What they expect]
16
+ 3. [What they expect]
17
+ Goal: [What success looks like from their POV]
18
+ Research basis: [interviews N=X, usability N=Y, analytics source] OR [HYPOTHESIS]
19
+ ```
20
+
21
+ ### Zone B — The Experience
22
+
23
+ **Phase row (top):** 4-7 high-level phases, chronological
24
+ **Standard phase archetypes:**
25
+ - Commerce: Awareness → Consideration → Purchase → Onboarding → Use → Advocacy
26
+ - SaaS: Discover → Evaluate → Trial → Adopt → Expand → Renew/Advocate
27
+ - Service: Trigger → Research → Decide → Engage → Experience → Follow-up
28
+ - Support: Problem → Search → Contact → Diagnose → Resolve → Verify
29
+
30
+ **Swimlanes (per phase):**
31
+
32
+ | Swimlane | Prompt |
33
+ |---|---|
34
+ | Actions | What does the actor literally do? |
35
+ | Thoughts | What are they asking themselves? What questions? |
36
+ | Emotions | How do they feel? Plot as 1-5 value |
37
+ | Touchpoints | Which interfaces/channels at this moment? |
38
+ | Pain Points | What friction or frustration occurs here? |
39
+ | Quotes | Verbatim or paraphrased — "..." from research |
40
+
41
+ **Emotion Curve:** draw as a single line across all phases showing peaks (delight) and valleys (frustration).
42
+
43
+ ### Zone C — The Insights
44
+
45
+ - **Opportunities** per phase (ranked)
46
+ - **Key Moments of Truth** — where experience succeeds or fails
47
+ - **Ownership Map** — who owns each phase
48
+ - **Metrics** — what to measure to know if the journey improves
49
+
50
+ ---
51
+
52
+ ## 2. Experience Map — Full Template
53
+
54
+ Same structure as Customer Journey Map but:
55
+ - Actor = generic human (not a customer of any one company)
56
+ - Scenario = life context, not product context
57
+ - Touchpoints = may include competitive/substitute options
58
+ - Opportunities = category-level, not product-level
59
+
60
+ ---
61
+
62
+ ## 3. Day-in-the-Life Map — Full Template
63
+
64
+ ### Header
65
+ ```
66
+ Actor: [Persona]
67
+ Time horizon: [6am–11pm / full workday / weekend]
68
+ Context: [Location, role, constraints]
69
+ ```
70
+
71
+ ### Timeline Swimlanes
72
+
73
+ | Swimlane | Prompt |
74
+ |---|---|
75
+ | Time blocks | Hourly or by natural breaks |
76
+ | Activities | What they're doing |
77
+ | Tools used | Apps, devices, services, physical tools |
78
+ | Social context | Alone / with family / with colleagues |
79
+ | Emotional state | Stress level, energy level |
80
+ | Cognitive load | Focused work / reactive / ambient |
81
+ | Unmet needs | What's missing or painful |
82
+ | Opportunity tags | Potential product/service intervention |
83
+
84
+ ---
85
+
86
+ ## 4. Service Blueprint — Full Template
87
+
88
+ ### 5 Layers (top to bottom)
89
+ ```
90
+ ┌─────────────────────────────────────────────────────────────┐
91
+ │ Physical / Digital Evidence │
92
+ ├─────────────────────────────────────────────────────────────┤
93
+ │ Customer Actions │
94
+ │ ══════════════════════════ Line of Interaction ═══════════ │
95
+ │ Frontstage Actions │
96
+ │ ══════════════════════════ Line of Visibility ════════════ │
97
+ │ Backstage Actions │
98
+ │ ══════════════════════ Line of Internal Interaction ══════ │
99
+ │ Support Processes │
100
+ └─────────────────────────────────────────────────────────────┘
101
+ ```
102
+
103
+ ### Layer Definitions (NNGroup, Sarah Gibbons)
104
+
105
+ | Layer | Contents |
106
+ |---|---|
107
+ | **Physical / Digital Evidence** | Props, places, UIs the customer encounters — receipt, signage, app screen, email |
108
+ | **Customer Actions** | Steps, choices, activities the customer performs to reach a goal (this IS the journey row) |
109
+ | **Frontstage Actions** | Actions occurring directly in view of the customer — contact employees or self-service tech |
110
+ | **Backstage Actions** | Steps behind the scenes that support frontstage — kitchen prep, order entry into KDS, CRM lookup |
111
+ | **Support Processes** | Internal systems, third parties, policies, SLAs that enable the layers above |
112
+
113
+ ### Critical Nuance
114
+ A frontstage *employee* can perform a backstage *action*. Example: a waiter typing the order into the kitchen display system is a backstage action even though the waiter is a frontstage employee. The distinction is about visibility of the *action*, not the *role*.
115
+
116
+ ### The 3 Lines
117
+
118
+ | Line | Separates |
119
+ |---|---|
120
+ | Line of Interaction | Customer Actions ↔ Frontstage Actions |
121
+ | Line of Visibility | Frontstage ↔ Backstage |
122
+ | Line of Internal Interaction | Backstage ↔ Support Processes |
123
+
124
+ ### Building Process (5 steps — Gibbons)
125
+ 1. **Find support** — build cross-disciplinary team, establish stakeholder support
126
+ 2. **Define the goal** — scope and alignment on why
127
+ 3. **Gather research** — from customers, employees, stakeholders
128
+ 4. **Map the blueprint** — low-fidelity first
129
+ 5. **Refine and distribute** — to high-fidelity, distribute to clients and stakeholders
130
+
131
+ ---
132
+
133
+ ## 5. Omnichannel Journey Map — Full Template
134
+
135
+ ### Additional rows beyond the Customer Journey Map
136
+
137
+ | Row | Prompt |
138
+ |---|---|
139
+ | **Channel** | web / mobile / email / SMS / phone / in-person / chat / kiosk |
140
+ | **Device** | phone / laptop / tablet / kiosk / POS / voice assistant |
141
+ | **Touchpoint** | channel + device + task composite |
142
+
143
+ ### Channel Transition Markers
144
+
145
+ At every transition, insert a block:
146
+
147
+ ```
148
+ ╔═══════════════════════════════╗
149
+ ║ TRANSITION: [From] → [To] ║
150
+ ║ What carries: [context] ║
151
+ ║ What breaks: [failures] ║
152
+ ║ Priority: [H / M / L] ║
153
+ ╚═══════════════════════════════╝
154
+ ```
155
+
156
+ ### Channel Inventory Table
157
+
158
+ | Channel | Role | Strengths Leveraged | Known Limitations |
159
+ |---|---|---|---|
160
+ | Web | Primary research | Deep content, filters, comparison | Large screen assumed |
161
+ | Mobile app | Transactional | Quick actions, notifications, camera | Small screen, attention-fragmented |
162
+ | Email | Async confirmation | Persistent record | One-way, delayed |
163
+ | SMS | Real-time alert | Immediate, high open-rate | 160 chars, no rich media |
164
+ | Phone | High-touch resolution | Human empathy, complex cases | Queue wait, scheduling |
165
+ | In-person | Trust-building, physical | Full sensory, high bandwidth | Geographic limits, hours |
166
+ | Chat (live) | Mid-touch support | Real-time, multitask-compatible | Requires agent availability |
167
+
168
+ ---
169
+
170
+ ## Output Conventions
171
+
172
+ - Always Zone A (lens), Zone B (experience), Zone C (insights) order
173
+ - Always one actor per map
174
+ - Always chronological left-to-right phases
175
+ - Always emotion as a continuous line, not discrete values
176
+ - Always opportunities ranked (severity × reach × strategic fit)
177
+ - Always a named journey owner in Zone C
@@ -0,0 +1,208 @@
1
+ # Omnichannel Patterns — Deep Reference
2
+
3
+ Extended reference for omnichannel journey mapping. Based on NNGroup's 5-component framework (Kim Flaherty), Kim Salazar's touchpoint model, and common cross-channel patterns.
4
+
5
+ ---
6
+
7
+ ## The 5 Components (Verbatim Definitions — NNGroup, Kim Flaherty)
8
+
9
+ ### 1. Consistent
10
+ *"Providing a consistent, cohesive, and familiar experience across all channels."*
11
+
12
+ **4 consistency dimensions:**
13
+ - **Visual** — brand, typography, color, layout language
14
+ - **Functional** — core capabilities work the same way
15
+ - **Content / Voice** — tone, terminology, information hierarchy
16
+ - **Data / State** — account, cart, preferences are the same everywhere
17
+
18
+ **Benefits (NNGroup):**
19
+ - Familiarity & confidence — sets expectations
20
+ - Learnability — prior channel experience transfers
21
+ - Efficiency — users complete tasks faster
22
+ - Trust — builds credibility
23
+
24
+ ### 2. Optimized (for context)
25
+ *"Creating individual channel experiences that are best suited for that particular device, channel constraints, and contexts of use."*
26
+
27
+ **Context variables:**
28
+ - Device (screen size, input modality)
29
+ - Session length (seconds to hours)
30
+ - Attention available (full / fragmented / passive)
31
+ - Environmental constraints (hands-free, one-handed, ambient noise)
32
+ - Permission/privacy context (public space vs. private)
33
+
34
+ **Principle:** *Consistent what, contextual how.* Keep brand/data/core capability consistent; let UI/interaction/detail adapt to channel.
35
+
36
+ ### 3. Seamless
37
+ *"Making channel transitions as effortless as possible and helping customers pick up where they left off when they switch from one channel to another during a task."*
38
+
39
+ **Seamlessness requirements:**
40
+ - Persist state across channels (cart, form data, progress)
41
+ - Carry context forward (identity, intent, last action)
42
+ - Minimize re-authentication, re-typing, re-explaining
43
+ - Provide a visible "continue where you left off" affordance
44
+
45
+ ### 4. Orchestrated
46
+ *"Proactively leading customers through their individual journeys with the right personalized interactions and messages at the right time."*
47
+
48
+ **Orchestration maturity levels:**
49
+ - **Reactive** — respond after user acts (send receipt after purchase)
50
+ - **Scheduled** — planned sequence (onboarding email drip)
51
+ - **Behavioral** — triggered by user signals (cart abandonment email)
52
+ - **Predictive** — engine decides next-best-action based on state + history + context
53
+
54
+ ### 5. Collaborative
55
+ *"Enriching the customer journey by allowing customers to take advantage of multiple channels at the same time to improve the overall user experience."*
56
+
57
+ **Examples:**
58
+ - Second-screen (TV + mobile companion)
59
+ - Agent phone call + screen-share on web
60
+ - In-store app scanner while physically browsing
61
+ - QR code handoff from print to mobile
62
+ - Voice assistant + screen display
63
+
64
+ ---
65
+
66
+ ## Touchpoint Inventory — How to Build
67
+
68
+ Per Kim Salazar: **Touchpoint = Channel × Device × Task.**
69
+
70
+ ### Step 1 — Enumerate channels
71
+ List every way the actor can interact with the organization:
72
+ - Web (marketing site, app, logged-in product)
73
+ - Mobile app (iOS, Android)
74
+ - Email
75
+ - SMS
76
+ - Push notification
77
+ - Phone (inbound, outbound)
78
+ - In-person (store, branch, event)
79
+ - Chat (live, chatbot, WhatsApp)
80
+ - Social (DMs, comments)
81
+ - Print (mail, receipt, signage)
82
+ - Kiosk / POS / self-service
83
+ - Voice assistant
84
+
85
+ ### Step 2 — Enumerate devices
86
+ For each channel, which devices support it?
87
+
88
+ ### Step 3 — Enumerate tasks per phase
89
+ For each journey phase, what tasks might the actor attempt?
90
+
91
+ ### Step 4 — Create the inventory grid
92
+
93
+ | Phase | Channel | Device | Task | Actor goal | Frequency |
94
+ |---|---|---|---|---|---|
95
+ | Discover | Web | Desktop | Browse product pages | Evaluate fit | High |
96
+ | Discover | Mobile app | Phone | Tap ad | Investigate | High |
97
+ | Purchase | Web | Desktop | Enter payment | Complete checkout | High |
98
+ | Purchase | Mobile | Phone | Apple Pay | Complete checkout | Medium |
99
+ | Support | Phone | Phone | Call agent | Resolve issue | Low |
100
+ | Support | Chat | Desktop | Live chat | Resolve issue | Medium |
101
+
102
+ ### Step 5 — Identify gaps
103
+ - Channels the actor uses that the org doesn't support
104
+ - Tasks that only work on one channel but should work on more
105
+ - Handoffs that break context
106
+
107
+ ---
108
+
109
+ ## Channel Transition Patterns
110
+
111
+ ### Pattern A — Research-to-purchase handoff
112
+ User researches on desktop, purchases on mobile, or vice versa.
113
+
114
+ **Required context persistence:**
115
+ - Cart contents
116
+ - Account identity
117
+ - Viewed items / comparisons
118
+ - Discount codes / referral source
119
+
120
+ **Common failures:**
121
+ - Cart empties on channel switch
122
+ - Comparison lists don't sync
123
+ - Must re-login
124
+
125
+ ### Pattern B — Digital-to-physical handoff (BOPIS: buy online, pickup in store)
126
+ User buys online, picks up in physical location.
127
+
128
+ **Required context persistence:**
129
+ - Order ID + contents
130
+ - Identity verification
131
+ - Ready-for-pickup notification
132
+ - Substitution consent (if item unavailable)
133
+
134
+ **Common failures:**
135
+ - Store employee sees nothing in system
136
+ - Customer has to show email on phone (re-prove order)
137
+ - Substitution not communicated
138
+
139
+ ### Pattern C — Self-service-to-human handoff
140
+ User tries bot/FAQ, escalates to agent.
141
+
142
+ **Required context persistence:**
143
+ - Conversation history with bot
144
+ - Customer identity
145
+ - Issue category already identified
146
+ - Steps already attempted
147
+
148
+ **Common failures:**
149
+ - Agent has no chat transcript
150
+ - Customer must re-describe problem from zero
151
+ - Identity re-verification required
152
+
153
+ ### Pattern D — Outbound-to-inbound (email/SMS → web)
154
+ Marketing or service message triggers user to visit web.
155
+
156
+ **Required context persistence:**
157
+ - Campaign source
158
+ - Offer ID (if promotional)
159
+ - Personalization context
160
+ - Deep link to relevant destination
161
+
162
+ **Common failures:**
163
+ - Link goes to homepage, not offer
164
+ - Offer not applied automatically
165
+ - Must re-authenticate when message implied authenticated state
166
+
167
+ ### Pattern E — Synchronous multichannel (agent + customer on same screen)
168
+ Agent on phone, customer on web, both navigating together.
169
+
170
+ **Required real-time sync:**
171
+ - Shared cursor / co-browse
172
+ - Form field sync
173
+ - Mutual viewing of artifacts
174
+ - Agent access to customer's session state
175
+
176
+ **Common failures:**
177
+ - Agent can't see what customer sees
178
+ - Screen-share tools require customer install
179
+ - Privacy concerns around session visibility
180
+
181
+ ---
182
+
183
+ ## Anti-Patterns
184
+
185
+ 1. **Channel parity** — replicating the desktop UI on mobile instead of optimizing for mobile's context
186
+ 2. **Siloed ownership** — each channel owned by a separate team with separate KPIs
187
+ 3. **Data-state divergence** — account balance different on web vs. app vs. branch
188
+ 4. **Marketing-only omnichannel** — "omnichannel" that's really just "consistent branding across ads"
189
+ 5. **Invasive orchestration** — proactive messaging that feels creepy, not helpful
190
+ 6. **Forced channel switching** — channel A can't complete the task, user must switch to B
191
+ 7. **Happy-path-only design** — channel transitions designed only for success, not recovery
192
+ 8. **No identity continuity** — same user treated as stranger when they switch channels
193
+
194
+ ---
195
+
196
+ ## Maturity Self-Assessment
197
+
198
+ Use this to label the current experience state in the output:
199
+
200
+ | Tier | Signal |
201
+ |---|---|
202
+ | **Single-channel** | Only one channel exists |
203
+ | **Multichannel** | Multiple channels, each siloed, no shared state or transitions designed |
204
+ | **Cross-channel** | Channels are coordinated (deep links, email → web session) but not fully unified |
205
+ | **Omnichannel** | Unified customer identity, shared state, designed transitions, channel-appropriate UI |
206
+ | **Orchestrated Omnichannel** | All of the above + proactive, personalized next-best-action across channels |
207
+
208
+ Most organizations believe they are omnichannel and actually operate at the multichannel or cross-channel tier. Stating this honestly in the map is a feature, not a flaw.
@@ -0,0 +1,125 @@
1
+ # Research Methods for Journey Mapping
2
+
3
+ How to fill each swimlane with evidence. Never fabricate. If research is missing, enter hypothesis mode and log the gap.
4
+
5
+ ---
6
+
7
+ ## Swimlane → Method Matrix
8
+
9
+ | Swimlane | Best method | Acceptable substitutes | Red flags |
10
+ |---|---|---|---|
11
+ | **Actions** | Contextual inquiry, usability testing, analytics funnels | Support ticket review, sales call recordings | Assumptions from product team ("users probably…") |
12
+ | **Thoughts / Mindset** | Semi-structured interviews, think-aloud usability | Diary studies, session replays with narration | Marketing-voice ("delighted users say…") |
13
+ | **Emotions** | Interviews with emotional probes, diary studies | Sentiment analysis of reviews, survey NPS comments | Designer-projected feelings without user validation |
14
+ | **Touchpoints** | Touchpoint inventory workshop + analytics | Support team interviews (they know every channel) | Only listing channels the org *wants* used |
15
+ | **Pain Points** | Support tickets + interviews + churn exits | Session replays, heatmaps, complaint reviews | Only listing polite / survey-compliant feedback |
16
+ | **Opportunities** | Derived from pain points + jobs-to-be-done | Ideation workshops grounded in research | Ideas generated without pain-point anchors |
17
+ | **Backstage (blueprints)** | Employee interviews, process observation | SOP docs, Slack archives | Customer-side assumptions about internal ops |
18
+
19
+ ---
20
+
21
+ ## How Much Research Is Enough?
22
+
23
+ Per NNGroup's "base it on truth" principle:
24
+
25
+ ### Minimum viable research (for one map)
26
+ - **5-8 user interviews** with people who match the actor persona
27
+ - **Review of 20+ support tickets** from the last 90 days (if applicable)
28
+ - **1 touchpoint inventory workshop** with CS, sales, ops
29
+ - **Analytics pull** for the key funnel (if quantitative exists)
30
+
31
+ ### Stronger basis (for consequential maps)
32
+ - 10-15 interviews across 2-3 segments of the actor persona
33
+ - Diary study (5-10 participants, 1-2 weeks)
34
+ - Usability test of 2-3 scenarios (N=5 minimum, Nielsen)
35
+ - Employee interviews if service blueprint (minimum 3 per team)
36
+
37
+ ### Hypothesis mode triggers
38
+ Enter hypothesis mode if any of these are true:
39
+ - Zero user interviews have been conducted
40
+ - Only indirect data (exec opinions, sales calls, surveys with <20 responses)
41
+ - The actor/persona is aspirational (you don't have any yet)
42
+ - The scenario is future-state and the team hasn't tested a prototype
43
+
44
+ ---
45
+
46
+ ## Interview Question Bank — Journey-Focused
47
+
48
+ Use these in `/dp:research` interviews to feed journey synthesis:
49
+
50
+ ### Warm-up (establish context)
51
+ - Walk me through the last time you [did the scenario activity]
52
+ - What triggered you to [start the journey]?
53
+
54
+ ### Phase exploration (per phase)
55
+ - What did you do at that point?
56
+ - What were you trying to figure out?
57
+ - What were you thinking when [specific event]?
58
+ - What made you feel [emotion observed]?
59
+
60
+ ### Pain discovery
61
+ - What was the most frustrating part?
62
+ - What almost made you quit?
63
+ - What did you have to work around?
64
+
65
+ ### Expectation check
66
+ - What were you expecting that didn't happen?
67
+ - What surprised you?
68
+
69
+ ### Comparison (for experience maps)
70
+ - How else could you have [achieved the goal]?
71
+ - What else did you try?
72
+
73
+ ### Closure
74
+ - If you could change one thing about that experience, what would it be?
75
+
76
+ ---
77
+
78
+ ## Synthesizing Research Into Swimlanes
79
+
80
+ ### Step 1 — Transcribe and tag
81
+ Tag every research statement with:
82
+ - Phase it belongs to
83
+ - Swimlane (Action / Thought / Emotion / Pain / Opportunity / Touchpoint)
84
+ - Emotional valence (+2 / +1 / 0 / -1 / -2)
85
+
86
+ ### Step 2 — Affinity diagram
87
+ Cluster tagged statements per (phase, swimlane). Patterns emerge where 3+ participants converge.
88
+
89
+ ### Step 3 — Extract the narrative
90
+ For each phase, write 1-3 sentence narrative summarizing the cluster. Attribute quotes.
91
+
92
+ ### Step 4 — Plot emotion curve
93
+ Average emotional valence per phase. Draw the line.
94
+
95
+ ### Step 5 — Derive opportunities
96
+ For each pain point (valence -1 or -2), ask: what would need to change to move this to 0 or +1?
97
+
98
+ ---
99
+
100
+ ## Validating a Journey Map
101
+
102
+ Post-synthesis, run the map by:
103
+
104
+ 1. **3-5 users who match the actor** — do they recognize themselves?
105
+ 2. **2-3 employees who serve this actor** — does it match what they see?
106
+ 3. **The journey owner** — are the opportunities aligned with strategy?
107
+ 4. **Engineering / ops** — are the backstage claims (if service blueprint) accurate?
108
+
109
+ Red flag: if validation reveals >20% of the map is wrong, the research basis is too thin — redo with more participants before shipping the map as an alignment tool.
110
+
111
+ ---
112
+
113
+ ## Quantitative Overlays
114
+
115
+ Once qualitative is solid, overlay quantitative:
116
+
117
+ | Overlay | What it adds | Source |
118
+ |---|---|---|
119
+ | Drop-off % per phase | Objective severity ranking | Analytics |
120
+ | Time-in-phase | Identifies stuck points | Analytics |
121
+ | Support contact rate per phase | Confirms pain points | Support system |
122
+ | NPS by phase | Confirms emotion curve | Survey |
123
+ | Completion rate | Overall journey health | Analytics |
124
+
125
+ Quantitative validates qualitative — it does not replace it.