Create a scope map a builder, developer, and operator can all test.
A minimum viable product is the smallest complete service that produces a useful result and can be operated responsibly. A small collection of disconnected screens is only a prototype.
Write the value loop in two sentences
User sentence: A specific user takes a specific action and receives a specific result. Operating sentence: A named team or system reviews, fulfills, supports, or reconciles that action.
Example: “A tenant submits a maintenance issue with photos and receives a trackable reference. A property team triages the issue, assigns work, communicates status, and closes it with evidence.”
Map actors and permissions
List end users, staff roles, administrators, providers, and automated workers. For each, define create/read/update/delete/approve/export powers by object and state. Add ownership and tenant boundaries. If the first release uses staff accounts but not end-customer identity, say so explicitly.
Define records before screens
| Record | Key fields | Relationships | Lifecycle |
|---|---|---|---|
| Request | Type, description, location, priority, status | Requester, property, attachments, assignments | Draft → submitted → triaged → active → closed |
| Assignment | Owner, due time, acceptance | Request, staff/vendor | Offered → accepted → completed / returned |
| Message | Body, visibility, sent state | Request, author, recipient | Queued → delivered / failed |
| Evidence | File, caption, capture time | Request, uploader, completion | Uploaded → reviewed → retained/deleted |
Draw the normal path and three exceptions
For each transition, name the actor, trigger, validation, saved data, notification, audit event, and next owner. Then map at least these exceptions:
- Invalid or incomplete submission
- Provider, network, or notification failure
- Duplicate action or repeated button press
- Unauthorized access attempt
- Cancellation, correction, or reopened work
- Staff unavailable or due time missed
Give operations a real surface
The MVP needs a place to find unassigned, failed, overdue, disputed, and completed work. Define search, filters, ownership, notes, status corrections, exports, and audit. Email notifications alone are not an operations console.
State external dependencies honestly
List payment, email, SMS, mapping, identity, storage, analytics, mobile store, domain, and other providers. For each, record account owner, environment, credentials, limits, cost, data shared, webhook or callback behavior, outage response, and evidence required before calling it connected.
Write acceptance as observable evidence
- Given a defined user and starting state, the action succeeds.
- The intended record and audit event exist once.
- The right staff role sees the work; another role cannot.
- The user receives accurate status.
- A provider failure is visible and recoverable.
- Data exports in a usable form.
- The flow works by keyboard and on a representative mobile viewport.
- Logs do not expose secrets or unnecessary personal information.
Make exclusions deliberate
An exclusion says what will not exist and how the first release handles the need. “No automated dispatch; an operator assigns every submitted request from the queue” is testable. “Dispatch later” leaves today’s workflow incomplete.
Turn the map into a release slice
Order the work by dependencies rather than by page. Establish identity and the core record, then the normal transition, the staff queue, notifications, and repair path. Demonstrate a thin vertical slice early: one user completes one real outcome while operations can see and recover it. Add variation only after that loop is observable.
Keep a decision log for scope changes. Record the requested change, reader or business value, affected states and roles, new provider or data risk, acceptance evidence, and what leaves the release in exchange. This prevents a “small field” from silently adding a new workflow.
Use the map as the scenario in the platform evaluation scorecard. If mobile distribution is required, add the release-readiness chain before estimating completion.