The value of embedding quality throughout the software development life cycle is a given. And while we all know that quality is critical, how it is assured by today’s QA and testing professionals is changing dramatically. But is it changing fast enough?
We have just published the 2017-8 World Quality Report, for which we surveyed 1,660 CIOs and senior technology professionals in 34 different countries. There are a number of interesting trends, and some disappointing developments that suggest the answer to the above question is no – or at least, not yet.
This year’s research findings evidence a growing need for effective QA and testing in our fast-changing, digital and complex world. The whole organization of QA and testing is changing in response to this need. Centralized testing teams are decentralizing and becoming integrated in the agile and DevOps cycle. In fact, the QA and testing operation is much more of a business enabler than ever before.
Advocating a continuous quality view
Yet, this decentralization of the QA and testing operation raises issues, notably with the quality it is supposed to be ensuring. The rapid release cycle in an agile and DevOps model, along with an increasingly complex application landscape, risk serious errors being introduced into the software. That’s why I advocate a continuous quality view of applications throughout the cycle. It’s important to gain insight into what part of an application is being used, how it’s being used, and what its impact is on the business.
However, it’s clear that many organizations lack this continuous quality view. This is worrying. While empowering local teams is a good way to achieve quality in all stages of the development process, it cannot come without this enterprise view of ‘where we are’ – in other words, red, amber, green oversight of an application’s development and any quality issues. The idea that quality is everyone’s responsibility in the decentralized QA and testing operation within DevOps presents the risk that it becomes nobody’s overarching responsibility. This puts the entire business in jeopardy.
I cannot underestimate the importance of this point. A cursory online search gives some sense of the potential business impact of a quality issue, post go live. These range from vehicle recalls, flight delays and failed bank payments, to data breaches, store closures, and user frustration with new mobile phone features – all attributed to software failures. In today’s zero tolerance consumer era, the impact on brand. reputation and revenue can be significant.
Embedding intelligence in QA and testing operations
The answer is to rethink how QA and testing operate within the development cycle. I’ve recently worked with a product company that has moved to a DevOps model. It has tightly integrated QA and testing with the DevOps organization. Recognizing the need for a continuous quality view, the business invested in a quality dashboard giving visibility throughout the product development cycle. The information captured, such as user feedback, is now fed back into the QA and testing teams to enable them to focus their efforts on the right thing, rather than wasting time on testing irrelevant software components.
Automating the relevant data capture from multiple systems (code version control, defect management, issue reporting, workflow, test repositories, etc.) with algorithmic analysis and dynamic reporting within this dashboard is just one aspect of more intelligence-led QA and testing – where robots, machine learning, and artificial intelligence (AI) can help to guide decisions about what to test and how far. I am disappointed at the overall level of automation recorded by this year’s World Quality Report. At just 16%, the average level of automation for test activities leaves room for massive growth in the coming years.
I am also disappointed that the challenges in QA and testing seem to be increasing – with 99% of respondents saying they face some kind of challenge with testing in agile development. And it seems that a lack of data and environments is the most serious challenge, cited by 46%, up from 43% last year.
A smarter way forward
A more cognitive approach to QA and testing, with the adoption of smart platforms and intelligent automation, will help to address these challenges. With so many more releases nowadays, it will become increasingly difficult to manage QA and testing operations without making this organizational change and embedding smart QA into the development lifecycle.
As an industry, we’re not there yet, but given the emergence of smarter applications and products that demand an integrated, intelligent and automated approach for testing, there’s no time wait.