Free guide for agencies
How to scope a custom software project.
A useful brief does not prescribe every screen or technical choice. It gives the delivery team enough context to understand the problem, expose the hard parts, and plan the first release.
Before you start
First, make sure the project is actually custom.
Custom software earns its cost when an agency’s client has a workflow, integration, data model, or customer experience that an off-the-shelf product cannot handle cleanly. If a configured product solves most of the problem, start there.
When the work is genuinely custom, use the five stages below to build a brief that a technical partner can act on.
01 / Scope
Name the outcome before the feature list.
Start with the change the client wants to create. Faster approvals, fewer spreadsheet handoffs, a new paid product, or a clearer customer experience gives the team a reason for every later decision.
Include:
- The business outcome and how the client will judge it
- The people who will use, approve, support, or administer the system
- The current workflow, including the awkward manual parts
- Required integrations, data sources, and outputs
- Known deadlines, budgets, compliance rules, and contractual limits
Separate the first useful release from later possibilities. A smaller first release is not a compromise when it tests the riskiest assumption.
02 / Design
Design the uncertain paths first.
Do not spend the early design budget polishing a dashboard while the core workflow is unresolved. Prototype the moment where users make a hard decision, move data between systems, or recover from an error.
Resolve:
- The main user journey and its success state
- Empty, loading, error, permission, and recovery states
- Responsive behavior and accessibility expectations
- Who owns content, design approval, and client feedback
03 / Build
Give engineering the boundaries, not a mystery stack.
Share the client’s existing systems, hosting constraints, security requirements, and support expectations. Let the delivery team recommend the architecture unless the client has a real reason to mandate it.
Prepare access to:
- API documentation, representative data, and integration owners
- Brand systems, design files, and approved content
- Development, staging, and production environments
- The person empowered to answer product questions
04 / Launch
Treat launch as an operating plan.
A deployed application is not finished if nobody knows how to observe, support, or recover it. Define ownership before production traffic arrives.
- Release approval and rollback responsibility
- Monitoring, alerting, logs, backups, and retention
- Support contacts and incident expectations
- Training, migration, and customer communication
05 / Iterate
Decide what you will learn after launch.
Pick a few signals that connect directly to the original outcome. Usage counts are useful only when they help the team decide what to improve, remove, or build next.
Set the first review date before launch. Bring support notes, user feedback, performance data, and the original success measure. That gives the next round of work a real starting point.
Need a technical read on the brief?
Send it before every answer is settled.
The useful conversations happen while there is still room to simplify the scope, test an assumption, or choose a better path.
Send the brief to Dante