Perform solution envisioning and requirement analysis
Discovery before design
Envisioning starts with structured investigation: interview sponsors, process owners, and end users; map the current state and the desired future state; and record every requirement with an owner, a priority, and an acceptance criterion. Separate functional requirements (what the system must do) from non-functional requirements (performance, availability, data residency, accessibility, auditability, retention) and from constraints (budget, timeline, licenses already owned, regulatory rules). A requirement without a measurable acceptance criterion is an opinion.
Fit-gap is a decision framework
For each requirement, ask whether standard capability satisfies it. Classify each gap as configure, extend, change the process, or out of scope, and attach cost, risk, and lifecycle impact. The most common failure here is treating every stakeholder wish as a gap and defaulting to custom code, which inflates testing, ALM, and upgrade burden. The second most common is ignoring licensing and capacity implications until after the design is sold.
Traps that appear in questions
- Confusing a requirement with a proposed solution ("we need a canvas app" is a solution; the requirement is the business outcome).
- Skipping non-functional requirements, then failing to explain why the design misses a three-second load target.
- Forgetting ALM and environment implications during requirement capture.
- Accepting one stakeholder's view as the organizational requirement.
Rule of thumb
Use the 80/20 disposition rule: if standard functionality covers roughly 80 percent of a need and the rest can be handled by a documented process change, prefer configuration plus process over custom code. Worked example: a sales team asks for a custom risk-scoring button on the account form. Business rules and a cloud flow can compute and display the score without code, so record it as configure, confirm the scoring formula with the business, and set a UAT acceptance criterion that the score recalculates within 30 seconds of a relevant field change.