engineering

Why QA Needs to be Invisible and Why Engineering Quality should be Your Ultimate Goal

By: Ramesh Pai, Wipro’s NextGen QA practice Head

“Isn’t Software Testing dead?” Over the last couple of years, this thought (or something similar to it) seems to be the most debated, commented and argued over. In reality though, spend on quality continues to increase. Discussion of this this topic with many clients on how “testing as an activity” is dead, but the need to “engineer quality products/systems” has grown significantly over time. So is this about IT and Business wanting Software Testing to disappear? Studying recent trends such as consumerization, digitalization, DevOps, further substantiates that this perception is indeed a reflection of “Quality Assurance (QA) needs to be invisible”.

Since the advent of software engineering, the drive for reducing “Cost of Quality” has been one of the primary goals of Enterprise IT (Nirvana being – Zero Cost of Quality). Today, with increased emphasis on speed, this goal has transformed into “Can QA be zero impedance” to the engineering life- cycle. Of course lower cost and higher quality are table stakes and if anything, even more important today. However, the ask from QA, not to be a Speed bump, is the most pronounced from both Business and IT.

Software Testing is well defined – wait for development to be completed and then “Test”. Engineering quality though is complex and at times difficult to prescribe. It is part of every phase in software development and highly dependent on new age tools, frameworks and skilled engineering talent. Following are a few trends that could be key to a good quality engineering strategy and will enable the ultimate goal of QA being completely invisible.

(Continuous) Shift left: Shift left has been undoubtedly the most sacred mantra in quality over the last decade. In the waterfall method for Software Development world, where shift left did find occasional mention, Agile has brought in a newfound urgency for shift left. Can things be done earlier in the life- cycle? Insprint automation, early Non Functional Testing (NFT), customer journey validation, continuous testing are today enabling quality in sprints early and as soon as builds are created. Open source tools have been a big enabler but industry leading conventional Testing tool vendors and even a few start-ups, today have products that enable shift left and continuous testing.

DevOps, NoOps, but where is QA? – A lot of terms have been coined to define todays engineering revolution. One thing conspicuous by its absence is how QA does not find a mention in these. (Yes, some have tried to coin QAOps – but no; it cannot be a thing). All these further emphasize the fact even though quality is an expectation, it needs to be invisible in modern engineering. Invisible by virtue of “automation”, through tools and IPs and all of it intertwined within the engineering cycle. New age tools and IPs have been evolving towards frictionless quality by enabling automation of every aspect of test engineering. Zero touch deployments by integrating code analysis, performance profiling, automated unit, systems & integrated tests and overall release orchestration enable seamless quality engineering.

End user experience is the new business process: With shift towards digitalisation, businesses have been focusing on re-engineering customer journeys for the new age. Not only user facing digital channels but also enterprise applications are moving towards being “digital-grade”. This has redefined quality goals from “testing the system” to “building the product for customer experience”. New age methodologies like Acceptance Test Driven Development (ATDD), Behaviour Driven Development (BDD) focusing on customer journey validation are key to a good quality engineering strategy in digital today.

1 -> T -> PI -> X? – Workforce transformation has been constant in quality. In the early 90s, it was test process management tools. In 2000s, it shifted to specialising testing tools and evolution of centralised testing. Over the last couple of years, need for multidisciplinary skills in agile teams have meant that, specific tools or process knowledge is not sufficient. New age skills imply experimenting with a new tool, being able to script on the go, try something else if it doesn’t work, collaborate with communities and share learnings. Focus today is on building full stack engineers who are experts in new age tool sets, and have the ability to collaborate with the community, to build or experiment with new innovations.

The next frontier: Shift right and the power of community

The industry seems to have come a full circle with full stack engineers implementing DevOps. So where does the industry go next? For digital transformations to be implemented at scale, talent availability will continue be a constraint. With new platforms for collaboration, a community (crowd) today can deliver output at a much better speed, cost and quality. Moreover, with real users to provide feedback, the user experience that can be built will be much closer to what end users want. This, in true sense, would be QA being truly invisible in the engineering cycle with end users determining what quality is!

Leave a Reply

Your email address will not be published. Required fields are marked *