Transforming Mindsets from Quality Assurance to Quality Engineering – Why Now?
If your software is going through the digital transformation journey, then the terms Agile, DevOps, shift-left, etc. might ring a bell. There is a significant transition of mindset from Quality Assurance to Quality Engineering to manage the overall of quality effort for these rapidly scaling applications. What does all this mean? It means that there is a brand new approach to software testing in the making. And why do we need this brand new approach?
Clearly, because the old methods haven’t been able to support rapid, zero-defect feature releases on time. And for applications such as Snapchat, Uber, Facebook, Airbnb and the ones you are creating to serve millions of users, it’s the need of the hour.
So there’s a massive rethinking and reshuffling of all the frameworks, reports, tools, and iterative frameworks. Some of these frameworks have made development and quality teams dysfunctional. There are many rejects to QA that have caused a lot of development rework. Result – very few software releases, huge overhead, and loss in market shares.
Shift Left – The Foundation of Quality Engineering(QE) DNA
The origins of a Quality Engineering mindset reside in the principles of Shift Left. In very simple words, Shift Left is a phenomenon of integrating quality earlier in the development cycle without waiting to get to the finish line with development. The development and testing teams would work together in a continuous integration, continuous testing framework.
An essential tenet of “Shift Left” is to write testable code that is unit verified, and build quality at a component level up to integration level. Essentially this enables efficient localization of a problem and ensures that individual elements are working before a large amount of software is integrated.
Shift Left has always been a part of hardware industry’s DNA but was not adopted quickly in software because there are always patches to fix bugs and software development and requirements are more complex and required manual intervention.
Shift Left challenges this by introducing agile, fundamental tenets of automation to find defects early, and to drive accelerated software delivery.
The Quality Engineering Framework – It Cannot Be an Overnight Bus
Talking about Shift Left and Automation in the context of DevOps is one thing. But implementing this methodology is a science. Every QA team has to ease into Quality Engineering and progress through the framework. I will talk about the QA maturity model in great detail in my next book. Connect with us if you want to learn more about our QA Maturity Model.
To create a QE mindset, there are a few things that need to be done right in every quality organization:
Quality Engineering Process: Quality process ingrained in the overall agile software development process is a significant factor. This process includes the structure of teams, approach to quality, and integration of quality in the software process.
Automation Methodology: Ability to automate in a structured, maintainable, and with a useful method is also a significant factor.
Scalability of Test Infrastructure: Effective Agile QA teams can fire up their automation assets on on-demand infrastructure in an automated fashion so that a lot of automated tests can be executed in parallel massively.
CI/CD and DevOps Integration: Automation is ineffective if it still follows manual constructs. The process of continuous integration and DevOps makes utilization of test automation, execution, and reporting well automated!
Test Environment and Test Data: Finally, if you have far-reaching challenges with test environments and test data that keep your automation running seamlessly, no matter what or how much you automate, your execution will have bottlenecks and the desired goal of certifying an automated build will be a pipedream.
Look forward to hearing more from us on how QMetry is grooming a quality engineering mindset for your agile and DevOps teams with a new tool stack that covers test management, test automation, and test intelligence.