Admins / Developers

Agile Development with Salesforce

By Ines Garcia

What is ‘Agile’? Agile is an approach to product delivery that helps teams respond to unpredictability through incremental, iterative work cadences (known as sprints). This gives us the ability to develop a subset of high-value features first, while incorporating feedback sooner.

You can also think of it as a mindset shift away from the idea of a project (that has a start and end date) to a ‘product’. So long as the ‘product’ exists, whether that be an integration, new application, enhanced cancelation process and so on, then there’s the potential to add value.

When living in a fast-changing world, anything can happen. Just think about what happened in 2020. How many unfinished projects have been compromised as organisations were forced to shift their focus? Constant delivery of value, with a constant feedback loop, is a powerful way to reduce wasted resources and prevent deviating from the overarching goal.

How Does Agile Apply to Salesforce?

You may be a Salesforce admin, developer or on the ops side of things, wondering how this can relate to Salesforce. In Salesforce terms, managing your org in an agile way means deploying useful features frequently, on a daily or weekly basis, instead of a bulk deployment every couple of months. By doing so, new features can start adding value immediately. I still hear horror stories of 18 months projects which means that no measurable benefits have been rolled out!

Benefits to Working Agile With Salesforce

Working in an agile way keeps you ‘on your toes’, constantly refining your plan as circumstances change around you and your team. It’s certainly more comfortable going through the motions one ‘stage’ at the time – but comfort is complacency.

Think of all the unfinished projects, abandoned in the requirements gathering or design stages before anything was actually delivered to users due to Covid-19. What a waste.

Think of mastering agile as a grade – the closer to agile you can be, the better you will perform against your competition.

Let’s look at Salesforce themselves. In 2006, Salesforce made the switch from a waterfall approach to an agile approach to development, in order to improve productivity within a rapidly expanding, global engineering team. With that switch, Salesforce increased productivity by 38% and major releases were completed 60% faster! Those are big numbers.

Agile Project Stages

If someone is selling you a step by step guide to agile that they hope you follow like a thermomix recipe, it’s a lie! Run, fast, hurry!

Agile is a mindset, not a methodology.

First, read the Agile manifesto to understand where this mindset came from; the principles you will find here will guide your action. This reminds me of an Aristotle quote: “We are what we repeatedly do, excellence then is not an act but a habit.”

To get into those habits there are a few frameworks to help teams and organisations to get an Agile rhythm.

As a Certified Scrum Professional (CSP®-SM) I can give you a taster of what the Scrum framework is:

Rarely do we have the perfect knowledge at the beginning – in fact we know more about the project as we progress than we did at the start.

The scrum framework uses timeboxes to harness uncertainty to your advantage. Your bigger timebox is a sprint (generally 1 or 2 weeks in duration), and a smaller timebox is 24 hours.

  1. At the beginning of the sprint, come together as a team (your product owner, development team and scrum master) to define the goal of the timebox. As a collective team, you refine the different items that are required to reach that goal, broken down into tasks.
  2. At the start of every day during the sprint, come together as a team to align your achievements and how your efforts in the next 24 hours will work towards the common goal.
  3. At the end of the sprint, you show stakeholders or anyone interested, the tangible product (the output from the sprint’s goal eg. an integration, new application, enhanced cancelation process, etc.) to gain feedback, ask questions, and inform the next steps of the product.
  4. Gather your team to discuss how you are doing things and how it can be tweaked to make improvements. We focus so much on what we are building that we forget to look into how. This time to pause and reflect is key.

Summary

Sounds easy? It’s not.

All agile transformations have challenges, and a Salesforce development team transferring to an agile way of working is going to find it hard. Get your foundations right, make the work visible so that it can act as a knowledge base, act on that information, reflect often and adapt to improve.

Interested in more? Watch the video How Salesforce Does Agile.

You can also check out my article about making the move to agile with scrum. For an even deeper dive, I have just released a book on the very subject of becoming more Agile whilst delivering Salesforce.

“Intelligence is the ability to adapt to change” – Stephen Hawking

The Author

Ines Garcia

Ines Garcia founder of www.getagile.co.uk , is an Agile Coach, Certified Scrum Professional (CSP®-SM) and a Salesforce MVP, together helps organisations to become more agile.

Comments:

    Aditi
    November 05, 2016 8:36 pm
    Ideally, the beauty of any service model is when you're able to track and analyze the behavior and such flexibility is provided by agile . Great implementation of Salesforce agile. nice post :)
    Robert Carlos
    December 20, 2016 11:02 am
    Thanks for writing this nice blog.GSD company provide differnet way for complete your pardot consulting needs. We offer different types of service such as saleforce integration service and marketing automation, pardot training and more . For More Information Visit Here url:- http://www.gsdcompany.com/
    Alberto
    October 31, 2017 1:04 pm
    Imagine having such an application connected to Git and the Metadata API. It's name is Copado :)
    Matthew
    May 28, 2019 9:07 pm
    Hey Ben, Do you have any helpful tips on how to prioritize the work in a backlog? I want to drive our users into submitting requests that better align with key business needs and I am looking for best practices on assessing the impact of something. The impact as an architect a feature will have to the system is different than the impact the feature itself would have to the company as a whole. I have been searching for best practices around assigned story points, priority/impact levels, etc. to a backlog so I can make sure to manage Sprints in a mindset of delivering high impact functionality and support to our company.
    Shanti
    February 22, 2021 5:08 pm
    Hi Ben Do you have any dev or production access environments to practice and do live project for CPQ.
    Christine Marshall
    March 12, 2021 11:56 am
    You can get a special developer org with CPQ on Trailhead: https://trailhead.salesforce.com/en/content/learn/v/projects/create-a-home-security-bundle-with-product-rules/sign-up-for-a-trailhead-playground-with-salesforce-cpq

Leave a Reply