Chapter 1
Define the User and Business Outcome
Begin with the result the change must create, not with a preferred implementation.
The capstone follows one change for an online shop: let a customer cancel a paid order within ten minutes, start a refund, and return reserved items to stock. Today customers contact support, wait for an agent, and may miss the warehouse cutoff. The desired user outcome is a clear, trustworthy cancellation without support. The business outcome is fewer avoidable contacts and fewer orders packed after a cancellation request.
Use the product-leadership practice of separating outcomes from output. A cancellation button is output; fewer support contacts and a high rate of eligible self-service cancellations are outcomes. State who is affected, the current problem, the expected behavior, and what is outside scope. For this first release, changing an order or cancelling after packing begins is outside scope. That boundary prevents a useful change from becoming an undefined rewrite of fulfillment.
Turn the outcome into measurable success and safety criteria before discussing storage or queues. Measure the share of eligible requests completed without support, the time until the user sees a final state, and support contacts about cancellation. Guard against duplicate refunds, stock errors, unauthorized cancellation, and increased checkout failures. Record assumptions, such as the warehouse exposing a reliable packing-started state, and assign an owner to verify each one.
A strong design starts with a bounded, measurable outcome and explicit safety conditions.
How to apply this
- Describe the user problem and business result separately from the proposed interface.
- State scope, non-goals, assumptions, and the decision owner before designing.
- Pair success measures with safety measures that must not get worse.
Situation
Engineers propose a new service and queue before agreeing when cancellation is allowed or how success will be measured.
Decision
Pause implementation and write the eligible user journey, non-goals, outcome measures, and safety rules first; architecture can then serve a shared target.