At the end of 2016, DevOps enthusiasts and evangelists alike predicted and even declared 2017 as “The Year of DevOps.” DevOps evangelist J. Paul Reed put more eloquently when he said in an interview with TechBeacon, “2017 will be the year that DevOps is finally declared 1.0 stable.”
However, not all predictions came to fruition in 2017. Let’s take a look back at the DevOps hopes and fails of 2017.
The DevOps Hopes
DevOps Has Gone Mainstream
Lucas A. Welch, director of communications at Chef, predicted in DevOps Digest that in 2017 DevOps “will make major strides from being a niche operating model to simply ‘the way things are done’ in modern IT.” Read also: “Is DevOps a Holy Grail?”
Most notably, DevOps guru Gene Kim stated in a 2017 interview with TechTarget—and it has been proven over and over again—that DevOps is no longer reserved for so-called “unicorns” such as Facebook, Netflix, Etsy and others. Business and IT leaders of businesses of all sizes are actively implementing DevOps practices en route to a complete DevOps transformation.
However, the fact that DevOps has gone mainstream should not come as a shock to anybody. If we look at DevOps from the business perspective, it decreases the time-to-market while creating stable, high-performing products. From the technical side, delivering high-quality software at rapid speed without any silos or hassles is a blessing to QA, development and operations teams alike. And as we see in the chart below, DevOps has been implemented in a wide variety of applications:
Although SMEs adopted DevOps more eagerly than enterprise in 2017, the gap is narrowing. The software creation and release practices along with the business benefits of DevOps speak for themselves. We expect an even greater pace of DevOps adoption in the year ahead:
Regardless of how you look at DevOps, it is a win-win from any angle.
Microservices and Containers Rose in 2017
Chris Riley, analyst at fixate.io, accurately predicted that there will be “continued growth in container-native tooling, container-native security and container-native release automation.” The adoption of microservices grew significantly in 2017, which are suited for DevOps due to their well-defined interfaces, isolated nature and the ability to improve cycle times without putting the broader system at risk. Containers can serve as a compatible microservice deployment vehicles because they are designed to run with minimal deployment and runtime overhead.
Even though Docker has emerged as the standard for developing containers, there is still a lot of flux in the market in terms of runtime, clustering and orchestration environments.
CI/CD Made Manual Testing Obsolete in 2017
To say that continuous integration/continuous delivery (CI/CD) simply “made a “splash” would be an understatement to end all understatements. TJ Maher, a contributor at TechBeacon and an automation tester himself, predicted that the effect of CI/CD will be so huge that it will turn the entire industry upside down:
Continuous integration and continuous delivery turned the big splash of Selenium WebDriver into a tsunami that washed away almost all of the software testing industry, drowning many of the manual testers and eroding their base of employability.
CI/CD has transformed the way developers and testers deploy software. Thanks to the rise of DevOps, conventional software development and delivery methods are quickly becoming obsolete. Remember the days when companies would deploy new software on a monthly, quarterly or even annual basis? Well, those days are long gone. In the DevOps era, multiple daily launches are the new norm.
The chart below illustrates the effects of continuous delivery on software development:
Another big consequence of CI/CD is that the role of software tester is becoming extinct. Not only because testing has become automated, but also because DevOps blurs the line between roles—other roles have taken on testing duties or even transferred to offshore teams.
The DevOps Fails
Jez Humble, co-author of “The DevOps Handbook,” said that “DevOps is not a goal, but a never-ending process of continual improvement.” In 2017, the term “DevOps” deviated from this definition and was overloaded, overused and misunderstood.
Organizations continue to believe that by investing in technology they can fix cultural and organizational problems and lack of talent, which ultimately results in failed projects. There is no stride to continuously get better, as Jez Humble wrote in “The DevOps Handbook.”
Struggles with DevOps Transformation
Even though DevOps adoption has become mainstream, it is still a painstaking process for a lot of companies. Perhaps the biggest reason is DevOps is a cultural change. Nicole Forsgren, CEO of Founder and CEO of DevOps Research and Assessment, said there are two basic problems with a DevOps transformation:
The first is scale. How do you take success from one team or line of business, and then help spread that outward? In smaller organizations, it’s difficult but more straightforward. In larger enterprises, it can be a bigger challenge.
The other serious challenge is intricately related and it’s this: How do we identify our successes (and failures!) early, so we can capitalize on them (or learn from them) and then spread those learnings more broadly?
Of course, to set up success metrics, we must first define “success,” since this definition will vary from one company to another. Success is usually measured as a combination of four things: deployment frequency, average time to restore, lead time for changes and the change fail rate. This “shift left” transformation is definitely worth the investments.
Here are some things you will absolutely have to do to achieve continuous improvement:
With all of these hopes and failures, 2018 is sure to bring even more developments and build on the successes of 2017. What is in store for DevOps in 2018? Stay tuned to find out!