BUILD
The brief that makes a web application project go well
5 min read
A web application brief is most useful when it describes users, permissions, data and integrations rather than visual direction, because those four determine the shape of the build while the design can be resolved during it.
Briefs for application projects tend to be long on appearance and short on structure. Pages of reference sites and colour direction, a sentence about what the thing does.
Design matters and it is the part that can be resolved collaboratively once work starts. The six things below cannot, because they determine the architecture, and changing them later is where projects lose their timeline.
One: who the users are, by type
Not how many, but how many kinds. A customer, an internal administrator and a read-only manager are three types, and each needs its own screens, permissions and testing.
The count of user types is one of the strongest predictors of effort, and it is usually underestimated because the second and third types feel like variations on the first until someone tries to build them.
Two: what each type may do
For each type, what they can see, create, change and delete. The interesting entries are the ones where the answer is "their own" — a customer sees their own orders, a manager sees their team's.
Those scoped permissions are a design decision that reaches through the whole data model, and discovering one late usually means revisiting queries written on the assumption it did not exist.
Three: the data you already have
Most applications are not starting from nothing. There is a spreadsheet, an old system, an export from something. What exists, in what format, how clean, and whether it has to come across.
Migration is routinely treated as a last-week task and is routinely the thing that overruns, because real data contains cases the new model did not anticipate. Naming it in the brief gets it estimated rather than absorbed.
- User types and what each may do, including anything scoped to "their own"
- Existing data: where it lives, what shape it is in, whether it migrates
- Systems to integrate with, and whether each has a usable API
- Realistic volumes: records, users, concurrent use at the busiest moment
- What must be true for this to be considered done
- What is explicitly not in scope for version one
Four: integrations, and whether they are actually possible
Every application brief names systems it should talk to. The question that matters is whether each has an API you can use, with credentials you can obtain, documented well enough to build against.
Sometimes the answer is no, and the integration becomes a file exchange or a manual step. Far better to establish that in week one than in the week before launch, because it changes what the application is.
Five and six: volumes, and the definition of done
Volumes separate a straightforward build from one that needs attention to performance. A thousand records is a different application from ten million, and twenty concurrent users is different from two thousand at nine on a Monday.
The definition of done is the one that prevents the longest arguments. Written as observable outcomes — this person can complete this task, this report balances against that system — it tells everyone when version one is finished. Without it, scope grows by a feature a week, each individually reasonable.
Questions we get asked
What if we cannot write a brief in this much detail?
That is common and it is a reason for a short paid discovery phase rather than a reason to start building. A couple of weeks producing the structure above gives you a document you own, which can be taken to several suppliers for comparable quotes.
Should we have designs before approaching a developer?
Not necessarily. Designs produced without knowledge of the data and permissions often have to be reworked, and they can anchor the project on an interface before anyone has agreed what it is doing. Wireframes of the three or four most important screens are usually more useful than finished visuals.
Can a web application be fixed price?
Yes, where the brief covers the six areas above and the scope is genuinely fixed. Without that, a fixed price either carries a large contingency or gets protected through change requests, and both tend to cost more than being clear at the start.