Driving QA Transformation in Agile Organizations [Webinar Recap]
Last week, we had the exciting opportunity to host a webinar with Tanya Kravtsov, Sr. Director of QA at Audible and founder of the DevOpsQA NJ meetup group. In her webinar, “Breaking the Bottleneck: Driving QA Transformation in Agile Organizations,” she discussed different strategies for overcoming bottlenecks that prevent QA teams from becoming more agile.
As companies move from waterfall to agile methodologies, Tanya stressed that QA has been wrongly accused of preventing this agile transformation from happening. Speaking from her own experiences with driving QA transformations in agile organizations, Tanya offered insights into how QA teams can identify and alleviate true bottlenecks in the software delivery lifecycle. She recommended a wide range of tools and techniques to help with this daunting task, offering innovative ways to achieve the best transformation for your company. We at TestCraft are also passionate about this, as a test automation tool that can help identify and address bottlenecks early in the development lifecycle.
Here is a brief summary of what Tanya discussed in the webinar below, and you can also listen to the full recording here.
Addressing the Bottleneck: Switching from Waterfall to Agile
Tanya started her talk by giving an exact definition of a bottleneck, to help everyone better understand what is necessary to transform their QA teams. She took a quote from The Phoenix Project which states, “Any improvements made anywhere besides the bottleneck are an illusion.” Essentially, anything solved before or after a bottleneck may fix an issue temporarily, but it will not provide a permanent solution that will really allow a QA team to scale. For Tanya, this continuous addressing of bottlenecks is necessary for a full QA transformation.
“Anything solved before or after a bottleneck may fix an issue temporarily, but it will not provide a permanent solution that will allow a QA team to truly scale.”
She then went on to explain what a QA transformation actually entails: transitioning from a waterfall methodology to an agile methodology. In a waterfall environment, developers generally do one or two releases per year, while QA generally takes a month or two afterward to test. Speaking from personal experience, she explained that this causes an environment where QA is a bottleneck. Either QA needs to compromise on the quality of testing that they do, or they don’t test within an acceptable timeframe.
In an agile environment, QA is able to function a lot differently. Instead of dealing with one to two releases per year, QA is testing releases that can come out weekly, if not daily. With this new reality, QA has been transforming themselves as well to fit this new mold. Different ways QA has started to do this is through risk assessment, compromising on which tests are most important, and resigning themselves to the fact they will release code with issues in order to get feedback as quickly as possible.
The Different Components of Being Agile
Tanya then went into different areas where QA can address bottlenecks in order to integrate better into their newly agile environments. She broke it down into five components, under the acronym CALMS:
She then delved into each area in more detail, focusing on different strategies that teams can do in each component to achieve a full QA transformation. As an example, when discussing “Culture” as a QA bottleneck, Tanya emphasized the importance of understanding all the different players and handovers in the delivery pipeline. She then recommended strategies such as the Speed Boat Game and other collaboration games, as well as running retrospectives to better understand and learn from different teams within the delivery pipeline. The only way to achieve true change is if everyone is through this type of understanding.
Other strategies she gave focused on different automation tools available to make QA more of an agile process. Of those who attended the webinar, 48% of them said their environment was their biggest software delivery bottleneck, while 36% attributed the bottleneck to testing. For environment-related issues, Tanya recommended tools like Chef or Ansible to help document everything related to environment creation, combined with a virtualized environment. For testing-related issues, she recommended not only test automation tools, but also service virtualization and test data management solutions that help make testing processes faster and more efficient.
“48% of webinar attendees said their environment was the biggest software delivery bottleneck, while 36% attributed the bottleneck to testing.”
Focus on QA Problems to Get Better QA Solutions
No matter which tool you use, Tanya’s biggest piece of advice to close the webinar was to focus on the problems that stand in the way of a QA transformation, not the solution. There are hundreds of tools for every problem, and she did recommend many different tools to use in an agile environment. Yet she also reminded everyone that your team’s needs will change over time, and with that the tools you will need to help you can change as well.
As long as your team focuses on the problems that prevent QA from integrating fully into the SDLC, they will have the opportunity to go through an agile transformation. Focusing on these issues in-depth and in their entirety will ultimately be what allows QA to help deliver software features constantly and more quickly.
Q&A: All Things QA, Agile and Machine Learning
At the end of the webinar, Tanya answered questions from the audience. For your convenience, you can read the questions and her answers below:
The introduction of smart testing vs. AI testing. Is smart testing tool-dependent?
Smart testing can start out as a manual process by determining the test scope based on the scope of changes, associated risks and the time available for testing. Leveraging tools including AI will allow you to scale that process and potentially turn it into self-service, reducing the dependency on QA teams and further enabling shared ownership of quality.
How does QA factor into release management and CI/CD?
In agile organizations, QA is a critical part of the CI/CD and release management processes.
The only way to ensure the reliability of CI/CD is to embed quality at every step and continuously monitor the outcomes. While traditionally, operations teams own the release management process, this can often shift to development or QA in agile organizations. A big advantage of the QA team owning or at least overseeing the release process is that it gives them an end-to-end view of product delivery pipeline. It also allows them to easily identify and address bottlenecks.
How can QA take advantage of machine learning technology?
Machine learning technology can prove a valuable tool for every phase of Quality Assurance. It can be leveraged for a more robust and reliable automation framework that requires minimal maintenance. It can also be used as part of your automated risk-based analysis to determine the scope of testing, as well as help out in troubleshooting and preventing defects. Whether or not you are using machine learning technology today, my advice is to start capturing baselines and collecting all relevant data upfront.