I am now starting on my Salesforce Sharing and Visibility Designer certification as part of my architect path. This certification deals with the ways information can be shared in Salesforce both programmatically and declaratively and when to chose what.
Some of the declarative solutions are obvious to me now, but I realise that it is not so for someone who is new to it. I thought I’ll create a flow diagram to make it simpler to chose the sharing option.
I’m planning to iterate over it a bit, but to begin with I thought I would add the basics of Salesforce data sharing at least for internal users.
That said I have excluded enterprise territory management which it a beast of its own and should be used only if there a genuine need.
A good place to start was the base sharing diagram provided by Salesforce in their documentation. While this document is great for understanding the impact of each type of sharing it does not make it clear when to use what type of sharing.
What sharing model to chose for an object?
How to share data with people?
This section is a work in progress and needs to be treated as such.
If you have a better way to think through the sharing piece please do let me know. I’m open to suggestions.