Why QA Managers Are Not Needed in Agile Projects
In this article I explain how the traditonal “QA Manager” role has evolved and has become redundant and why many feel threatened about their future job role as a QA Manager.
The role and responsibilities of QA Managers have changed a lot over the past few years, mainly due to many organizations moving to agile development methodologies where there are clusters of Agile Teams working together to deliver business objectives.
Many QA Managers often feel confused about their roles and feel out of place when put in an agile context, especially when they have been in charge of managing a testing team and defining QA processes for an organization.
QA Managers in Agile Projects
Below are some of the reasons why a QA Manager in an agile project is not needed to manage the testers and the testing effort.
No Testing Department
In a proper agile setup, there is no such thing as “Testing Department”, where a group of testers are sat together, usually away from the developers and managed by a Test Lead or Test Manager.
Also in an agile environment, there is much less emphasis on heavy documentation such as detailed test plans which is usually the job of the QA Manager to write these documents in traditional methods.
In Scrum, which is a popular agile development methodology, there are three main roles:
- Product Owner
- Scrum Master
- Scrum Team
The Scrum team is self-managing and is composed of developers, designers and testers. The Scrum team itself is responsible to deliver high-quality software.
Gone are the days when the QA Manager was held accountable when there was a defect leaked to production. In Agile, everyone is accountable and quality is everyone’s responsibility.
When a production incident is encountered, everyone gathers together to see what went wrong and how it can be avoided in future.
There is no place for QA Manager in Agile because it indirectly takes away team responsibility for QA which is the whole reason why good Scrum teams deliver much higher quality. It is important to realize that QA and thus testing, is an inherent part of Agile development methodologies.
No Day-to-Day Management of Testers
In Agile, business priorities change frequently and the Scrum Team needs to accommodate the changing priorities. It is almost impractical to keep up with all the changes especially when there are multiple Scrum Teams in a large organization.
As Stephen Janaway cites in his blog post on “The End of Road for Test Managers?”
Being a Test Manager in an Agile environment can be isolating at times, particularly when the department is big, and the number of agile teams is large. It requires an ability to balance a lot of information, priorities, and tasks, across a number of areas. Stakeholder management and influence become key. Context switching comes as standard. Often it’s not much fun.
In Agile teams, developers are encouraged to test their own code and to write sufficient and effective unit tests to ensure the new code has no obvious errors and to get notified quickly as soon as something is broken.
When we have a solid foundation of good unit tests that we can rely on, it removes the responsibility of testers having to test for obvious mistakes; instead, they can focus more on exploratory testing and assist with UAT which doesn’t require extensive planning and documentation.
QA Managers Transitioning to Agile Ways of Working
So, how Can QA Managers transition to agile ways of working and help in agile projects?
Although the traditional role and responsibilities of a QA Manager might not be seen as necessary in the Agile context, there are certain areas where QA Managers can add value.
A QA Manager in Agile needs to be an experienced tester to be able to provide advice on challenging situations. They have to know how testing fits into an agile project.
The points covered on blog post Test Manager in Agile by Katrina Clokie (aka Katrina the Tester) gives a good summary of the new role of QA Manager in Agile:
- Facilitation of inter-team communication across many agile projects within an organization
- Presenting an aggregate view of testing to the high-level management
- Personal support, mentoring, and professional development for testers
- Being an escalation point for testers
- Budgeting or forecasting for testing as a service dependent on organizational process
Other areas where QA Managers in Agile can add value are:
- Be an advocate of QA throughout the organization
- Recruitment of QAs and Automation Engineers
- Providing technical expertise, e.g. proper use of test techniques in appropriate cases
- Ensuring the teams (Scrum Teams) implement and follow best practices to prevent defects
To summarize, the role of a QA Manager in Agile is more of a support, training, facilitating and consulting other QAs and other team members and to ensure QA best practices are established and that quality is baked in from start.