Agile testing: 7 ways to optimize your strategy for the post-pandemic “next normal”

Mike Urbanovich
Agile Insider
Published in
5 min readJan 6, 2022

To build better software products and provide captivating experiences, organizations may enhance their agile strategies to create a culture that fosters innovation and empowers their teams.

“Responding to changes over following a plan,” “Customer collaboration over contract negotiation…” Sounds familiar, right? Agile software development is on the rise today — according to Statista, one third of all respondents prefer agile workflows, which places this methodology in the top 3 most practiced globally this year.

This is no surprise. To succeed in the global context changed by the pandemic, companies strive to frequently deliver good-to-go code and prevent defects rather than spot them. Within the culture of shared responsibility for the quality, organizations continuously improve functionality in a faced-paced development environment and are confident in flawless software operation.

However, there may be cases when ensuring high quality in the agile ecosystem stops producing the expected results. When that happens, it’s high time to optimize the strategy, which I’ll focus on in this article.

Smart optimization: what’s in it for your business

A suddenly enlarged number of software defects, endless client feedback loops, missed deadlines, the lack of sustainable IT product development processes — all these “black swans” drag the project completion time and result in the inefficient use of the company’s resources.

What’s more important, they are the prerequisites for optimizing agile testing strategy.

This helps organizations cut down operational costs, improve the performance of both development and testing teams, and accelerate time to market without compromising software quality.

Top 7 tips to streamline agile workflows with confidence

Once you have analyzed current processes and realized that changes are indispensable, we suggest considering the following few points to succeed on the path to improved agility.

1. Sprint but don’t rush

Perceiving the agile strategy only as a means of delivering software solutions at short notice with unplanned dates is a road to nowhere. This kind of practice can cause chaos in your team and lead to poor software quality, negative end-user reviews, and inefficient utilization of resources.

To avoid this scenario, projects should follow strict schedules in rhythm with the client. And of course, always remember that to each their own. On average, 2 weeks is the ideal duration of the sprint. However, to define a fit-for-purpose length, it’s important to consider individual business needs and specifics of team composition, applied toolkit and approaches.

2. Make use of automated testing toolkit

It focuses on detecting software failures while examining the code and executing it in various environments and under diverse conditions.

These tools can significantly streamline the testing process, improve its accuracy, increase test coverage, spot errors as soon as they occur, and ensure that the development and QA processes match the pace of the client’s feedback.

Testing tools like Selenium, Appium, Docker, AWS, Cucumber, Microsoft Azure, Robot Framework, and others serve this purpose. However, it’s crucial to confirm that team members possess the relevant expertise required to master them and pay attention to some other teams involved, to cross with confidence.

3. Don’t bail on project management software

Imagine a case where the developers fixed defects, forgot to commit changes to a version control system but noted the QA team of the completion. Software testing engineers started validating defects and found the same issues again.

To prevent this situation and accelerate time to production, companies can implement project management solutions. Apart from keeping all the stakeholders involved, managing resources, meeting deadlines, and efficiently planning the workload, they allow creating and describing defects, helping QA and software engineers always be on the same page.

There are plethora of available options on the market. Needless to say, their choice should depend on individual business objectives. However, there are some basic parameters that may be considered — intuitive user-friendly interface, ability to quantify and delegate tasks, collaborative nature to ensure swift and informed decision-making within the team.

4. Improve internal team communication

Within the fast development pace and an overwhelming workload, the teams may be bogged down with daily activities forgetting to interact to stay in the loop of the latest updates. Therefore, it’s the QA managers’ responsibility to streamline the flow of information from the client to the squad to help everyone head in the right direction.

Due to a well-organized process of distributing information through following typical agile ceremonies like sprint planning, review and retrospective, daily stand-ups, and grooming, QA managers help all the members grasp the requirements, obtain a clear view on the progress the squad is making to meet set sprint goals, get feedback from stakeholders and end-users, maintaining highly transparent work environment.

Therefore, companies should make sure the agile culture within their teams fosters brisk and open communication between all members.

5. Thoroughly define clients’ requirements

To ensure continuous product evolution, businesses strive to introduce novel features that appeal to end- users and make them stick to the brand. However, sometimes teams may omit the vital step of determining all the technical nuances, which will decrease process efficiency.

For instance, software engineers may develop new functionality based on their understanding rather than following set requirements. As a result, the client rejects that feature and provides repetitive feedback, which increases the project cost in the end.

So, it’s crucial to thoroughly discuss each planned feature with the client and include its description into an SRS, easing further software creation and testing processes.

6. Adapt parallel testing

Expediting software delivery has become a top priority for the post-covid “next normal.” To accelerate time to market and scale down operational costs, organizations can opt for parallel testing. Which utilizes cloud technology and virtual machines that simultaneously run multiple tests against several configurations.

By doing this, QA engineers can significantly boost productivity and flexibility of the testing activities, optimize CI/CD processes, perform virtualization of the environment, increase test coverage, and improve software quality.

7. Reap benefits from regression testing

Sometimes organizations introduce new features without ensuring the stability of the product reducing overall quality and performance. Why? Without making sure that recent code changes haven’t affected existing functionality, a company jeopardizes development success. Even within strict deadlines, it’s vital to conduct at least partial regression verifications at the end of each sprint and full testing before major releases to confirm that there are no defects in the existing functionality.

Although this may seem like an elusive goal, there’s a way out. It’s about combining manual and automated approaches to performing regression verifications. By introducing automation, companies can mitigate risks associated with the human factor (as manual processes still may be error-prone), eliminate issues earlier in the SDLC, and boost overall quality due to increased test coverage.

Future belongs to the resilient

Within the era of global changes, boosted speed, customer experience, and flexibility have come to the fore, forcing companies to refine their operating models and strategies.

To deliver top-tier software with short notice and high success, organizations may enhance and optimize agile testing strategies best suited for their needs.

For that, they can define a fit-for-purpose sprint length, implement project management and automated testing tools, strengthen communication, place greater emphasis on determining clients’ requirements, adapt parallel testing, and focus on regression verifications.

--

--

Mike Urbanovich
Agile Insider

At a1qa.com, Mike is a Head of test automation and performance testing department staffed with about 200 QA engineers.