Previously we discussed the concept of Site Reliability Engineering, why it’s critical to Development Operations (DevOps) teams and how its impact will only grow given the new realities we’re all facing with COVID-19. In this instalment, let’s review how the current pandemic will only accelerate the need for automation. And, advancement in Test Automation – specifically AI in Test.
To listen to the news, press blogs and LinkedIn Learning ads, one might think that Zoom was only recently invented and purely as a result of the Coronavirus. Zoom and many tools we use to connect our personal and work lives have been evolving for many years.
In fact, one could make the case that the last fifteen years have witnessed an acceleration of enabling virtual office and businesses were well on their way to adopting Work from Home (WFH) or Work from Anywhere models for at least the last decade.
Advances in Cloud Computing and Enterprise SaaS communication platforms such as Salesforce.com and Office 365, along with innovation in internet speed and bandwidth.
All of this enabled an explosion of thousands of technologies and applications allowing workers to cut the office cord and access their emails, files and data from anywhere. As a result, more and more systems are accessible online along with the functionality of just about any kind.
Ok, So Why Is This Important To DevOps?
The 24 by 7 nature of the internet means that systems are always on and working. And, are accessible and visible not only to employees but customers and buyers as well. Of course, this newfound technology has been welcomed as a godsend. Bringing along with the ability to win, secure and transact more and more business around the clock. As a result, businesses have grown as well as competition and demand to keep pace.
Naturally, the pressure on IT leaders and technologists to satisfy ever-increasing demands. And these are for newer and grander functionality. And, has also grown with competitive intensity.
In fact, longstanding methodologies of code and application creation have been reengineered to handle the deluge of requests. Adopting processes called Agile, Extreme and Shift Left SDLCs – allow the team to keep pace with product changes and feature requests emerging from the Business.
The aforementioned methodologies work very well and have been prevalently adopted across almost two-thirds of corporate development shops. All would seem to be right then within the world of DevOps and given a perfect world of unlimited time. Further, you will also need money and resources, it probably would be.
However, as we’ve come to know very well, we don’t live in a perfect world. Mistakes (and pandemics) happen. Outcomes go unpredicted and unaccounted for. People are fallible and the more of them in the process, the more errors introduced.
Like an axiom, one can set risk models to be a function of complexity along with human interaction – otherwise known as the current state of affairs. It is one fraught with error and risk to performance, compliance and security.
How Do We Make Sure We Prepare For Code Risk Better Than We Prepared For COVID-19?
The data is showing the countries that test early and often have a much lower mortality rate than those that don’t. If we keep with this principle, our efforts to test early, often and end-to-end will prove not only cost-effective. But, will also reduce the risk that our code will flatline after delivery.
Of course, the commensurate follow-up question is “we need time, money and resources to test like that.” Before AI, in the form of machine learning, that may have been the case. Test platforms are available that utilize AI to autonomously create scripts. These also maximize code coverage, test on-demand and at scale. As well as, significantly reduce those scripts needing maintenance.