Scrum Roles
In Scrum, as of the updated 2020 Scrum Guide, there are only three recognized roles:
- Product Owner
- Scrum Master
- Developers (formerly the Development Team)
Now, let’s look at the responsibilities of each of these roles:
Product Owner
The Product Owner role on a Scrum Team is the most critical, and the most difficult of the three Scrum roles. The Product Owner is responsible for creating a Product Goal and Vision, communicating and collaborating with stakeholders, making product decisions, and maximizing value delivery. Product Owners:
- Establish and promote product vision
- Is aware of the industry and markets
- Create a Product Roadmap / Release Plan
- Identify and manage risks
- Collaborate with all impacted stakeholders
- Other business stakeholders
- Technical stakeholders
- Developers
- Scrum Master
- Make decisions that impact the product
- Choose when to release (or not)
- Remove business impediments
- Monitor value delivered vs. budget spend
- Maximize Return on Investment (ROI)
- Obtain product funding
- Ensure the delivery of value
- Order the Product Backlog
- Ensure clear Acceptance Criteria are provided
Scrum Master
Scrum Masters are leaders that serve the Scrum Team. A Scrum Master will teach, train, coach, and help the Scrum Team however and whenever necessary. The Scrum Master is NOT a Project Manager, though some of those responsibilities may fall to a Scrum Master. In Scrum, the Scrum Master is responsible to:
- Ensure Scrum theory, values, and practices are being followed
- Train and coach the Scrum Team and business stakeholders
- Ensure that timeboxes are being followed
- Make sure that Scrum events are not skipped
- Serve the Developers
- Coach developers to be self-managed and self-directed (formerly self-organized)
- Remove impediments when developers can’t solve them on their own
- Improve engineering practices
- Facilitate, schedule, and keep records as needed or requested
- Serve the Product Owner
- Make sure the Product Owner is present and engaged
- Ensure the Product Backlog is kept “in shape” (regularly refined)
- Assist Product Owner in communicating the product goal and vision
- Help maximize value by coaching the Product Owner in prioritizing the Product Backlog
- Coordinate release planning with the Product Owner
- Serve the organization
- Help spread Scrum
- Initiate change that helps team productivity
- Collaborate and coordinate with other Scrum Masters
Developers
The rest of the Scrum Team is comprised of Developers. These people together should have all the skills necessary to deliver a done increment each sprint. Rather than being directed in their work, they are responsible to:
- Define how the developers will work together
- Create working agreements
- Establish a definition of “Done” (DoD)
- Plan work for each sprint
- Create and maintain each Sprint Backlog
- Negotiate goals with Product Owner
- Size items in Product Backlog
- Break down the work into tasks with estimates
- Develop potentially releasable functionality
- Meet established “Done” criteria (including quality)
- Ensure that the Acceptance Criteria are satisfied
- Demonstrate work at end of each Sprint
- Only show work that meets the definition of “Done”
- Celebrate goals that have been met
- Acknowledge goals that were not met
- Continuously look for ways to improve as a team
- Seek out and implement automation opportunities
- Make quality improvements
- Experiment
Traditional Project Roles
So, where does this leave traditional roles on a project such as:
If you are currently in one of these roles, and are transitioning to Agile, you might be worried whether you will have a place on a newly formed Scrum Team. While the same titles may not exist in Agile, many of the skills of these traditional project roles are still needed. Here’s how I often see these roles and responsibilities break apart when adopting Scrum:
Project Manager (PM)
- There’s no such role recognized in Scrum
- The developers make their own work assignments – their work is not directed
- Planning is done in smaller “chunks” – rolling wave planning is performed iteratively
- Scope control is not necessary – Agile embraces changes and no formal change management is required
- Responsibility for budget and schedule are often shifted to the Product Owner
- There are no stage gates or phases – instead, there are timeboxes for Scrum events
- The PMBOK® knowledge areas may still apply, but within the Scrum framework
- Project Managers can transition to Scrum Masters, but only if they let go of control and learn to be leaders who serve
Business Analyst (BA)
- Business Analysis skills are still needed by the team
- BAs may become Product Owners, or assist in Backlog refinement and management
- A Business Analyst may also assist with other tasks such as Quality Assurance testing
- Unlike in waterfall, requirements are uncovered as the project progresses – not all upfront
- Business Analysts are involved in project / product from beginning to end
- Requirements are discovered and analyzed “just in time” at an appropriate level of detail
- There is no such thing as a “Business Requirements Document”
- Documentation is only created as needed or where there is value
Programmers / Developers
- There’s more interaction with the people who use directly use the product
- Being self-managed/self-directed is a big change for some
- Developers make their own work assignments
- They should be willing to help in other areas (e.g. analysis, testing)
- A developer may demo features to senior leaders and other stakeholders
- Developers must be willing to learn new engineering practices
Quality Assurance Analysts (QA)
- Quality Assurance is everyone’s responsibility on a Scrum Team
- Someone with QA skills is called a developer, just like everyone else
- QA should collaborate with Developers – they are not the enemy
- People with QA skills should look for opportunities to apply test automation
- Testing is performed throughout each iteration, not just at the end
- Any defects discovered are either fixed immediately or put into the Product Backlog
Final Thoughts
So, while your job title may not be reflected by your role on a Scrum Team, the skills and knowledge you had in a traditional project environment can still be used in an Agile environment.
If you are transitioning to Agile, or have already gone through such a change, does this align with your experience? If not, what differences do you see? I’m very curious to hear if anyone has seen a different impact on traditional roles when adopting Agile. Let me know what you think!