Architecture and Design Principles

System Partners believes strongly in the use of best practice, from a knowledge base built up over 10 years as a Salesforce Platinum Partner and 500 successful projects.

The following Delivery Values underpin the best practice design principles which are applied in all projects


Use standard features for standard functions

where there is a requirement that can be met through standard functions, standard, productised features should be used. Avoid replicating existing functionality where possible


Use standard and consistent naming standards

for classes, data entities, data fields, services etc


Minimise customisation

customisation used only after considering:

•       a change to the requirement

•       a change to the business process

•       alternative workarounds

•       use of an external fit-for-purpose product

•       cost of customisation (design/development/test and support)

•       do-ability (timeframe and capacity)

•       impacts to the upgrade path and Salesforce roadmap

•       re-usability

•       usability


maximise reusable functions and components across the enterprise

Maximise reuse


Use stable and proven features and products only

 

to ensure that functional, performance and reliability requirements can be met - avoid using beta products for production requirements wherever possible


for all Salesforce configuration and customisation

Use recommended coding standards


Manage data translation within the integration layer

data translation between Salesforce and other systems should be handled within the integration layer - avoid data translation logic within Salesforce to map data to/from another system 


users should have access to accurate data needed to perform their role to improve the quality and efficiency of decision making

Manage data access


data should be secure and protected from unauthorized use and disclosure

Secure data


Design for simplicity

applications should be easy and intuitive to use    


Be efficient with APIs

use standard Salesforce bulk API's when managing large data volumes 


Adhere to Apex code limits

as Salesforce runs in a multi-tenant environment, best practices for coding and configuration standards should be followed and ensure apex code adheres to limits


Adhere to platform limits

develop in a way that platform limits - API, Metadata, Email, Apex code, SOQL - are not exceeded and appropriately handled