Intent before solution
Requests often arrive as a ready-made solution, and building it as is can miss the real problem. This lesson teaches you to trace a request back to the intent behind it, and to decide what the spec imposes and what it leaves to developers and agents, without locking them into a premature solution.
Lesson objective
By the end of this lesson, you will be able to rewrite a request phrased as a solution into a complete intent (problem, target outcome, constraints, non-goals), and decide which parts of the solution to fix and which to leave open.
Topics covered
- problem before solution
- product intent
- non-goals
- feature scoping
- specifications
Where it fits
The job of a spec
What is a spec for, at what level should you write it, and how do you say what you want without dictating how to do it?
Lessons in this module
- What a spec is for, and at what level to write it
- Intent before solution (this lesson)
What you will learn in the course
This lesson is part of the course Write specs that developers and AI agents understand
- Choose the level of spec suited to the decision at hand (PRD, feature spec, ticket) and know what each must contain.
- State the intent of a feature (problem, target outcome, constraints, non-goals) separately from the solution, to leave the right room to the team and the agent.
- Write verifiable, declarative and unambiguous Given/When/Then acceptance criteria, including as tables of examples.
- Identify edge cases and non-functional requirements (performance, security, accessibility, personal data) and make them testable.
- Write a spec and an intent file that a coding agent can use (context, constraints, files involved, out of scope, verifiable definition of done).
- Review a coding agent's plan against the spec, spot gaps before it writes code, then check the evidence of what was delivered.
- Keep a spec alive (versions, decisions, updates when the code reveals a case) and spot the anti-patterns that make it useless.
Related courses
- Design and Validate a Product Experience with AIJunior · ~2 hr 30 min
- Instrument a product and use data to make decisionsAdvanced · ~3 hr 30 min
- Prioritize and build an outcome-based roadmapAdvanced · ~2 hr 30 min