Salesforce Dictionary - Free Salesforce GlossarySalesforce Dictionary
Salesforce Consultant
easy

What's the difference between functional and technical requirements?

Both describe what the system needs to do, but at different levels.

Functional requirementswhat the system does from a user/business perspective.

Examples:

  • "When a sales rep marks an opportunity as Closed Won, the customer should automatically receive a welcome email."
  • "Cases above $10K in potential refund must be routed to a manager for approval."
  • "The dashboard must show pipeline by stage, refreshed every 15 minutes."

Functional requirements are business-language, observable, testable by an end user.

Technical requirementshow the system implements the functional behaviour.

Examples:

  • "Email sent via Marketing Cloud transactional API; payload includes order details JSON."
  • "Approval routing implemented via Apex trigger calling Approval Process; manager set via custom Lookup field."
  • "Dashboard backed by Reporting Snapshot scheduled every 15 mins, captured to a custom object, displayed via standard Dashboard component."

Technical requirements are implementation-language, architecture-specific, testable by developers.

Non-functional requirements are a third category — properties of the system rather than features:

  • "Page load time < 2 seconds for 95th percentile."
  • "Support 5,000 concurrent users."
  • "Compliance with SOC 2 Type II."

Senior consultants ensure all three are captured and traceable: each functional requirement maps to one or more technical requirements; non-functional requirements gate technical choices.

Common mistake: writing "technical-sounding" requirements ("use Lightning Web Component for the search bar") in the functional doc — pre-decides implementation, may not survive technical review.

Why this answer works

Foundational. The three-category split (functional, technical, non-functional) and the "don't over-specify" caution are senior signals.

Follow-ups to expect

Related dictionary terms