June 10, 2014
Is a leader-less team possible in Agile?
Agile methods revolutionised the workplace in companies and redefined many of the job descriptions that the traditional roles in a team had. In the case of testers, Agile has expanded their responsibilities and changed the way they work within the team.
Old-school testers viewed their career in a more rigid and straightforward way. Nowadays, with the introduction of Agile methods such as Scrum, testers find themselves having to share more functions with other team members. The position of test leader in particular has become very blurred and the lines that define the leader from the rest of the team are not so clear-cut anymore.
This leads me neatly to the main question I would like to tackle in this article; What does it mean to be a test leader in agile environments?
I will point out the reasons why a test leader is still important in agile teams and how, in spite of changing definitions, the leader’s main tasks in a project have remained virtually unchanged.
Describing an agile team
Let’s take a look at the typical job of a ReQtest tester working in an Agile environment. To make it easier, we will focus only on a Scrum team.
The Goal: Develop a working product over several sprints.
The Team: A Product Owner, a Scrum Master and the team members, including our tester.
The Process: The Product Owner first describes what the product should be able to do in its completed form. The Scrum Master then makes sure that the team members follow the established approach when planning which tasks should be done over the first sprint.
The team members write their ideas on sticky notes and affix them to the Scrum board. When this phase of the planning is over, the members pick a task from the board and complete it during the sprint.
Follow the leader?
As you can note, this process already makes clear the decentralised nature of agile work; although, even by Scrum standards, the procedure above is particularly loose and flexible.
The tester in the team would be working autonomously: first picking a sticky note from the Scrum board, read the task and set to work to verify that the functionality described in the note works as intended. Once the tester is done, he or she will simply pick another note and repeat the process until the sprint is finished.
The process works remarkably well and at first glance it seems that a test leader would be completely redundant in this situation. Or is it?
A leader is made, not born
I would like to propose that in actual fact, the leader role was manifested to a certain degree in every tester who participated in that process and contributed to the overall task. The tester mentioned previously, did not pick up any note from the board; the process isn’t so random.
Rather, the tester made a decision that was based on the information that was discussed during the meeting. Armed with the knowledge and the different perspectives of the other team members, the tester took a conscious decision to choose a task that best fit the developers’ and testers’ needs at that moment.
If we could peek into his or her mind, we would probably see myriad thoughts going on such as: How long it would take to test in the current sprint? How much time our regression tests will take? How can the test be conducted in the smartest and most efficient way possible?
The integrative thinking underlying the tester’s actions is the hallmark of true leadership and in the moment when he or she took that particular note off the Scrum board, the tester’s was indeed acting as a leader
The tester-leader in our case will be working over many successive sprints and if you were to step back to analyse his choices throughout the whole lifetime of the project, I am sure you would notice a definite strategy that aims to ideally serve the requirements of the emerging product. Essentially, the tester internalised the duties of the leader and embodied them in his or her choices throughout the process.
Collaboration between teams
If we extend our example to encompass more than one Scrum team, the argument changes slightly.
When we have several teams collaborating on a project, then someone needs to facilitate communication between them and ensures that the tests performed by the testers spread in different teams are of similar quality.
In traditional development processes, the test leader’s principal task was to plan the test work and devise a common strategy for all the teams to follow. In contrast to the previous example, you cannot have each tester following his or her individual strategy or chaos will ensue.
Even in agile work, in situations like these the work will benefit is someone is assigned the task of planning for joint test work and creating a common test strategy. If a project depends on wider collaborative efforts, having a focal point of reference will ensure product quality and a sound working strategy, even when using agile.
In cases like these, the person designated as leader would not be placed in one of the teams, but kept outside of them so that they can focus on the bigger picture.
The leader with a thousand faces
The test leader mentioned above should be an important resource to testers in individual teams. He or she can serve as a source of impartial feedback, as a motivation booster and as a catalyst to drive continuous improvement in the testers’ work.
The unique position of a test leader, sitting outside any team, lends him or her a better perspective into which techniques are working well and which aren’t. They can spot any important patterns in a team’s work and relationships and provide timely advice to spur them on to give their best.
The role of test leader is particularly important in the context of a ‘retrospective’. In Scrum lingo, this is a meeting reserved for identifying the pros and cons of the way the testing process has been handled so far and suggesting ways to improve it.
Although each Scrum team would be having their own retrospective, I would suggest that members from each team convene with the test leader to form a ‘Scrum of Scrums’ and hold an all-encompassing retrospective that sheds light on the progress of the teams as a whole.
The same principle can be used to create a ‘test of tests’, whereby the test leader would test the ways testers are dealing with testing issues in every team. Although this would normally be the job of a Scrum Master, a test leader would possess the specialised knowledge to bring more focus into the quality of work of testers in a particular group.
Another role for the test leader is to provide holistic feedback to other stakeholders, such as the Product Owner, an IT manager or finance officers in the company. A test leader would be ideally positioned to piece together the information gleaned from the work of different groups and present it in a coherent report to the stakeholder.
An agile test leader
Maybe it is inevitable that somebody within the team will take the mantle of test leader. It’s only human nature. But in the context of agile development, the role of leader is far wider in scope than what is traditionally envisioned.
Test leaders have an important role to play, regardless of the development methodology used. However, the way they function within the group should always be guided by the principles of the developmental framework adopted by it.