Integration projects can be daunting, with more questions than answers, and lots of details about business logic, data or end-user experience to be delivered. There are three things we recommend you keep in mind to get your project right.
1. Get everyone on the same page, and understand all the requirements
Technical integration is definitely the sort of project where being prepared pays off. It isn't enough to just gather requirements, you need to really understand what sits behind them, and why.
To properly explore these requirements and capture them, we use a process of stakeholder workshops and documentation based around activity diagrams. These are really easy to understand, give people a visually engaging way to explain their requirements, and bridge the gap between non-technical stakeholders as well as the CRM team and developers.
These workshops quickly get to the bottom of each touchpoint between your CRM and website, what logic may be needed and what data will flow. We are also able to leverage our experience across many other CRM integration projects to provide guidance on normal best practices. This could be things like migrating user logins between a new and old website (if linked to Salesforce), or delivering personalised content experiences based on data from CRM objects.
2. Try out anything vital or risky
Lots of Drupal and Salesforce integration is supported by existing functionality in the form of the Salesforce Suite of Drupal modules. So once you have your requirements understood you can quickly move to map leads into Salesforce when a form on the website is submitted.
But Enterprise Salesforce users also need to apply business logic, use multiple object types or integrate with custom code in Salesforce. This can get a bit more complex, especially for any areas of integration that move beyond the documented Salesforce APIs. Beyond the riskier, and more complex user journeys, there are some core ones that you will also want to see working.
We typically bring these to the front of the queue to work on them first, this de-risks the delivery and ensures that any decisions that need to be made are done so in good time. Before the full delivery, a proof of concept gives you this assurance, and something more tangible to play with!
3. Test, test, and test
You've gathered and understood your requirements thoroughly, now you can make sure you have test plans based on your user journey requirements. These are a great way of making sure that your finished integration meets your original brief, and demonstrates clearly to your stakeholder that you have met their requests. We agree the Salesforce and Drupal test plans with you as early as possible, so that everyone understands the business requirements and can test consistently.
You don't have to wait until the end of development to test. Salesforce comes with sandbox abilities that make it easy to replicate your live CRM configuration during the development process, while using test data. This means that you can understand processes in action, discover edge cases and iterate to make them work.
As work is completed, we carry out Quality Assurance before it is handed over to you. This works against your test plans and catches and fixes any issues, before you take delivery. That means your acceptance testing is all about sitting back and seeing how it works for you, and your users. And finally, once all signed off, we deploy automated tests that make sure that these key features are checked frequently and any time things change on your site.
Bonus tip: Ask for help if you need it
Some projects are 'once in a lifetime' for a business, but day to day for a specialist. There is both a thriving Salesforce and Drupal community out there, with lots of vendors to talk to. Things to look out for when approaching an agency are a proven track in Salesforce integrations, good knowledge of the Drupal Salesforce Module suite, and people who really want to understand your world to add value to your project.