Communicating clearly with stakeholders is a fundamental skill that Salesforce architects must master in order to succeed.
In this presentation, Matthew will show how to use diagrams to increase engagement and clarity.
We will look at how to extract requirements, as well as examples of diagrams that can be used to meet different objectives.
Matthew will also share information on reference diagrams available from Salesforce, tools, templates, and shape libraries that I use to create stunning diagrams!
2. 1994-2009 Lots of interesting but not Cloud stuff
2009 First Salesforce project
2011 Started Bristol SF User Group
2012 First SF Cert (Admin)
First Dreamforce
2013 More certs & lots of projects
2014 Started London Admin User Group
2015 Recognised as Salesforce MVP
First Trailhead badge & Trailblazer hoodie
Moved from SMB to Enterprise projects
Moved from consultant to architect role
2016 Lots of certs & lots of projects & lots of diagrams
2017 Recorded Diagramming Salesforce Solutions video for Pluralsight
2018 Video released free to watch & included on Trailhead
2019 Live solution & diagram videos with Gemma for Ladies Be Architects
…
Present day Diagramming Salesforce Solutions
updated & presented at London’s Calling 2022
Matthew Morris
Salesforce Innovation Director, Capgemini
@matmorris
About me & about DSFS
Where I’m coming from
3. > Recap of Diagramming Salesforce Solutions
> Extract, structure, validate, communicate
> The 4 key diagrams
> Sequences, capabilities, and processes
> Salesforce templates & diagramming framework
Today
What I will cover:
7. The challenge – In real life, or a practice scenario
• Extract requirements
• Structure solution
• Validate
• Communicate
Works for “as-is” and “to-be” views
8. Extract
My approach
Actors (Licences)
• Front Office User (Salesforce)
• External Sales Agent (Ptnr Community)
• Operations Manger
• Regional Sales Manager
…
Salesforce Objects (Row count) - Owner
• Account (1M) – Front Office User
• Opportunity (20K) – External Sales
Agent
• Contract
• Case
• Lead
…
Systems (Status)
CRM (Replace)
Salesforce (New)
External Billing (Existing - External)
Energy Regulator (Existing - External)
Bank Payments (Existing - External)
Marketing Automation (Replace)
…
System-system Integrations -> <- <->
ERP <-> Salesforce
Salesforce <-> Marketing Automation
Salesforce <-> Energy Regulator
Salesforce <-> Bank Payments
Salesforce <-> External Billing
…
Make 4 lists from requirements/scenario
10. Validate
My approach
REQUIREMENT
Play-back of “as is” and “to be”
Enhance existing solution
Specify integration steps
Rapidly assess impact of a change
Coordinate testing & deployment
Demonstrate compliance
Integrate with external systems
DISCUSS WITH
System users
Salesforce Administrator
Salesforce Developer
The whole team
Test engineers, tech leads
Data Privacy, Legal, Infosec
External teams & systems integrators
Growing the team New team members
Use diagrams to inform discussion
Agree the vision Project sponsor
11. I use pictures to help communication because:
• Use same diagrams with many stakeholder groups
• Promotes consistent language
• Encourages engagement & collaboration
• Uncover “hidden” requirements
• Changes easily when requirements/solution changes
• Maintainable over time with clear “version history”
• Provide “just enough” information to inform choices
My approach
Communicate
Keep referring to your diagrams, refine & update them
13. DATA MODEL TELLS THE STORY OF:
• How objects are related
• The record types/owners
• The sharing OWD
• Objects with large data volumes
14. ROLE HIERARCHY TELLS THE STORY OF:
• Internal & external user roles
• How object owners are related
• Which users own which records
• How record access is shared
15. SYSTEM LANDSCAPE TELLS THE STORY OF:
• Existing systems that will remain or be replaced
• New systems that will be added
• Which systems need to be integrated
• Integration technologies (ETL & ESB)
• Third-party systems (e.g., AppExchange apps)
required
• Highlight Cloud vs. on-premise systems
• Show how the users will login
16. TESTING & DEPLOYMENT MANAGEMENT TELLS THE
STORY OF:
• The environments & how they connect
• Sandbox types & their capacity
• How metadata & data will be promoted
• How multiple projects can coexist
• What types of testing happen & where
• How Salesforce upgrades are validated
• How production bugs will be incorporated
• Additional tools & engineering (e.g., CI/CD)
18. Private 500K
Owner (Record type)
External owner
OBJECT
Number
of rows
Sharing
OWD
Role of
owner
Lookup Relationship
Master-detail Relationship
Salesforce Data Model – Valuable details
19. Private 5M
Sales Mgr (Person)
Relation Mgr (Biz)
Front Office
CONTRACT
Private 5M
Front Office
LEAD
Private 5M
Front Office
CASE
Private 5M
Sales Mgr (Person)
Relation Mgr (Biz)
ACCOUNT
Private 500K/year
Front Office
Sales Agent
OPPORTUNITY
50M/year
OPPORTUNITY
LINE ITEM
Private 1K
PRICEBOOK
ENTRY
100
PRODUCT
No Access 10
PRICEBOOK
Private 5M
Sales Mgr (Person)
Relation Mgr (Biz)
Front Office
CONTACT
Enhanced Salesforce Data Model
20. Private 5M
Sales Mgr (Person)
Relation Mgr (Biz)
Front Office
CONTRACT
Private 5M
Front Office
LEAD
Private 5M
Front Office
CASE
Private 5M
Sales Mgr (Person)
Relation Mgr (Biz)
ACCOUNT
Private 500K/year
Front Office
Sales Agent
OPPORTUNITY
50M/year
OPPORTUNITY
LINE ITEM
Private 1K
PRICEBOOK
ENTRY
100
PRODUCT
No Access 10
PRICEBOOK
Private 5M
Sales Mgr (Person)
Relation Mgr (Biz)
Front Office
CONTACT
!
Identify Database Hotspots
24. Development, Testing & Deployment + Source Control
Developer1
Dev Sandbox
Developer2
Scratch Org
Integration
Dev Pro
Sandbox
QA
Dev Pro
Sandbox
UAT
Partial Copy
Sandbox
Staging
Full Copy
Sandbox
Production
Feature
Branch 2
Feature
Branch 1
Dev Branch
Release
Branch
Master Branch
Hotfix Branch
UAT Stage Prod
QA
Automation
Apex unit tests
Regression tests
End-to-end tests User acceptance
User training
System-wide tests
Performance tests
Apex unit tests
Team
leader
TESTING
SANDBOX
DEV-OPS
37. User Community
Operational Support
(1st Line Support)
Issue identified
by User
User Logs Issue with
priority
Close
Support Team Assess
Ticket, Prioritise,
Categorize
Requires
3rd party
support?
Update ticket with
expected resolution
time
User Comms on
Resolution time
2nd Line
Salesforce Support team
Salesforce (3rd Line)
Assign to 3rd Line
Salesforce for
Resolution
User Comms on
Resolution
Status
Issue
resolved
User updated on Issue as
per agreed Priority
Update frequency
Support Assign to
Resolution Team and
Coordinate User
Updates
Salesforce Support
Teams
Resolve Issue and
Update Operational
Support on Progress
User Confirms
Issue Closure
Example Process Map : Simple Step-by-step
38. Example Process Map – Sales Orchestration : Overview
Identity Mgt.
Customer
Contact
Centre
Agent
Browser
X
Purchase
Flow
Orchestration
Print & Mail
Email
Welcome
Letter
Zuora360
data copy
Product
Catalogue
CPQ
Subscription
Mgt.
>> 9. (Batch process) Customer Welcome Pack
Printed
Materials
Delivery
Marketing Cloud Connect
Salesforce
Customer
Mgt.
Salesforce
Marketing
Mgt.
<< 1.Purchaser Information
>> 2.SF Customer Details
<<
3.Customer
Subscription
>>
4.Customer
Entitlements
<<
5.Customer
Entitlements
>>
6.Activation
Details
>> 7.Activation & Welcome
<< 8.Result
Browser
X
”OFF-LINE” SALES JOURNEY
Call
0.”Buy” 0.”Buy”
”ON-LINE” SALES JOURNEY
39. Example Process Map – Sales Orchestration : Buy Confirmed
Identity Mgt.
Customer
Contact
Centre
Agent
Browser
X
Purchase
Flow
Orchestration
Print & Mail
Email
Welcome
Letter
Zuora360
data copy
Product
Catalogue
CPQ
Subscription
Mgt.
>> 9. (Batch process) Customer Welcome Pack
Printed
Materials
Delivery
Marketing Cloud Connect
Salesforce
Customer
Mgt.
Salesforce
Marketing
Mgt.
<< 1.Purchaser Information
>> 2.SF Customer Details
<<
3.Customer
Subscription
>>
4.Customer
Entitlements
<<
5.Customer
Entitlements
>>
6.Activation
Details
>> 7.Activation & Welcome
<< 8.Result
Browser
X
”OFF-LINE” SALES JOURNEY
Call
0.”Buy” 0.”Buy”
”ON-LINE” SALES JOURNEY
Customer and product
particulars have been
entered into the browser or
mobile app and are passed
the purchase flow
orchestration.
0 Browser requests “Buy”
40. Example Process Map – Sales Orchestration : Customer Master Created
Identity Mgt.
Customer
Contact
Centre
Agent
Browser
X
Purchase
Flow
Orchestration
Print & Mail
Email
Welcome
Letter
Zuora360
data copy
Product
Catalogue
CPQ
Subscription
Mgt.
>> 9. (Batch process) Customer Welcome Pack
Printed
Materials
Delivery
Marketing Cloud Connect
Salesforce
Customer
Mgt.
Salesforce
Marketing
Mgt.
<< 1.Purchaser Information
>> 2.SF Customer Details
<<
3.Customer
Subscription
>>
4.Customer
Entitlements
<<
5.Customer
Entitlements
>>
6.Activation
Details
>> 7.Activation & Welcome
<< 8.Result
Browser
X
”OFF-LINE” SALES JOURNEY
Call
0.”Buy” 0.”Buy”
”ON-LINE” SALES JOURNEY
Customer must exist in
Salesforce CRM in order
to complete purchase.
New record will be
created or matching
customer located.
1 Purchaser Information
41. Example Process Map – Sales Orchestration : Subscription Created
Identity Mgt.
Customer
Contact
Centre
Agent
Browser
X
Purchase
Flow
Orchestration
Print & Mail
Email
Welcome
Letter
Zuora360
data copy
Product
Catalogue
CPQ
Subscription
Mgt.
>> 9. (Batch process) Customer Welcome Pack
Printed
Materials
Delivery
Marketing Cloud Connect
Salesforce
Customer
Mgt.
Salesforce
Marketing
Mgt.
<< 1.Purchaser Information
>> 2.SF Customer Details
<<
3.Customer
Subscription
>>
4.Customer
Entitlements
<<
5.Customer
Entitlements
>>
6.Activation
Details
>> 7.Activation & Welcome
<< 8.Result
Browser
X
”OFF-LINE” SALES JOURNEY
Call
0.”Buy” 0.”Buy”
”ON-LINE” SALES JOURNEY
Customer Id and details
of the purchase are
created.
Payment flow (not shown)
takes place, if successful
then subscription is live.
3 Customer Subscription
42. Example Process Map – Sales Orchestration : Entitlements Created
Identity Mgt.
Customer
Contact
Centre
Agent
Browser
X
Purchase
Flow
Orchestration
Print & Mail
Email
Welcome
Letter
Zuora360
data copy
Master
Data
CPQ
Subscription
Mgt.
>> 9. (Batch process) Customer Welcome Pack
Printed
Materials
Delivery
Marketing Cloud Connect
Salesforce
Customer
Mgt.
Salesforce
Marketing
Mgt.
<< 1.Purchaser Information
>> 2.SF Customer Details
<<
3.Customer
Subscription
>>
4.Customer
Entitlements
<<
5.Customer
Entitlements
>>
6.Activation
Details
>> 7.Activation & Welcome
<< 8.Result
Browser
X
”OFF-LINE” SALES JOURNEY
Call
0.”Buy” 0.”Buy”
”ON-LINE” SALES JOURNEY
Live subscription
entitlements are passed
in order to allow customer
to pass through the
paywall and access
content.
5 Customer Entitlements
43. Example Process Map – Sales Orchestration : Send Activation Email To Customer
Identity Mgt.
Customer
Contact
Centre
Agent
Browser
X
Purchase
Flow
Orchestration
Print & Mail
Email
Welcome
Letter
Zuora360
data copy
Product
Catalogue
CPQ
Subscription
Mgt.
>> 9. (Batch process) Customer Welcome Pack
Printed
Materials
Delivery
Marketing Cloud Connect
Salesforce
Customer
Mgt.
Salesforce
Marketing
Mgt.
<< 1.Purchaser Information
>> 2.SF Customer Details
<<
3.Customer
Subscription
>>
4.Customer
Entitlements
<<
5.Customer
Entitlements
>>
6.
Activation
Details
>> 7.Activation & Welcome
<< 8.Result
Browser
X
”OFF-LINE” SALES JOURNEY
Call
0.”Buy” 0.”Buy”
”ON-LINE” SALES JOURNEY
Online account activation
details sent to customer’s
email as the first step in
the customer onboarding
journey. Postal welcome
pack (9) will follow.
7 Welcome Details
44. Example Process Map – Sales Orchestration : Performance Limits
Identity Mgt.
Customer
Contact
Centre
Agent
Browser
X
Purchase
Flow
Orchestration
Print & Mail
Email
Welcome
Letter
Zuora360
data copy
Product
Catalogue
CPQ
Subscription
Mgt.
>> 9. (Batch process) Customer Welcome Pack
Printed
Materials
Delivery
Marketing Cloud Connect
Salesforce
Customer
Mgt.
Salesforce
Marketing
Mgt.
<< 1.Purchaser Information
>> 2.SF Customer Details
<<
3.Customer
Subscription
>>
4.Customer
Entitlements
<<
5.Customer
Entitlements
>>
6.Activation
Details
>> 7.Activation & Welcome
<< 8.Result
Browser
X
”OFF-LINE” SALES JOURNEY
Call
0.”Buy” 0.”Buy”
”ON-LINE” SALES JOURNEY
CPQ
Salesforce
Identity
Vendor connectors run periodically
in background to keep master data
synchronised between systems,
but are not real-time.
! Role of background sync.
60-120 sec.
Near real-time
TBC
Frequency
45. Example Process Map – Sales Orchestration Error Handling
Identity Mgt.
Customer
Contact
Centre
Agent
Browser
X
Purchase
Flow
Orchestration
Print & Mail
Email
Welcome
Letter
Zuora360
data copy
Product
Catalogue
CPQ
Subscription
Mgt.
>> 9. (Batch process) Customer Welcome Pack
Printed
Materials
Delivery
Marketing Cloud Connect
Salesforce
Customer
Mgt.
Salesforce
Marketing
Mgt.
<< 1.Purchaser Information
>> 2.SF Customer Details
<<
3.Customer
Subscription
>>
4.Customer
Entitlements
<<
5.Customer
Entitlements
>>
6.Activation
Details
>> 7.Activation & Welcome
<< 8.Result
Browser
X
”OFF-LINE” SALES JOURNEY
Call
0.”Buy” 0.”Buy”
”ON-LINE” SALES JOURNEY
Purchase flow
orchestration must
manage connection
failures at all points of the
purchase to deliver
optimal customer
experience.
! Central Error Handling
50. Level 1: The Big Picture Level 2: A Piece Of The Whole
Salesforce Diagramming Framework
51. Level 3: Process Or Interaction View Level 4: The Double Click
Salesforce Diagramming Framework
52. Where is this going? Where We’re Going?
Emphasis on architecting solutions
Creating a diagram creates metadata
Send metadata to Salesforce?
53. Learn
Salesforce Architects Website
DSFS Pluralsight video
bit.ly/dsfslc22
Practice
Ladies Be Architects
scenarios
With paper & pencil!
Digitize
Powerpoint
Lucid chart
Miro/Mural
…
Build your own library
Tools & Resources
54. > Recap of Diagramming Salesforce Solutions
> Extract, structure, validate, communicate
> The 4 key diagrams
> Sequences, capabilities, and processes
> Salesforce templates & diagramming framework
Today
What I covered: