In this blog series, Oleksandra Skybina (Project Manager & Agile Practice Head) and Andrii Kulshan (Business Analyst & Product Owner) from GlobalLogic’s Kharkiv engineering center discuss the structure and roles of an Agile Scrum team.
In Part I of our blog series, we talked about the different (and sometimes converging) roles of the Product Owner, Business Analyst, and Stakeholders in an Agile environment. Now let’s talk about the Development Team, including the Scrum Master and Manager roles.
The Development Team is a self-organizing system — a team of three to seven people who are qualified to make decisions independently. No one can tell the development team how many tasks they have to do during the iteration. The Scrum Master and the Product Owner can give their recommendations, but it is the Dev Team who should make the final decision on how much work they commit.
The team must be cross-functional, meaning they should have all the resources needed to perform the required work in the sprint. If you need a third-party specialist, such as a UX Designer or DevOps, the Product Owner should take care of that specialist’s involvement in advance. You need to plan everything so as to minimize the number of external dependencies at the start of the sprint.
Another important point: Scrum does not recognize any titles within the team. The opinion of each team member is important, and each person can influence when evaluating stories. We also do not create sub-teams within teams; the entire Scrum team is a single unit.
The Scrum Master (SM) has five main responsibilities:
1. Serve the Team: This is the SM’s primary objective. If there is any obstacle in the way of the team, the SM must eliminate it.
2. Facilitate Events: The SM facilitates most Scrum events: sprint planning, standup, retrospectives, demo meetings, etc.
3. Train the Team: That is, to train team members to interact with each other and with business representatives, to optimize processes, increase their efficiency, as well as to explain what goals the team faces in the current sprint, and what are the expectations from customers.
4. Interact with Stakeholders. The SM must teach stakeholders how to interact with the team in the best way (e.g., which processes are accepted for the project, how to work with the team, etc.)
5. Improve Processes. The SM is constantly improving their knowledge in the field of Agile and facilitation. They use every opportunity to improve current processes.
Now let’s move on to the two main configurations in which the Scrum Master can exist: a member of the development team or a dedicated specialist. There are both advantages and disadvantages for each configuration.
Scrum Master as Part of Dev Team
Advantages: The SM is well informed about all aspects of development within the team. They have a sufficient level of design and technical knowledge to understand all the details of the current project. If they see that further development will require additional resources or knowledge, they can warn the team in advance and help plan the process properly. It is in their interest as a developer or QA for the team to commit to the required number of items.
Disadvantages: The SM has very little time to do facilitation and training because if you have several unfinished tasks, you are no longer up to facilitation.
Scrum Master as Dedicated Specialist
Advantages: The SM does not have to choose between two roles (e.g., Developer/QA and the actual Scrum Master), and they will be able to spend more time training the team.
Disadvantages: The SM will have less design and technical knowledge, which will reduce their involvement in the details of current tasks.
In Scrum projects, we move from the traditional view of the Manager as a Project Manager to more of a servant-leader position. Thus, the task of the Manager is to provide all the necessary conditions to create high-quality products and to form a culture around the project. They must help the team and the Scrum Master remove obstacles and improve processes.
The Manager participates in the creation of the team, is responsible for the professional growth of people, and keeps their finger on the pulse of the team. The Manager must understand what is happening in the teams, hold regular meetings with Scrum Masters and the Product Owner, and understand the development issues. On the other hand, they must also interact closely with clients in order to build positive, long-term relationships with them.
Quite often, the Manager plays one of the Scrum roles. The Manager can play the role of the Product Owner, but in our opinion, it is better for the Manager to be the Scrum Master. As the PO, the Manager may be tempted to pressure the team to increase productivity (e.g., add tasks, increase their volume, etc.). The Manager will be perceived exclusively as a person who is the source of tasks in the tracker. As a result, the team may not trust such Manager, and people will stop sharing their problems.
In our opinion, it is better to choose the role of the Scrum Master since it will ensure the Manager has the knowledge of the domain and development process. As a SM, the Manager will better understand the team’s area of responsibility, get to know the team and each person’s role/status, and also be able to quickly overcome obstacles.