Skip to content

Shipping

Shipping delivers the most valuable Change every day and prunes what nobody uses every week.

Outcome

PartThis Process
OutcomeEach day ships one small Change for the Issue with the most outside revenue at stake.
ReadsIssue
LeavesIssue, Change
Runs inEach Startup

Accountable

Product Lead, Product Team.

Responsible: Product Lead.

Consulted: Engineering Lead, Reliability Engineer.

Informed: Marketing Lead, Customer Lead.

Workflows

WorkflowRunsTeam
Daily shipevery dayProduct Team

Who does each step

Shipping: who does each step5 steps in 1 Workflow, across 2 Roles: Product Lead, Engineering Lead. The table below lists every step.Product LeadPriyaEngineering LeadTomWorkflowDaily ship1 · Issue.createCollect misses, feature requests, andsteps done by hand three or more times asIssues.2 · Issue.triageRank the Issues by the outside revenue atstake.3 · Change.createShip the top Issue as one small Change.4 · Issue.resolveClose the Issues the merged Changeresolves.5 · Verb.retireRetire Verbs unused for 30 days, once aweek.Shipping: who does each step5 steps in 1 Workflow, across 2 Roles: Product Lead, Engineering Lead. The table below lists every step.WorkflowDaily shipProduct Lead1 · Issue.createCollect misses, feature requests, and steps doneby hand three or more times as Issues.Product Lead2 · Issue.triageRank the Issues by the outside revenue at stake.Engineering Lead3 · Change.createShip the top Issue as one small Change.Product Lead4 · Issue.resolveClose the Issues the merged Change resolves.Product Lead5 · Verb.retireRetire Verbs unused for 30 days, once a week.
Each box is a step, numbered within its Workflow, with the Verb it calls, under the Role it runs as. The table below adds approvals.
WorkflowStepRoleCallsApproval
Daily ship1. Collect misses, feature requests, and steps done by hand three or more times as Issues.Product LeadIssue.createNone
Daily ship2. Rank the Issues by the outside revenue at stake.Product LeadIssue.triageNone
Daily ship3. Ship the top Issue as one small Change.Engineering LeadChange.createNone
Daily ship4. Close the Issues the merged Change resolves.Product LeadIssue.resolveNone
Daily ship5. Retire Verbs unused for 30 days, once a week.Product LeadVerb.retireAsks first; waits 1 business day

Events

DirectionWhenWhat happens
InEvery dayStarts Daily ship
OutIssue.createdRaised by step 1 of Daily ship
OutIssue.triagedRaised by step 2 of Daily ship
OutChange.createdRaised by step 3 of Daily ship
OutIssue.resolvedRaised by step 4 of Daily ship
OutVerb.retiredRaised by step 5 of Daily ship

Plays

No Play names this Process.

Controls

No Control names this Process or a Workflow of it.

Settings

SettingTypeDefaultSaySet with
shipping.pruneAfterDaysinteger30Retire features unused for 30 daysSetting.update

Failure

A failed step retries; when retries run out, the Action goes to the Product Lead.

Loop

StepValue
HypothesisShipping the most valuable Change daily and pruning what nobody uses activates more new Customers than shipping in a weekly batch.
MeasureActivation rate over 30d, at least 50 observations
LearnThe learn step reads the Readout, records Evidence and a Decision, and drafts the next Variant.

Code

Text
Turn on shipping

Enable

On by default for every Product Template. Process.pause stops new Actions; Actions in progress finish.

Text
Retire features unused for 30 days

Example

Three Customers of an invoicing SaaS ask for CSV export this week. Daily ship ranks it first by revenue at stake and ships it as one Change. At the weekly prune, a report filter no one has opened in 60 days is removed.