Salesforce Solution Design: [Programme or org name]
Solution design document for a Salesforce implementation: org strategy, licences and personas,
data model and large data volumes, sharing and visibility, identity, automation and transaction
design, integration (APIs, Platform Events, Change Data Capture, Pub/Sub API), Agentforce agents,
environments and DevOps, data migration, performance against governor limits, and a review against
the five pillars of the Salesforce Well-Architected framework (Trust, Reliability, Operational
Excellence, Resource and Cost Optimization, Fairness) with its Agentic Enterprise lens, as
published on architect.salesforce.com in September 2026. Replace every [bracketed] value and
every row marked Example.
Document control
| Field | Value |
|---|
| Document ID | [SFD-001] |
| Programme | [Programme name] |
| Org name and ID | [Org name], [15 or 18 character org ID] |
| Edition and clouds | [Enterprise / Unlimited], [Sales Cloud, Service Cloud, Experience Cloud, Data 360, Agentforce] |
| Infrastructure | [Hyperforce region, for example EU or US instance] |
| Target release | [Release name, for example Winter '27] |
| Version | [0.1] |
| Status | [Draft / In review / Approved / Superseded] |
| Owner | [@salesforce-architect] |
| Approvers/reviewers | [@enterprise-architect], [@security-architect], [@integration-lead], [@data-lead], [@product-owner] |
| Last updated | YYYY-MM-DD |
| Classification | [Internal / Confidential] |
| Related documents | [Fit-gap analysis], [Integration design], [Data migration strategy], [Cutover plan] |
Approvals
| Role | Name | Decision | Date |
|---|
| Business owner | [@name] | [Approve / Approve with conditions / Reject] | YYYY-MM-DD |
| Enterprise architecture | [@name] | [Decision] | YYYY-MM-DD |
| Security and privacy | [@name] | [Decision] | YYYY-MM-DD |
| Integration authority | [@name] | [Decision] | YYYY-MM-DD |
| Salesforce platform owner | [@name] | [Decision] | YYYY-MM-DD |
Revision history
| Version | Date | Author | Change summary |
|---|
| 0.1 | YYYY-MM-DD | [@name] | First draft |
| 1.0 | YYYY-MM-DD | [@name] | Example: Approved for build of release 1 |
Contents
1. Scope, drivers and principles
1.1 Business drivers and outcomes
| ID | Driver | Measurable outcome | Owner |
|---|
| DRV-001 (Example) | Fragmented customer view across three legacy CRMs | One account and contact record per customer; duplicate rate below 2 % | @sales-ops-lead |
| DRV-002 (Example) | Case handling time too high | Median case resolution time reduced by 25 % within two quarters of go-live | @service-lead |
| [DRV-NNN] | [Driver] | [Outcome and target] | [@owner] |
1.2 Scope
| In scope | Out of scope |
|---|
| Example: Lead to opportunity, quote, case management, partner portal | Order fulfilment and invoicing (remain in ERP) |
| Example: Migration of open opportunities and five years of closed cases | Marketing automation (separate programme) |
| [Capability or process] | [Capability or process] |
The process-level scope and the standard-versus-custom decision for each requirement come from the
Fit-gap analysis (architecture/fit-gap-analysis). Reference its requirement IDs in section 16
rather than repeating them.
1.3 Design principles
| ID | Principle | Consequence |
|---|
| SFP-001 (Example) | Configure before code: standard objects, declarative tools, then Apex | Custom objects and Apex need a recorded reason in the decision log |
| SFP-002 (Example) | One automation framework per object | Each object has one record-triggered entry point per context; no mixed trigger and flow logic on the same event without an ordering rule |
| SFP-003 (Example) | Salesforce is not the system of record for finance data | Prices, invoices and payment status are read through integration or external objects |
| SFP-004 (Example) | Design for the five-year data volume, not the go-live volume | Data model, sharing and archiving are sized in section 4 |
| SFP-005 (Example) | Everything moves through source control and a pipeline | No direct changes in production except data and approved emergency fixes |
| [SFP-NNN] | [Principle] | [Consequence] |
2. Org strategy
2.1 Single org or multiple orgs
Assess the options against the criteria below and record the choice in the decision log. A single
org is the default when business units share customers, products or service processes; separate orgs
are justified by hard isolation needs, incompatible release cadences or regulatory separation.
| Criterion | Weight | Single org (Example score 1-5) | Hub and spoke orgs (Example score 1-5) |
|---|
| Shared customer view across business units | 30 % | 5 | 2 |
| Data residency or legal separation | 20 % | 3 | 5 |
| Independent release cadence per unit | 15 % | 2 | 5 |
| Total cost of ownership (licences, integration, admin) | 20 % | 5 | 2 |
| Governance complexity | 15 % | 4 | 2 |
| Weighted total | 100 % | 4.00 | 3.05 |
Example calculation: single org = 0.30 x 5 + 0.20 x 3 + 0.15 x 2 + 0.20 x 5 + 0.15 x 4 = 1.50 +
0.60 + 0.30 + 1.00 + 0.60 = 4.00. Hub and spoke = 0.30 x 2 + 0.20 x 5 + 0.15 x 5 + 0.20 x 2 + 0.15 x 2
= 0.60 + 1.00 + 0.75 + 0.40 + 0.30 = 3.05. Replace the weights and scores with your own, agree the
weights before scoring, and record who scored.
2.2 Infrastructure and residency
| Item | Decision |
|---|
| Hyperforce region | [Region], chosen because [residency, latency, customer contract] |
| Data residency obligations | [GDPR, sector rules, customer contracts]; see Data residency and sovereignty assessment (compliance/data-residency-sovereignty-assessment) |
| Instance and maintenance windows | [Instance name], [maintenance window from Salesforce Trust status] |
| Release preview strategy | [Use preview sandboxes to test each release before production upgrade] |
| Add-on encryption and monitoring | [Shield Platform Encryption, Event Monitoring, Field Audit Trail: in or out of scope] |
2.3 Release cadence
Salesforce ships three major releases a year (Spring, Summer and Winter). Winter '27 became
generally available on 12 October 2026 per the Salesforce release announcement. Plan a regression
cycle in a preview sandbox for every release, and keep a register of release updates (enforced
changes) with the date each one is enforced.
3. Licences and personas
| Persona ID | Persona | Count (year 1 / year 3) | Licence type | Permission set group | Apps and channels |
|---|
| PER-001 (Example) | Inside sales rep | 120 / 180 | Sales Cloud | PSG_Sales_Rep | Sales Console, mobile app |
| PER-002 (Example) | Service agent | 300 / 350 | Service Cloud | PSG_Service_Agent | Service Console, omni-channel |
| PER-003 (Example) | Partner user | 2,000 / 5,000 | Partner community licence | PSG_Partner | Partner portal (Experience Cloud) |
| PER-004 (Example) | Agentforce agent | n/a | Consumption-based (check contract) | Agent user permission set | Service channel |
| [PER-NNN] | [Persona] | [Count] | [Licence] | [PSG] | [Apps] |
Check each feature against the licence it needs. Record entitlements that drive cost by consumption
(API calls, Data 360 credits, agent conversations or actions, storage) in section 12.3.
4. Data model and large data volumes
4.1 Entity relationship overview
The diagram shows the core objects for release 1 and their cardinality; custom objects end in __c.
4.2 Object inventory
| Object | Standard or custom | System of record | Records at go-live | Records at year 5 | Growth driver | Archive rule |
|---|
| Account (Example) | Standard | Salesforce (customer master synchronised to MDM) | 400,000 | 650,000 | New customers | None |
| Case (Example) | Standard | Salesforce | 1,200,000 | 9,000,000 | 1.5 M cases a year | Closed cases older than 3 years to archive |
| Asset (Example) | Standard | ERP | 2,500,000 | 4,000,000 | Installed base | None |
| Service_Contract__c (Example) | Custom | ERP | 80,000 | 120,000 | Contract renewals | Expired over 7 years |
| [Object] | [Type] | [System] | [Count] | [Count] | [Driver] | [Rule] |
Treat an object as a large data volume object when it reaches millions of records or when queries,
sharing recalculation or reports on it already slow down in a full copy sandbox. For each such
object record: the selective filters that every query uses, the indexed fields (standard indexes,
custom indexes requested through Support, external ID fields), whether a skinny table is needed, and
the archive target (Big Objects, an external store read through Salesforce Connect, or the data
platform).
4.3 Data skew register
| ID | Skew type | Object and parent or owner | Expected child or owned records | Mitigation |
|---|
| SKW-001 (Example) | Account data skew | Case under the "Unknown customer" account | 300,000 | Spread across 20 placeholder accounts by region; drive customers to identify themselves |
| SKW-002 (Example) | Ownership skew | Leads owned by the integration user | 1,000,000 | Assign to queues or regional owner users outside the role hierarchy |
| SKW-003 (Example) | Lookup skew | Product2 referenced by Asset | 2,500,000 | Avoid record locks: load sorted by parent, serial mode for parent updates |
| [SKW-NNN] | [Type] | [Object] | [Count] | [Mitigation] |
Salesforce guidance commonly treats around 10,000 child records under one parent, or owned by one
user, as the point where skew begins to cause locking and sharing recalculation problems. Check the
current large data volume guidance and test with production-scale volumes in a full copy sandbox
before accepting any design that concentrates records.
5. Sharing and visibility
5.1 Org-wide defaults
| Object | Internal default | External default | Grant access using hierarchies | Reason |
|---|
| Account (Example) | Private | Private | Yes | Sales territories must not see each other's customers |
| Opportunity (Example) | Private | Private | Yes | Pipeline confidentiality |
| Case (Example) | Private | Private | Yes | Partners see only their customers' cases |
| Product2 (Example) | Public read only | Public read only | n/a | Catalogue is not confidential |
| [Object] | [Default] | [Default] | [Yes / No] | [Reason] |
5.2 Access layers
Describe each layer that opens access above the defaults, in this order: role hierarchy, sharing
rules (owner-based and criteria-based), teams (account, opportunity, case), territory management,
manual sharing, restriction rules (which narrow access), and Apex managed sharing. For external
users, describe sharing sets, share groups and the external role hierarchy. Keep the role hierarchy
shallow and modelled on data access, not on the organisation chart.
| ID | Mechanism | Object | Rule | Grants | Owner |
|---|
| SHR-001 (Example) | Criteria-based sharing rule | Case | Region = EMEA | Read/write to EMEA Service group | @service-lead |
| SHR-002 (Example) | Sharing set | Case | Partner account = user's account | Read to partner users | @channel-lead |
| SHR-003 (Example) | Restriction rule | Contract | Classification = Restricted | Limits visibility to Legal group | @legal-lead |
| [SHR-NNN] | [Mechanism] | [Object] | [Rule] | [Grant] | [@owner] |
5.3 Field and object permissions
Grant object and field permissions only through permission sets combined into permission set groups;
keep profiles minimal. List sensitive fields (personal data, pricing, health or financial data) and
the permission set that grants each one. Plan for sharing recalculation time when changing defaults
or rules on large objects and schedule it in a maintenance window.
6. Identity and access
| Population | Identity provider | Protocol | Provisioning | MFA | Session policy |
|---|
| Employees (Example) | Corporate IdP | SAML 2.0 or OpenID Connect | SCIM or just-in-time provisioning | Enforced by IdP | [Timeout, IP ranges] |
| Partners (Example) | Salesforce as IdP with partner federation option | OpenID Connect | Self-registration with approval | Required | [Policy] |
| Customers (Example) | Customer identity on Experience Cloud | OpenID Connect, social sign-on | Self-registration | Risk-based | [Policy] |
| Integrations (Example) | Connected app or external client app | OAuth 2.0 client credentials or JWT bearer flow | Created by platform team | n/a | Scoped permissions, IP restrictions |
| [Population] | [IdP] | [Protocol] | [Method] | [MFA] | [Policy] |
Use one integration user per connected system so that audit trails and permission scopes stay
separable. Customer and partner identity design belongs in CIAM solution design
(security/ciam-solution-design) when it is shared with other channels. Note that Salesforce has
removed some legacy OAuth flows for its own CLI connected app (the Trust pillar guidance records
that the device flow was blocked from 28 August 2025); review every connected app for flows that
Salesforce is retiring.
7. Automation and transaction design
7.1 Tool selection
| Need | Preferred tool | Use Apex when |
|---|
| Same-record field updates on create or edit | Record-triggered flow, before save | Logic needs complex collections or must run for very high bulk volumes efficiently |
| Related-record updates, notifications | Record-triggered flow, after save | Cross-object logic needs strict ordering or transaction control |
| Guided user processes | Screen flow | Custom user interface beyond flow screens (Lightning Web Components) |
| Scheduled or batch work | Scheduled flow for small sets | Large data volumes: Batch Apex, Queueable Apex |
| Callouts to external systems | Flow with HTTP callout or external services | Complex retry, payload shaping, or many callouts |
| Event-driven reactions | Platform event-triggered flow | High volume subscribers, ordering, or replay handling |
Salesforce publishes decision guides for automation tool choice on architect.salesforce.com; record
the guide version you followed.
7.2 Automation inventory and order
| ID | Object | Context | Tool | Purpose | Order | Bulk-safe tested |
|---|
| AUT-001 (Example) | Case | Before save | Flow | Default priority and entitlement | 1 | Yes, 200 records |
| AUT-002 (Example) | Case | After save | Apex trigger handler | Milestone and SLA calculation | 2 | Yes, 10,000 records via Bulk API |
| AUT-003 (Example) | Case | After save, async path | Flow | Notify account team | 3 | Yes |
| [AUT-NNN] | [Object] | [Context] | [Tool] | [Purpose] | [Order] | [Result] |
7.3 Governor limits to design against
The per-transaction Apex limits below are the ones designs most often hit. Values were checked in
October 2026 against the Apex Developer Guide and the Reliability pillar; confirm them for your
release.
| Limit | Synchronous | Asynchronous |
|---|
| SOQL queries issued | 100 | 200 |
| Records retrieved by SOQL | 50,000 | 50,000 |
| DML statements | 150 | 150 |
| Records processed by DML | 10,000 | 10,000 |
| CPU time | 10,000 ms | 60,000 ms |
| Heap size | 6 MB | 12 MB |
| Cumulative callout time in one transaction | 120 s | 120 s |
Set a design headroom target, for example keep normal peak usage below 70 % of each limit so that
unusual records and future logic still fit. Count limits for the whole transaction, including every
flow, trigger, managed package and process that the save fires.
8. Integration
8.1 Integration patterns
| Pattern | Salesforce capability | Use for |
|---|
| Request and reply | REST or SOAP API, Apex callouts, External Services | Real-time lookups (credit check, price) |
| Fire and forget events | Platform Events published from Apex, flow or API | Business events consumed by middleware or other orgs |
| Data change propagation | Change Data Capture | Replicating record changes to data platform or MDM |
| Streaming subscription | Pub/Sub API (gRPC) | High-volume event consumption with replay |
| Bulk data | Bulk API 2.0 | Nightly loads, migration, large extracts |
| Data virtualisation | Salesforce Connect with external objects | Show ERP data without copying it |
Platform events and change data capture events are retained for 72 hours; a subscriber can replay
from a stored replay ID within that window, but Salesforce does not guarantee events older than 72
hours. Design a reconciliation job for any outage longer than the window.
8.2 Interface catalogue
| ID | Source | Target | Pattern | Trigger and frequency | Volume per day | Middleware | Error handling | Owner |
|---|
| INT-001 (Example) | ERP | Salesforce Account and Asset | Bulk API 2.0 upsert by external ID | Nightly and on change | 20,000 | [Integration platform] | Error file, retry, alert | @integration-lead |
| INT-002 (Example) | Salesforce Opportunity | ERP sales order | Platform event Order_Requested__e | On stage Closed Won | 600 | [Integration platform] | Dead letter queue, replay | @integration-lead |
| INT-003 (Example) | Salesforce Case | Data platform | Change Data Capture through Pub/Sub API | Continuous | 50,000 | Streaming connector | Replay ID checkpoint, nightly reconciliation | @data-lead |
| [INT-NNN] | [Source] | [Target] | [Pattern] | [Trigger] | [Volume] | [Platform] | [Handling] | [@owner] |
Specify each interface in detail in Integration design (architecture/integration-design); align
with the enterprise rules in Integration strategy (architecture/integration-strategy) and, when an
event backbone exists, Event-driven architecture design
(architecture/event-driven-architecture-design).
9. Agentforce and AI
| ID | Agent or feature | Channel | Grounding data | Actions allowed | Human oversight | Success measure |
|---|
| AGT-001 (Example) | Service agent for order status | Web chat, messaging | Orders via Salesforce Connect, knowledge articles | Read order, create case, schedule callback | Hand-off to human on low confidence or customer request | 40 % of order status contacts resolved without hand-off |
| [AGT-NNN] | [Agent] | [Channel] | [Data] | [Actions] | [Oversight] | [Measure] |
For each agent record the agent user and its permission sets, the data masking and retention
settings, the test set used for evaluation, and the monitoring in place after go-live. The Winter
'27 release notes state that Agentforce is enabled by default in orgs that have Agentforce access
through their edition or licences, with rolling enablement of existing orgs from September 2026, so
confirm the org settings and permission boundaries before the release reaches production.
Detailed agent behaviour belongs in AI agent specification (ai-data/ai-agent-spec), threats in
Agentic threat model (ai-data/agentic-threat-model).
10. Environments and DevOps
10.1 Environment plan
| Environment | Type | Purpose | Refresh cadence | Data | Owner |
|---|
| DEV-[n] (Example) | Scratch orgs or Developer sandboxes | Feature development | Per feature | Seed data from scripts | Developers |
| INT (Example) | Developer Pro sandbox | Integration of streams | Each sprint | Seed plus test data | Platform team |
| SIT (Example) | Partial copy sandbox | System and integration testing | Each release | Sample of production, masked | Test lead |
| UAT (Example) | Full copy sandbox | Acceptance, performance, training rehearsal | Before each major release | Full production copy, masked | Test lead |
| PROD | Production | Live | n/a | Live | Platform owner |
10.2 Source control and pipeline
| Item | Decision |
|---|
| Source of truth | [Git repository], metadata in source format |
| Packaging | [Unlocked packages per domain / org-based deployment] |
| Pipeline tool | [Salesforce DevOps Center / CLI-based pipeline in CI server / third-party tool] |
| Static analysis | [Code analyser rules, security scanner] |
| Test policy | Apex coverage above the 75 % deployment minimum with meaningful assertions; flow tests for critical flows |
| Data masking | [Data Mask or equivalent] for every sandbox holding production data |
| Hotfix path | [Hotfix branch and pipeline] |
Scratch orgs are created from a Dev Hub; when the Dev Hub runs on Hyperforce, its scratch orgs are
also created on Hyperforce. Check the scratch org allocation for your edition before planning one
org per developer per feature.
11. Data migration
| Step | Objects | Tool | Mode | Automation state | Reconciliation |
|---|
| 1 (Example) | Users, roles, queues | Metadata and CLI | n/a | n/a | Count and spot check |
| 2 (Example) | Account, Contact | Bulk API 2.0 | Parallel | Bypass custom permission set for migration user | Counts by type, sum of key fields |
| 3 (Example) | Asset | Bulk API 2.0 | Sorted by parent account | Bypass | Counts per account |
| 4 (Example) | Opportunity, Case, history | Bulk API 2.0 | Serial for locked parents | Bypass, sharing deferred | Counts, totals, sampling |
| 5 (Example) | Files and attachments | Bulk API or migration tool | Batched | Bypass | Checksums for a sample |
Use external ID fields on every migrated object so loads are repeatable upserts. Defer sharing
calculation for large loads where the org supports it, and plan the recalculation window. Full
scope, mock loads and fallback are in Data migration strategy
(architecture/data-migration-strategy); the reconciliation evidence goes in Data migration
reconciliation (project/data-migration-reconciliation).
12. Performance and limits
12.1 Org-level limits and consumption
| Limit or entitlement | Entitlement | Forecast peak | Headroom | Monitoring |
|---|
| API requests per 24 hours (Example) | [Per contract and licences] | 420,000 | [%] | Limits API, alert at 80 % |
| Asynchronous Apex executions per 24 hours (Example) | 250,000 or licences x 200, whichever is greater (check) | 60,000 | [%] | Apex jobs monitor |
| Data storage (Example) | [GB] | [GB at year 3] | [%] | Storage usage page |
| File storage (Example) | [GB] | [GB at year 3] | [%] | Storage usage page |
| Platform event deliveries (Example) | [Per add-on] | [Per day] | [%] | Usage metrics |
| [Limit] | [Value] | [Forecast] | [Headroom] | [Monitoring] |
12.2 Performance targets
| ID | Scenario | Target | Test method |
|---|
| PRF-001 (Example) | Open case record page in console | 95th percentile under 3 s | Browser timing in UAT full copy |
| PRF-002 (Example) | Bulk upsert of 20,000 assets | Completes in under 30 min without lock errors | Bulk API job in full copy |
| [PRF-NNN] | [Scenario] | [Target] | [Method] |
12.3 Consumption-based cost drivers
List every item billed by consumption: Data 360 credits, Agentforce conversations or actions, extra
API capacity, additional storage, sandbox add-ons and event delivery add-ons. For each, record the
unit, the forecast, the alert threshold and the owner who approves increases.
13. Security, privacy and compliance
| Control area | Design decision |
|---|
| Shared responsibility | [What Salesforce operates; what the customer configures and monitors] |
| Data classification | [Classification levels mapped to fields] |
| Encryption at rest | [Platform default / Shield Platform Encryption with tenant secrets / key management choice] |
| Event and audit monitoring | [Setup Audit Trail, Event Monitoring, Field History, Field Audit Trail retention] |
| Data protection and privacy | [Consent objects, right to erasure process, retention rules] |
| Third-party packages | [AppExchange security review evidence, permission review for each package] |
| Secure development | [Code review, static analysis, CRUD and field-level security checks in Apex] |
| Incident response | [Link to incident response plan; Salesforce support case path] |
Record privacy assessments in DPIA (compliance/dpia) and treat managed packages as part of your
trust boundary: review what data each package can read and send out.
14. Well-Architected review
The Salesforce Well-Architected framework, as published in September 2026, has five pillars and an
Agentic Enterprise lens that adds agent-specific considerations to each pillar. An earlier edition of
the framework was organised as Trusted, Easy and Adaptable; map any older review findings to the new
pillars rather than keeping two structures.
| Pillar | Topic areas reviewed (pillar page headings, Agentic lens: template prompts) | Rating (1-5) | Key finding | Action ID |
|---|
| Trust | Shared responsibility, security architecture, identity and access, data protection and privacy, compliance, secure development lifecycle, incident response | [n] | Example: Integration users share one profile | ACT-001 |
| Reliability | Reliability targets and SLOs, high availability, scalability and capacity, fault tolerance, disaster recovery and continuity, monitoring | [n] | Example: No reconciliation for event outages over 72 hours | ACT-002 |
| Operational Excellence | Observability and monitoring, DevOps practices, automation and efficiency, incident management, continuous improvement | [n] | Example: No alerting on flow errors | ACT-003 |
| Resource and Cost Optimization | Value and cost modelling, resource efficiency, licensing and consumption, monitoring and governance, continuous optimisation | [n] | Example: Data 360 credit forecast missing | ACT-004 |
| Fairness | Data quality and representation, accessibility and inclusive design, fairness in automation, AI fairness and bias detection, transparency and auditability, human oversight, non-discrimination in data access, user agency and consent, ethical AI governance | [n] | Example: Lead scoring model not checked for bias | ACT-005 |
| Agentic Enterprise lens | Suggested prompts (this template): agent permissions and audit, non-determinism, agent lifecycle, consumption cost, explainability and contestability | [n] | Example: No evaluation set for AGT-001 | ACT-006 |
| Action ID | Action | Pillar | Owner | Due |
|---|
| ACT-001 (Example) | One integration user and permission set group per system | Trust | @security-architect | YYYY-MM-DD |
| ACT-002 (Example) | Nightly reconciliation job for INT-003 | Reliability | @data-lead | YYYY-MM-DD |
| ACT-003 to ACT-006 (Example) | One row per finding in the pillar table: flow error alerts, credit forecast, bias check, agent evaluation set | [Pillar] | [@owner] | YYYY-MM-DD |
| [ACT-NNN] | [Action] | [Pillar] | [@owner] | YYYY-MM-DD |
15. Testing and release readiness
| Test level | Environment | Scope | Exit criterion |
|---|
| Unit (Apex, flow tests) | Scratch org or developer sandbox | Each component | All tests pass; coverage target met |
| System integration | SIT | INT-001 to INT-NNN end to end | No open severity 1 or 2 defects |
| Sharing and security | UAT full copy | Each persona logs in and sees only permitted records | Signed matrix per persona |
| Performance and volume | UAT full copy | PRF-001 to PRF-NNN | Targets met |
| Release regression | Preview sandbox | Critical journeys after each Salesforce release | Pass before production upgrade |
| User acceptance | UAT full copy | Business scenarios | Business sign-off |
Go-live readiness is judged in Go-live readiness review (project/go-live-readiness-review),
cutover steps in Cutover plan (project/cutover-plan) and the stabilisation period in Hypercare
plan (ops/hypercare-plan).
16. Decisions, risks and traceability
16.1 Decision log
| ID | Decision | Options considered | Pillar trade-off | Date | Approver |
|---|
| DEC-001 (Example) | Single org on Hyperforce EU | Single org, hub and spoke | Trust (residency) versus Resource and Cost Optimization | YYYY-MM-DD | Architecture board |
| [DEC-NNN] | [Decision] | [Options] | [Trade-off] | YYYY-MM-DD | [Approver] |
16.2 Risks
| ID | Risk | Likelihood | Impact | Response | Owner |
|---|
| RSK-001 (Example) | Ownership skew on leads causes lock errors during migration | Medium | High | SKW-002 mitigation, serial loads | @data-lead |
| RSK-002 (Example) | Agent default enablement in a release changes behaviour before review | Medium | Medium | Release update register, preview sandbox test | @platform-owner |
| [RSK-NNN] | [Risk] | [L / M / H] | [L / M / H] | [Response] | [@owner] |
16.3 Traceability matrix
| Requirement ID (fit-gap) | Design element | Build item | Test case | Status |
|---|
| FG-014 (Example) | SHR-002 sharing set | Story SF-231 | TC-SEC-07 | Designed |
| FG-022 (Example) | INT-002 platform event | Story SF-310 | TC-SIT-12 | Built |
| [Requirement] | [Element] | [Item] | [Test] | [Status] |
17. Glossary and references
17.1 Glossary
| Term | Meaning |
|---|
| Org-wide default | The baseline record access for an object before any sharing opens it up |
| Permission set group | A bundle of permission sets assigned to a persona |
| Data skew | Too many child or owned records concentrated on one parent or owner |
| Platform Event | A custom event message published and subscribed on the event bus |
| Change Data Capture | Events published automatically when records change |
| Pub/Sub API | gRPC API to publish and subscribe to platform events and change events |
| Scratch org | A disposable, source-driven org created from a Dev Hub |
| Hyperforce | Salesforce infrastructure running on public cloud providers |
| Agentforce | Salesforce platform for building and running AI agents |
| Data 360 | Salesforce data platform, previously named Data Cloud |
17.2 References
| Reference | Version or date checked | Use |
|---|
| Salesforce Well-Architected overview and framework pages, architect.salesforce.com | Five pillars and Agentic Enterprise lens, checked 2026-10-23 | Section 14 |
| Salesforce blog, "new Well-Architected framework" | 14 September 2026 | Edition change from Trusted, Easy, Adaptable |
| Apex Developer Guide, Execution Governors and Limits, developer.salesforce.com | Checked October 2026 | Section 7.3 |
| Pub/Sub API Developer Guide, Event Message Durability | Checked October 2026 | Section 8.1 retention |
| Salesforce DX Developer Guide, scratch orgs and Dev Hub | Checked October 2026 | Section 10 |
| Salesforce Winter '27 release announcement, salesforce.com news | 31 August 2026 | Section 2.3 |
| Salesforce Winter '27 release notes, Agentforce auto-enablement | Checked October 2026 | Section 9 |
Standard and licence note
Structure aligned with the Salesforce Well-Architected framework (five pillars: Trust, Reliability,
Operational Excellence, Resource and Cost Optimization, Fairness, with the Agentic Enterprise lens)
as published on architect.salesforce.com in September 2026, and with Salesforce developer
documentation for governor limits, event durability and DevOps. Only pillar names, topic names,
product names and checked limit values are used; all explanations, criteria and examples are
original text written for this collection. Check the current Salesforce documentation for your
release before relying on any limit or feature. Salesforce, Agentforce, Hyperforce and related
product names are trademarks of their owners; this template is not affiliated with or endorsed by
them. Template licence: MIT.