Product Lifecycle¶
How ideas become shipped features.
Overview¶
%%{init: {"theme": "base", "themeVariables": {"primaryColor": "#e2e8f0", "primaryTextColor": "#1e293b", "primaryBorderColor": "#64748b", "lineColor": "#94a3b8", "secondaryColor": "#e2e8f0", "tertiaryColor": "#cbd5e1", "background": "#0f172a", "mainBkg": "#e2e8f0", "nodeBorder": "#64748b", "clusterBkg": "#1e293b", "clusterBorder": "#475569", "titleColor": "#e2e8f0", "edgeLabelBackground": "#1e293b", "nodeTextColor": "#1e293b"}}}%%
graph TD
A[Customer Discovery] --> B[Specification]
B --> C[Build]
C --> D[Launch]
D --> E[Feedback Flywheel]
E -->|insights| B
style A fill:#60a5fa,color:#000
style B fill:#a78bfa,color:#000
style C fill:#34d399,color:#000
style D fill:#fbbf24,color:#000
style E fill:#f87171,color:#000
Customer Discovery¶
Before writing code, go back to the customers.
%%{init: {"theme": "base", "themeVariables": {"primaryColor": "#e2e8f0", "primaryTextColor": "#1e293b", "primaryBorderColor": "#64748b", "lineColor": "#94a3b8", "secondaryColor": "#e2e8f0", "tertiaryColor": "#cbd5e1", "background": "#0f172a", "mainBkg": "#e2e8f0", "nodeBorder": "#64748b", "clusterBkg": "#1e293b", "clusterBorder": "#475569", "titleColor": "#e2e8f0", "edgeLabelBackground": "#1e293b", "nodeTextColor": "#1e293b"}}}%%
graph LR
A[Structured interviews] --> D[Updated spec]
B[Video current tools] --> D
C[Capture end-to-end flows] --> D
style D fill:#a78bfa,color:#000
What we capture:
- Operational reality (the good, the bad, the great)
- Tools they use today and what is missing
- What "the perfect product" looks like in their minds
Specification to Roadmap¶
%%{init: {"theme": "base", "themeVariables": {"primaryColor": "#e2e8f0", "primaryTextColor": "#1e293b", "primaryBorderColor": "#64748b", "lineColor": "#94a3b8", "secondaryColor": "#e2e8f0", "tertiaryColor": "#cbd5e1", "background": "#0f172a", "mainBkg": "#e2e8f0", "nodeBorder": "#64748b", "clusterBkg": "#1e293b", "clusterBorder": "#475569", "titleColor": "#e2e8f0", "edgeLabelBackground": "#1e293b", "nodeTextColor": "#1e293b"}}}%%
graph TD
A[Full product vision] --> B[Release candidates]
B --> RC1[RC1: Must-have for launch]
B --> RC2[RC2: Post-launch improvements]
B --> RC3[RC3: Growth features]
RC1 --> C[Development roadmap]
style A fill:#a78bfa,color:#000
style RC1 fill:#34d399,color:#000
style RC2 fill:#cbd5e1,color:#000
style RC3 fill:#cbd5e1,color:#000
Feedback Flywheel¶
Once live, two channels drive product decisions:
%%{init: {"theme": "base", "themeVariables": {"primaryColor": "#e2e8f0", "primaryTextColor": "#1e293b", "primaryBorderColor": "#64748b", "lineColor": "#94a3b8", "secondaryColor": "#e2e8f0", "tertiaryColor": "#cbd5e1", "background": "#0f172a", "mainBkg": "#e2e8f0", "nodeBorder": "#64748b", "clusterBkg": "#1e293b", "clusterBorder": "#475569", "titleColor": "#e2e8f0", "edgeLabelBackground": "#1e293b", "nodeTextColor": "#1e293b"}}}%%
graph TD
subgraph Human Feedback
A1[Sales conversations]
A2[Customer interviews]
A3[Support tickets]
A4[Market trends]
end
subgraph Data Driven
B1[Usage and behaviour data]
B2[Feature adoption rates]
B3[Drop-off analysis]
end
A1 & A2 & A3 & A4 --> C[Product decisions]
B1 & B2 & B3 --> C
C --> D[Kill underused features]
C --> E[Promote core features]
C --> F[New feature specs]
F --> G[Development pipeline]
style C fill:#f87171,color:#000
style G fill:#34d399,color:#000
Feature Implementation Flow¶
When a product decision is made:
%%{init: {"theme": "base", "themeVariables": {"primaryColor": "#e2e8f0", "primaryTextColor": "#1e293b", "primaryBorderColor": "#64748b", "lineColor": "#94a3b8", "secondaryColor": "#e2e8f0", "tertiaryColor": "#cbd5e1", "background": "#0f172a", "mainBkg": "#e2e8f0", "nodeBorder": "#64748b", "clusterBkg": "#1e293b", "clusterBorder": "#475569", "titleColor": "#e2e8f0", "edgeLabelBackground": "#1e293b", "nodeTextColor": "#1e293b"}}}%%
graph LR
A[Insight] --> B[Product decision]
B --> C[Spec + acceptance criteria]
C --> D[UX/UI if needed]
D --> E[Issues created]
E --> F[Development pipeline]
F --> G[Staging]
G --> H[Production]
style B fill:#a78bfa,color:#000
style F fill:#34d399,color:#000
style H fill:#fbbf24,color:#000
Same pipeline regardless of whether the work comes from human feedback or usage data.