Taking Flight with Continuous Testing
Why the current testing culture must change – Continuous Testing is the imperative.
I’m pleased to announce that my new DevOps book “The Kitty Hawk Venture” has finally been published. More than a DevOps resource guide, this is a novel about Continuous Testing in DevOps that supports your Continuous Delivery and business success. The novel is a fun and entertaining read that gives sound lessons on the importance of Continuous Testing. It’s a fast-moving narrative complete with interesting characters who are trying to solve intriguing situations as they undergo change in their business.
At its core, DevOps is about change – a revolutionary transformation of people, process and technology that brings about the rapid delivery of software innovation with quality. Throughout all of human history, people have responded to an innovation or an idea with a phrase like, “what do you need that for?” or “it will never work,” or “what we already have works fine.” It is human nature to push back against change, fearing the unknown, hesitant to intrude on comfortable boundaries.
When we consider the impact of DevOps (transforming culture, process and tooling), the pursuit of powered flight is one example that comes to my mind. The desire to fly has been part of the human spirit for all of history, and great minds like Leonardo Da Vinci and the Wright Brothers worked with the materials of their time to pursue this grail. Determined to beat down the naysayers, they accelerated the development of innovation with the power of continuous testing. To this very day, innovators like Elon Musk and Richard Branson continue to push for the innovations that many say cannot or should not be done.
Despite the fact that humans are overwhelmingly resistant to change and innovation, it happens anyway, in every area of human endeavor, including software development. Market demand for faster turnaround of app-based products is pushing the IT world away from the traditional waterfall methodologies into an environment where fast and constant development rules. Containers and microservices are segmenting the product, and the traditional roles of developers and testers are dissolving into each other as the silos start to fall.
It is within this environment that continuous testing is required.
I authored the novel “The Kitty Hawk Venture” together with Jeff Schaeffer and Alex Martins, to illustrate the challenge of Digital Transformation. We used powered flight as both the backdrop and the metaphor for the need for innovation with continuous testing. The protagonist and characters in the story realize that successful transformation towards continuous testing requires a dramatic shift; one that demands a new and radical approach to developing and testing the software designed to keep airplanes safe, ready, available, and profitable.
But change is not easy, even for our protagonists. They must know where they are, what they seek, what the barriers might be, how to measure progress and how to keep things going once they have arrived. Some of the barriers and obstacles might be technological and physical in nature, but others are very human.
But the writing is on the wall. In current testing culture, the stats are quite shocking:
These numbers do not speak to a highly efficient software development culture, finely attuned to the global app-based economy of today. It speaks to yesterday’s status quo, in which time was at least a little friendlier to people on the development and testing/QA sides of the wall.
But today, failures, especially those that reach the public, are damaging to data, to business processes, to customer adoption, retention, and brands. Their ramifications, especially in the area of security, go well beyond a single glitch or period of downtime. Our global connectedness means every individual risk ultimately puts us all at risk.
It is no longer possible to generate software with both speed and quality using outdated waterfall or even Agile processes. The pace of modern software development and delivery is simply too fast and complex.
Continuous Testing is required for more a comprehensive, dynamic, and fluid assurance that software is developed and deployed in a way that ensures absolute quality. This new quality standard becomes the responsibility of every individual who touches the lifecycle, starting long before check-in – during requirements and early design – all the way through to production, and at every point in between. No organization can afford to assign verification and testing to the last chapter of the development story. Continuous Testing must instead be its ongoing central theme.
This is why we say continuous testing is an imperative, and this what we expand upon in our novel. Powered flight changed the twentieth century by – among other things – giving its early adopters a strategic advantage over their competitors, whether the theatre was commerce or warfare. In today’s economy, companies whose apps deliver superior speed, accuracy, security, and customer experience will reap the bounty of their industry, even if they themselves are the youngest players in it.
As a companion piece to “The Kitty Hawk Venture,” we’ve provided you with a “Definitive Guide to Continuous Testing” so you can learn the strategies, technologies and techniques that go into a successful Continuous Testing program. You can download the Definitive Guide here to help you take flight in your Continuous Testing journey.