Now that cloud computing has turned a corner, most enterprises have implemented a ‘cloud first’ strategy. With such a strategy, the default assumption is that any IT project will leverage the public cloud. If someone feels that such an approach is not appropriate, they must present an adequate business case for not using the cloud.
We face the same question now with DevOps. Up to this point, most enterprises have had DevOps on their roadmaps, ramping up the cultural and organizational change that DevOps requires as resources permit – but still run most software projects following non-DevOps approaches.
Today, however, many organizations are reversing this strategy. Instead of requiring a business case for leveraging DevOps for particular initiatives, managers are expecting DevOps to be in place as the default choice. Instead, someone would have to present a solid business case for not using DevOps.
From Cloud First to DevOps First
The impetus for the notion of a cloud first strategy in large part came from the Obama administration, when Federal CIO Vivek Kundra issued his Federal Cloud Computing Strategy. This strategy helped bring long-needed agility to the Federal Government, and commercial enterprises soon followed suit.
Now, the question is whether the government will do the same thing with DevOps. “The public expects easy-to-use services, and DevOps approaches to software engineering is how commercial companies keep up with the speed of that demand,” explains Pete Johnson, Technical Solutions Architect, Cloud, at Cisco Systems.
In fact, the government’s cloud first and DevOps first strategies would go hand-in-hand. “A DevOps First declaration would look at [the government’s Cloud First] mission strategy, and how it is supported by faster deployment of digital services, which would unlock the real benefit of cloud for the public to enjoy,” Johnson continues.
Some pundits go one step further, connecting the chances of cloud success directly to DevOps. “In the long run, it’s very unlikely any major enterprise will be able to deploy a public, private or hybrid cloud application set without DevOps,” opines Tom Nolle, President, CIMI Corporation and long-time telco analyst. “Without DevOps, it’s unlikely that enterprises can manage cloud applications through the typical change-state-release lifecycle with acceptable levels of staffing.”
Cloud computing thought leader and digital influencer David Linthicum echoes Nolle’s perspective. “Organize around the use of DevOps in the cloud, which typically means removing organizational layers and simplifying roles,” says Linthicum, who is Senior Vice President at Cloud Technology Partners. “You need a plan to hire the right people to augment your staff as you move to DevOps and the cloud.”
DevOps + Cloud = Disruptor
To understand better the relationship between DevOps and cloud in enterprises, CA Technologies commissioned FreeForm Dynamics to conduct a global survey of about 1,000 professionals.
Aruna Ravichandran, Vice President of Global Product Marketing and Strategy, DevOps Solutions at CA, blogged about the survey. “Only 20 percent of organizations displayed a strong commitment to both Cloud and DevOps – these were labeled Delivery Disrupters,” Ravichandran writes. “These saw significantly increased performance over either of the other groups, including 81 percent improvement in overall software delivery performance (compared to 52 percent for DevOps Devotees, and 53 percent for Cloud Champions).”
In other words, an organization that has implemented a Cloud First strategy and then moves to a DevOps First strategy as well can expect dramatic improvement in its business performance, as can enterprises that add cloud to a DevOps First strategy.
The combination of cloud and DevOps, therefore, is essential – thus providing support for both Cloud First and DevOps First approaches. “While both DevOps practices and cloud tools help organizations deliver software more quickly, and with better quality, the benefits are compounded when the two are used together,” Ravichandran concludes.
DevOps First: Essential for Microservices?
As enterprises implement microservices architectures, they quickly discover the synergies between microservices and the cloud. Add DevOps to the mix and the synergies are even more striking.
The reasons for such synergies correspond to Conway’s Law, which observes that software architectures tend to mirror organizational structures. In other words, to get the architecture right, the organization must first align with the goals of the technology.
This alignment is especially important as enterprises implement microservices. “If your organization is structured in a way that does not mirror a set of independent and autonomous services, then it probably won’t be capable of building microservices,” explains Facundo Gauna, Software Developer at Nebbia Technology. “Could you build small services with large horizontal teams? Sure. But teams could very quickly be swarmed with micro-tasks in order to support a microservice architecture.”
In other words, while implementing Cloud First and DevOps First strategies separately will lead to modest business performance improvements, DevOps First is actually essential to success with microservices. “If you don’t start with DevOps, teams can become less independent than they were before,” Gauna continues. “Productivity can grind to a halt because development teams can’t deploy their code.”
DevOps is People, Business is Software
As organizations proceed with their digital transformations, they soon realize that the human and technology sides of the business become increasingly intertwined. A DevOps First strategy is a central part of this organizational context for digital transformation.
Remember, however, DevOps drives better software faster, but isn’t really about technology at all. “Most important, DevOps is about people, more so than about tools and technology,” Linthicum adds. “Execute your plan fast: It should be like pulling off a Band-Aid. Slow change typically does not work.”
Digital transformation must be customer-driven, but it is also software-empowered. “Every business today must also be a software business,” writes Otto Berkes, CTO of CA Technologies, in his book Digitally Remastered. “Creating a competitive advantage with software requires software development to become a core competency, and mastering the intersection of innovation and speed to market will separate the winners from the also-rans.”
We can now take Cloud First as a given for organizations as they become software businesses. To achieve the core competency that Berkes champions, it’s also essential for enterprises to be DevOps First as well. Competitive advantage hangs in the balance.
Intellyx publishes the Agile Digital Transformation Roadmap poster, advises companies on their digital transformation initiatives, and helps vendors communicate their agility stories. As of the time of writing, CA Technologies is an Intellyx customer. None of the other organizations mentioned in this article are Intellyx customers. CA Technologies covered Jason Bloomberg’s expenses at its Build to Change event, a standard industry practice.