Process for organizing large projects/epics
Problem
Every time I start an issue/epic for a feature that would require the entire product development flow, I spend time thinking about how to organize it, and name various stages. I know that there's always the product and design work to understand the problem, engineering work to build the feature, various go-to-market steps (documentation, support and field enablement), and go live.
Examples of epics that would have benefited from standard organization:
- [Sales Tooling] Temporary Renewal Extensions: A... (gitlab-org&10173)
- Allow customers that purchased via Reseller to ... (gitlab-org&8941 - closed)
- Update subscription card to reflect Zuora data ... (gitlab-org&9746 - closed)
Proposal
Come up with a standard epic structure, so that it's easy to start organizing new projects.
Ideas
1. Ready-Set-Go framework
For each epic, create the following sub-epics to track work. Each sub-epic is meant to represent a logical milestone, each dependent on the previous one.
Sub-epic name | Description |
---|---|
|
All of the work in validation track. |
🟠 Ready: complete engineering work behind a FF |
First part build track - code complete, tested, and in production behind a FF. |
🟡 Set: documentation and enablement |
Documentation, support readiness, field enablement, other team alignment. |
🟢 Go: production go live and monitor |
Last part of build track - Go live, monitor. |
|
Review results post launch - feedback issue, did this project solve the initial problem, what results are we seeing, etc. |
🧹 Clean up |
Clean up any unnecessary / redundant code as a result of migrating purchase flows from GitLab.com to Customers Portal.
|