Salesforce Agility in 3 Steps

Marty Y. Chang
Slalom Technology
Published in
3 min readDec 7, 2018
Merriam-Webster

Today, “agile” can feel like a gilded buzzword that gets more eye-rolls than smiles. You’ve heard the promise of faster time to ROI, you’ve read articles by HBR espousing the benefits, and yet the experience of you and your peers falls short of expectations.

Perhaps you are in the group of hopeful adventurers who have started on the journey toward agile for Salesforce. Or you may be considering an agile approach and need to know what’s really involved. To focus and accelerate your efforts, take this 3-step challenge and assess your results.

WARNING! You may be surprised at how easy “agile” can be.

1. Deploy to production regularly

When did you last deploy to production? And when is your next deployment to production? If you are using scrum, your answer should simply be, “We deploy to production at the end of every sprint.” Period. Without exception.

  • If you think deploying to production is risky, reevaluate your testing strategy.
  • If your team does not test consistently, reinforce testing as part of your team’s definition of done.
  • If your manual testing strategy doesn’t scale, automate your tests.

You can deploy multiple times to production within a sprint, even daily, but at a minimum you must deploy once per sprint. Regular deployments to production are the foundation on which agility is realized.

Stay tuned for a future post on continuous integration with Salesforce DX!

2. Separate deployments from releases

Are you worried about deploying changes to production when users are not yet ready for the new functionality? Have no fear! Feature toggles are the solution to this challenge, allowing you to deploy without releasing.

  • deploy (transitive verb): to move code and metadata
  • release (transitive verb): to make features available for use

As new features are beefed up and deployed to production, toggles allow a product owner representing a company’s business interests to decide when the right time is to release the feature to end users.

Salesforce ships with countless built-in toggles for features like Contacts to Multiple Accounts or Multiple Currencies. You can easily do the same, using something as simple as a custom permission or a custom setting!

3. Close the loop with user feedback

What do you do with all those hidden goodies deployed to production and the feature toggles associated with them? Get user feedback early and often! Embrace A/B testing as a best practice, and use the toggles to intentionally launch controlled pilot programs and beta programs to gather feedback from the real world. This way, when the release goes live for everyone you have solid assurance that you have delivered a great product into the hands of your users.

Embrace your super users. Give them special early access passes. Then prove you are listening to them by channeling their feedback directly into your product backlog.

What’s holding you back?

The three steps to achieving Salesforce agility truly are straightforward.

  1. Deploy regularly to production
  2. Separate deployments from releases
  3. Get real-world feedback early and often

Still, hesitation is common when these feel like new concepts. If you want more detailed answers to questions regarding your unique situation, get in touch via email or Twitter!

--

--