Define
Decide what needs to be true.
Define turns intent into something that can be built without relying on implicit context.
Here you clarify the problem, requirements, constraints, decisions, architecture, risks, contracts and the decomposition the work needs in order to start.
You are in Define when you have to answer:
- What are we trying to change?
- For whom?
- Which behaviours need to exist?
- Which constraints cannot be violated?
- Which decisions have to be made before implementation?
- What will count as success?
- Inputs
- Intent, the problem, existing context, constraints and available knowledge.
- Outputs
- Requirements, decisions, design, contracts, risks and work defined well enough to execute.
Define is over when
the next piece of work can be executed without anyone guessing intent or rebuilding essential decisions.
Do not mistake Define for
writing documentation for its own sake. The goal is not to produce files. It is to remove the ambiguity that matters before it turns into code.