olly - Fotolia
Agile is the hot methodology in the software development world, and whether your company is running 100% Scrum...
teams or just working toward a Lean Agile workplace, you need to align your Salesforce talent properly. Putting the right people in the right Scrum team roles can help your organization benefit from increased efficiencies, ensure that your team members continue to be excited about their jobs and enable continuous improvement within the platform.
There are various organizational structures that Salesforce is run within, including the IT, sales operations and analytics BI teams. All these teams can be structured within the Agile Scrum framework.
The main Scrum team roles are product owner (PO), Scrum master and developers:
- Product owners work with the business or end users to gather requirements, maintain the backlog of future work and prioritize that backlog within the next few sprints (a consistently repeated increment of time to develop and deliver work -- often anywhere between weekly to monthly).
- Scrum masters are responsible for running meetings -- called ceremonies in the Scrum format -- and ensuring that the POs and developers are playing the proper roles and delivering on prioritized items within a timely manner.
- Developers are responsible for the actual work, which is prioritized for specific sprints -- a consistently repeated increment of time spent developing and delivering work. Developers take the requirements from the POs to design and deliver each increment. Your current structure may not be totally aligned with these roles, because the PO and developer roles are intertwined -- or even the PO and Scrum master could end up being the same person. While this may work for a small organization or a group that has a legacy Salesforce platform without new projects consistently in view, these Scrum team roles should be separated as much as possible for the average organization.
Why is this necessary? This enables each role to have autonomy and to function as an expert. For example, teams often have admins and developers who work on new items in Salesforce. Rather than a PO or Scrum master, these teams may have a project management office (PMO) for larger projects and a manager who serves to prioritize work, which admins and developers may then assist to refine requirements.
This often leads to a very hierarchical organization that may stifle innovation, to no fault of anyone involved, and developers and admins stuck just following orders, rather than taking ownership for the output. By creating a flat model with three separate Scrum team roles, POs can manage what the team works on in any order agreed upon with the business, the Scrum master can own the process to get this work accomplished, and the developers can flex their creativity and own how the work can be accomplished. All three roles are equally responsible for the delivery and outcome of each sprint and can focus on their role exclusively to ensure the best result.
In the largest organizations, there may be more than one Scrum team to accomplish all the work needed to continue to advance the Salesforce platform. This will necessitate leadership roles like product manager, who has overall insight of Salesforce deliveries but should not interfere with the day-to-day engagements within the sprints, since the best formula for success in this environment is a self-governing sprint team.
Who is assigned to each of these Scrum team roles can vary widely, but there are a few best practices to consider when arranging your organization:
- Scrum masters can sit with the developers within IT, but another school of thought believes a PMO resource would create the best unbiased resource. Employees with PMO or project management professional backgrounds can be strong Scrum masters, because sprints are often short and require vigilance in tracking and reporting what is and isn't happening within any particular sprint.
- It is universally recommended that POs sit in some capacity within the business. If your team is in IT entirely, you should consider at least relocating your POs to the business they physically represent, or create a structure where the business elects leads to have very regular engagements with your POs.
- Finally, developers should be entirely dedicated to work within a sprint, with few exceptions. This means if you are a team not within IT, your admins should ideally work only on current sprint items and should not also play business analyst or PO function with end users. This will ensure that the velocity of sprints is consistent and the Scrum master knows who is truly available to complete stories.
Overall, multiple organizations have seen great success in the Agile process and have implemented Scrum methodology into their Salesforce organizations. No two companies are the same, and there are multiple resources to get more information on this work and how you can utilize it to gain more and more value out of the team. Adhering to the Scrum team roles of PO, Scrum master and developer within your teams will be one of your largest attributions you can do when making this switch.