In a previous post, we talked about how QA and Development should be integrated in an agile environment. It’s important to remove boundaries between developers and testers and promote a collaborative working environment. When software testers and developers work in sync, you’ll be able to produce higher quality work in less time.
But what exactly is the role of QA in agile?
What can a tester do to help initiate a cooperative working relationship with the development team? Here are 6 things software testers should do when working with an agile scrum team:
1. Attend sprint-planning sessions.
A member of QA should always attend planning sessions. This ensures QA is synchronized with the development team from the start, and allows QA to identify possible problem areas and risks early on. Just like developers estimate the effort it will take for them to write code, during the planning session QA should estimate the effort required for testing the code. When QA is left out of the planning session, testing effort / time is often overlooked and not included in the sprint’s overall estimates.
2. Attend daily stand ups.
A member of QA should attend daily stand ups. This promotes a collaborative team environment, making QA feel involved and a part of the team. Additionally, by QA being present, they are able to stay up to date with how the sprint is going, which allows them to plan their workload. If a tester has a blocker, they can bring this up during the standup. QA’s presence in stand ups also gives them a chance to give an update on known issues, which in turn, allows developers to keep up to speed on testing progress and plan their own workload.
3. Don’t save all the testing for the end; test throughout the sprint.
This is important. In order to deliver high quality software in a short amount of time, you need to work with efficiency. With testing happening throughout the entire duration of the sprint, the workload for QA is spread out, which allows for issues to be found earlier instead of only at the end of the sprint. If you find all the bugs at the end of the sprint, it’s too late. By integrating testing and development, it allows the two teams to work together and resolve issues faster, leading to higher quality results.
4. Meet with developers for short, hand-off demonstrations.
It’s hard to argue the value of in-person communication. Assuming QA and development work in the same location, schedule a quick face-to-face handoff demonstration for each feature. This allows QA to see exactly how the new feature works, and is a good time for them to ask the developer any questions. These handoffs can also bring to light issues the developer may not have considered yet. These interactions also help shorten the feedback loop between development and QA.
5. Attend sprint retrospectives.
If your team isn’t meeting at the end of the sprint to discuss successes and failures, you’re missing out on the opportunity to improve future sprints. No matter how good a team is, there will always be room for improvement. Sprint retrospectives are the opportunity to define weaknesses and determine solutions for them. QA needs to be involved in these discussions to ensure any concerns they have are addressed before the start of the next sprint. For example, maybe a lot of the work was delivered to QA late in the sprint, leading to a rushed testing effort. QA might raise this concern to avoid it happening again, the next time.
6. Document test cases.
Just because you’re an agile team doesn’t mean you should skip documentation. Documentation is important, especially for QA. Keep your documentation lean, becasue changes are bound to happen, but even minimal documentation can add a lot of value to you and your team. For example, if testers shift from project to project, having some test documentation will help get the new team member up to speed faster. TestLodge can help with this – we’ve built a lightweight tool to help you keep your test documents organized.
In summary, agile embraces lean, flexible processes, tools and documentation. The traditional QA model has been refined to a delivery-driven role. This requires a collaborative environment where QA is focused on tasks that result in one thing: quickly delivering a high quality product.
Share as Infographic
Share these practical tips on how QA can work in an agile team with our infographic. You can download the full sized infographic here or alternatively use the embed code at the bottom of this post.
Use the following code to embed the infographic directly on to your site.