Skip to content

From a real need to a reviewable change.

Software is easier to improve when teams understand the problem, keep responsibilities clear and examine the result together. The stages below describe a practical way to move from a need to a result.

From need to reviewable change

  • Understand and design

    Start with the people affected, the outcome they need and a small observable problem. Describe each part's responsibilities and the interfaces between them before choosing how to implement.

  • Organize code around responsibilities

    Group related rules and data by domain and keep interfaces explicit, so one part can change without forcing every consumer to change with it.

  • Build, review and test

    Make a focused change, review its behavior and record the reasons for important decisions. Test normal flows, boundaries and failures, and inspect what automation cannot establish.

  • Release, operate and learn

    Identify what is being released and who can approve it. Observe the system afterwards, plan recovery and use what the team learns to refine the next change.

Illustrative story

See the stages applied to one small change.

A workshop booking rule changes so a reservation cannot exceed the places available.