How to integrate test team into multiple agile projects effectively
We have a small test team of 4 people who currently work across 4 products. 3 of these consist of sprints with a duration of two weeks, and the last is a continuous project working on technical debt.
At the moment we assign a primary tester to each of the agile projects with a secondary tester helping all three where needed. When work items appear on the technical debt board anyone picks those up.
Each tester works within their projects sprint board to track and manage the task they are working on.
There has been some discussion on how we can improve the test team process and one of the suggestions was that there would be to create test team sprint board that items from the other boards are put into when they are ready to test.
I am here to discuss and learn if there more efficient way to management the test teams time.
Edit: To answer some of the questions in the comments below:
- Testers are primarily manual testers, however we are in the design stages of implementing automation.
- Testers rotate every 2/3 sprints, but don't have an objection to permanent positions within teams.
- Testers have a focus on the sprint that they are primary tester for. But if priority change to another team/sprint, they can move. (rarely happens)
- Testers within the team are fairly new. I have the most experience within testing and have been offered a test lead position so wanted to throw the question to people with more experience in the test lead role. I want to hit the ground running so to speak.
- Tester are part are their sprints planning phase.
First, I would probably suggest that if one really follows Agile development approach, there should be no Test team. In many companies, there's a belief that Agile is only about boards, Jira, iteration and fancy "ceremonies" instead of old "meetings". It is not the case, Agile approach is inherently different (and, actually, not always required, which is not widely acknowledged and accepted idea, unfortunately (yet?))
Usually, one would have an Agile team working on one or several connected products. This team may (or may not) contain a test specialist.
In a truly Agile environment, test specialist is not the one who performs all the testing (the same as front-end developer is not the one who performs all front-end development activities), but the one whose primary skill is testing.
In Agile world, testing is a whole team activity an responsibility. Test-specialist would coach, pair, help other team members to do their part of testing. Tester would not baby-sit other team members and do all the testing for them.
Think of Agile team as an elite Marine squad. If combat engineer is busy, does it mean that the whole squad would wait while he/she defuses all bombs one by one, just shooting around, to keep themselves busy? That is a very good analogy because the answer "it depends". Same with any specialised activity in an Agile team.
As a part of my master thesis, I have completed research, which showed that rotation and unstable Agile team is a huge instability factor, hindering efficiency and decreasing quality. I would suggest avoiding rotation if at all possible. It means you may want a test engineer(s) to be permanent members of a product team.
One critical thing to understand in an Agile-environment, is that testing is not separate from development. I.e. saying that "tester is part of the sprint planning"/"testing is part of a sprint" is like stating the obvious. The feature is not developed unless it is tested, period. If feature is not tested - it is not the testers problem, it is the team problem.