Let’s get to know the different roles and responsibilities of each person in an agile development team. Just as there are several agile approaches such as Scrum, Kanban, XP, etc … Let’s focus the series of articles in Scrum since it is the most used in the world and my opinion, the most recommended framework for those who are starting with their teams in the Agile world.
The Scrum Master is what we call a servant leader, he is the custodian of Scrum practices and must ensure that everyone involved in the work knows how to apply them correctly. He is responsible for disseminating knowledge about the work method, for ensuring the evolution of the team, supporting multi-functional learning and self-organization. This model allows for the constant improvement of the skills and capabilities of the entire team, for what is the leading server?
The servant-leader acts primarily for the success of the team and not for his benefit. The Scrum Master has to be a real leader to be in this role, seeking to facilitate the work of team members, solving problems, removing obstacles that prevent the the progress of the Development Team, in addition to eliminating any conflicts that may exist. I highlighted the main features of Scrum Master, there are others, below a summary of their responsibility:
- Allow close cooperation between all roles and functions;
- Remove obstacles and protect staff from distractions;
- Work with the organisation to follow the progress of the project and make necessary adjustments to the companies’s structure or processes;
- Ensure that agile practices are being followed, including stand-ups, planning, demonstration and review meetings, and retrospectives;
- Facilitate team meetings and decision-making meetings;
The Product Owner is responsible for the product and ROI of the project; it interfaces between the customer and the team, which makes the Product Owner role a critical success factor. The Product Owner has to work in line with the team to ensure both the business and Sprint goals will are reached. It is very common for any project, be it software, industrial, marketing and others to notice that the clients have difficulty expressing their needs when they do change frequently, and usually the delivery has to be from yesterday.
On the other hand, the team that will develop the product do not understand the customer needs and many do not want to know, this hardly meets the needs and to finish we add the difficulty in communication and understanding with the client.
The Product Owner is the interface between the customer and his/her team. The person in the role of Product Owner needs to have an excellent communication ability, as they translate the business needs into a language the team understands, as well as evaluate and prioritize the backlog which should be done based on what brings more value. The question of value is key to agile methods. Below the Product Owner responsibilities:
- Define the requirements and prioritise their value
- Determine release date and content
- Take an active role in iteration meetings and release planning
- Ensure that the team is always working on the most valuable requirements
- Represent the customer’s voice
- Accept stories that meet the Done defined by the team and the acceptance criteria specified by the Product Owner and customer
The Development Team
In traditional software development are addressed various types of work, such as architect, programmer, tester, database administrator, designer, and so on.
In Scrum is defined the role of the Development Team, which is simply the joining of all these people into a multidisciplinary team, and who are responsible for designing, building and testing the product.
The main idea is that the development team self-organize to determine the best way to accomplish the work to achieve the goal set by the Product Owner.
A development team typically has between five and nine people. Its members must collectively have all the skills necessary to produce, with quality, software running.
Of course, Scrum is used in projects that require much larger teams. However, instead of having a Scrum team with 30 people, for example, it would be best to have three or more different Scrum teams, each with a nine or fewer people.
Scrum Master, Product Owner and Development Team together form the Scrum Team
Scrum recommends that to obtain higher productivity the size of the Development Team can vary from three to nine people, not including the Scrum Master and Product Owner. There are several opinions regarding ideal sizes, such as Jurgen Apello for example that suggests the ideal size as five, among them, warns that rather than following the recommendation of the size of the team, teams must first try to self-organize and gradually reach a team of ideal size.