According to a recent study by the Consortium for Information Systems and Quality Engineering, 82% of organizations have a quality engineering program but only 44% of organizations are satisfied with the effectiveness of their quality engineering program. The same study found that there is a strong correlation between the effectiveness of a quality engineering program and the quality of the software it produces.
Quality engineering teams are increasingly contributing towards maximizing exceptional customer experience, optimizing IT returns, and smoothening software deliveries. However the success rate is not great. Quality engineering programs require a mindset shift and cultural change to produce effective and sustainable long term results.
With quality engineering practices like DevTestOps, Test Automation, Agile TCoEs, Shift-Left Testing and Security, tech leaders can produce high-quality digital applications but implementing them requires a great shift in working culture. Here are five mindset shifts that tech leaders need to make in 2024 for effective quality engineering programs:
- Shift from the Testing Mindset to Prevention Mindset – The first important mindset shift is about going from Testing Mindset to Prevention Mindset. It means everyone in the organization needs to look beyond the traditional ways of testing, application vulnerabilities, and threat prevention. Technology leaders and their teams need to invest in process, methods, tools, and technologies that identify and eliminate application defects early in the development process. This translates to using practices like Testing First by Design, Automation and AI-ML practices, Chaos Engineering, and Site Reliability Engineering.
Prevention mindset starts by adopting the culture of quality and applying necessary methods that help in any defects to happen. Starting from requirements gathering to code development and reviews, test automation and optimization practices, the idea is to not identify bugs and defects but to prevent them from happening.
- Shift from a culture of blaming to a culture of learning – Testing delays software releases, but it is important to find defects before they reach customers. And at the heart of building effective quality engineering programs lie the culture of experimenting and learning. Traditionally, it creates friction between development and testing teams leading to culture of blaming. When defects are found, it is important to enable culture of learning and finding solutions than blaming one or the other departments
While making this shift has lot to do with tuning organizational mindset, some practices that help in building this culture are:
- Continuous Integration – As soon as developers commit new code, automated test suite is run in parallel and any failure triggers emails and notifications. Testing team can help in understanding the root cause and preventing the same from happening again.
- Metrics – driven development and testing – Ensure that all important metrics are tracked and measures are made to improve them continuously.
- Show and Tell Events – Demonstrate success stories of a particular team/department where Dev-Test best practices are implemented.
- Shift from a focus on process to a focus on outcomes – Traditional Quality engineering programs are often seen as routine, test automation processes where several tests are automated and run as suite in the back-end. Their success is measured on how many tests are passed, how many are failed, how much test coverage has been achieved, and how many P1, P2 bugs are identified and resolved before the release date. While these are important, with this the quality engineering programs reach a stale state with the start and end date and no scope for improvement.
Instead adopting a outcome-driven quality engineering program helps in designing and building software testing function in a more holistic way. The outcome driven culture focuses on achieving outcomes like improved customer retention, better customer experience, reduced release timelines, better developer productivity, and more.
- Shift from a focus on sole testing metrics to business metrics – Testing teams are often meant to keep track of how well testing processes are performing while the actual business metrics are hidden. It is time to shift the focus and mindset from isolated testing metrics to wholesome business metrics.
Embracing a testing-centric mindset requires a concerted effort and involves integrating testing into the core of business processes. Testing teams must be equipped to understand application and architectural fundamentals, recognize the impact of testing on revenue generation, and appreciate the overall IT budget allocation.
To achieve this integration effectively, organizations should establish small, agile, and results-driven testing units that seamlessly collaborate with software engineering teams. As a pilot program, consider partnering with specialized firms to establish testing capabilities and scale them in accordance with business requirements.
- Shift from a focus on reactive to a focus on proactive quality engineering – In conventional developmental processes, testing is usually done at the end just before release. This makes quality engineering programs very reactive in nature. The basic principle is identifying defects and resolve them before release. However proactive quality engineering works on the opposite principle.
It requires a cultural change in terms of developing and building products and highly advocate practices like Test Driven Development, Behaviour Driven Development, Test Automation, Chaos Engineering, Site Reliability Engineering, and Outcome driven Testing. Fostering this culture and mindset change requires constant communication and top-down and bottom-up approach.
Where do we go from here – Few tips that will enable culture change in your organization
- Educating about quality engineering best practices – Breaking habits and cultural norms in any organization can be hard but not impossible. The best way to enable this cultural change is communicating about the best practices of quality engineering, demonstrating the success stories, and build quality engineering advocates.
- Establish strong learning and development programs – Reskilling and upskilling helps in making the adoption of new practices, tools, and technologies easy. More people are comfortable with technology and practices, it will easy to adopt too.
- Empower teams to talk about failures –Changes can be hard and can lead to failures. It is important to let people talk
- Invest in TCoE programs – TCoE programs are absolutely relevant. The modus operandi of building TCoE must change and it should work closely and integrated with regular development while still being in-charge of adopting best practices, training and development, documenting best practices, and more.
Rethinking Quality Engineering in 2024: A new perspective
Quality Engineering is not a new discipline but very few organizations have put concentrated and focused efforts in building high-quality digital applications. With the digital landscape evolving rapidly, there’s an inherent need to rethink quality engineering programs and put quality before everything. As organizations gear up to implement quality engineering programs, it is important to drive the quality culture and implement tools, methodologies, and practices to overcome mainstream quality engineering implementation challenges.