Have you ever wondered if the agile development methodology works better for some types of projects than others? Because the agile methodology provides so many benefits including flexibility, speed, client involvement, and the ability to identify issues or bugs early on, more and more companies are moving toward agile. What’s more, I would argue that for certain types of projects, the benefits of using agile can be even greater. For example, the agile process is a natural fit for Salesforce projects because the Salesforce platform is already designed for easy configuration and customization which falls in line with agile. I will demonstrate this idea by describing how flexibility and speed can be optimized for Salesforce projects using agile.
First, flexibility is one of the keys to the agile methodology and it is also inherent to the Salesforce platform. There are many features built into Salesforce out of the box that allow administrators to make changes to satisfy the needs of the business by using configuration only. For instance, an administrator can easily set up security and sharing rules, custom objects and fields, and workflows and approval processes using configuration. Furthermore, with each new release, Salesforce introduces new features such as Lightning Process Builder that make it even easier to meet business requirements without custom code. To provide another example, as most people with a background in software development are aware, business owners often have difficulty clearly defining their requirements or design specifications and until they see screenshots or a demo, it can be difficult to nail down. With Salesforce, an analyst or developer can demonstrate solution options to the Product Owner in a sandbox environment during the sprint. Depending on the feedback, the design can be tweaked to satisfy the client and there is less chance for rework later. If requirements change slightly or new requirements arise, user stories can be added to the backlog and prioritized for future sprints and usually easily accommodated.
The next benefit I want to discuss is speed. The agile methodology makes it easier to build software quickly by delivering functionality within each sprint. Each sprint builds on the last and the Product Owner and business users provide feedback along the way which minimizes rework later. The ease of configuring Salesforce increases speed and maximizes the functionality that can be delivered in each sprint, or in agile terms maximizes the sprint velocity. As a Salesforce Consultant with years of experience in user-centered design and usability, I appreciate the ability to quickly configure objects, fields and page layouts using Salesforce to demo to the client. It is much faster to configure a screen within Salesforce than it is to create a paper prototype or screen mockup. The Product Owner or business users can then view and interact with the screen elements to determine if it meets their needs, and oftentimes changes can be made on the fly.
As discussed, Salesforce projects work very well within an agile framework. As long as there is adequate planning and documentation within this framework to avoid some of the potential pitfalls of agile, there is a high probability of success when using agile for Salesforce development projects. In summary, if you will be involved in Salesforce projects in the future and there is flexibility to choose the development methodology, I highly recommend moving to agile if you haven’t already.
About Brenda Newton
Brenda is a Senior Consultant in Statera’s Salesforce CRM Practice. Brenda has fifteen years of experience in IT as a Business Analyst or Project Manager and maintains certifications in Salesforce.com (Administrator & Sales Cloud) and Apttus Configure Price Quote (CPQ). When Brenda’s not working she enjoys competitive swimming, running, and spending time with her husband, Matt, and two cats, Bo and Daisy.