Agile’s roles tend to be sourced from the Scrum framework. They consist of the following:
The Product Owner is accountable for maximising the value of the product resulting from the work of the agile team.
The Product Owner is also accountable for effective Product Backlog management, which includes:
The Product Owner is responsible for:
The Product Owner needs the authority to make decisions about what the team should do and when. They are responsible for the budget and how much of the team’s time should be invested in producing product solutions and delivering services to the rest of the organisation.
Some organisations feel that Product Owners should write all the backlog items (“user stories”) and, because those activities are similar to those of a traditional Business Analyst (who writes requirements), a Business Analyst should become the Product Owner. In most organisations, though, requirements require approval. This results in a Business Analyst / Product Owner seeking sign-off of backlog items, producing delays in decision-making regarding what the team should focus on in any given Sprint.
This anti-pattern is called the Proxy Product Owner. This should be avoided.
Using the stakeholder as the Product Owner comes from the agile framework Extreme Programming (XP). This can work well, so long as:
In the latter instance, the Product Owner tends to become a committee instead of a single person. Avoid this anti-pattern.
The Scrum Master isn’t an “agile project manager”. They’re not responsible for making the team deliver. Their responsibility begins and ends with establishing Scrum (as defined in the Scrum Guide) and ensuring its effectiveness.
While the Scrum Master is a leader and facilitator, they aren’t the team’s secretary. Many teams get their Scrum Master to book Sprint events, write reports, and manage the Scrum board.
This anti-pattern is called the Secretary and should be avoided.
Scrum calls the people who do the work “Developers”. This is because these people are the ones who develop the product (or service) by doing the work. Developers are self-managing, meaning that they work within the guardrails of Scrum, and from a single product backlog, but no one from outside of the team tells them how to do their work.
Developers are committed to creating a usable Increment each Sprint.
While the specific skills needed by the Developers are often broad and will vary with the domain of work, Developers are always accountable for: