A recent Enterprise Management Associates (EMA) blog, Best Practices for Innovating Through Cloud Technologies discusses the results of EMA’s 2014 research on open cloud orchestration. It examines the pros and cons of a variety of cloud form factors and the business benefits of cloud computing in general.
EMA has also done a great deal of research on the topics of DevOps and Continuous Delivery, conducting major surveys on these topics in both 2014 and 2015. Cloud computing resources, like any other on-premise or off-premise hosted infrastructure, are, from the software perspective, in place for only one reason—they are platforms enabling the delivery of high-quality software and applications to facilitate business and customer interactions.
The DevOps movement can be viewed as building on IT Service Management (ITSM) as a set of informal best practices specifically addressing the collaboration necessary to support the heterogeneity of the software and infrastructure underlying modern applications. EMA analysts view DevOps practices as “the ideal intersection of people, processes, and tools required across the application lifecycle to facilitate the seamless delivery of applications supporting business objectives.” The emphasis is on the word “lifecycle” since both tools and collaboration are required at each stage, and—as with the HEAT ITSM workflow—continuity across the various stages is essential.
Today’s applications are massively distributed and componentized and require diverse elements—networks, databases, servers, storage, and often cloud infrastructure—to execute. Supporting these complex ecosystems requires cross-functional skills and collaborations that have now been institutionalized as dedicated teams in almost 60% of companies. It also requires tools capable of bridging silos and providing a common language that allows diverse teams to collaborate.
EMA sees DevOps as a fundamental skill supporting business flexibility and agility. The results of EMA’s latest survey on the topic (Automating for Digital Transformation: Tools-Driven DevOps and Continuous Software Delivery), conducted in October 2015, support this statement. Companies rating the interactions between Dev and Ops as “Above Average” or “Excellent” are 11.5 times more likely to achieve double-digit revenue growth than those rating such interactions as “Average” or “Poor.”
Why is this the case? EMA also sees DevOps practices as a framework for Continuous Delivery, which is another hot topic at the moment (see Figure 1). The term itself can be misleading, as “Continuous Delivery” means different things in different contexts. At its most generic, Continuous Delivery encompasses an iterative and ongoing cycle of development, testing, and delivery of software to a targeted destination. The destination could be a production environment or a software product package. Regardless of the target, the goal is to accelerate the delivery of software functions and capabilities. The value to the business is that good ideas can be put into practice as new software products or features much faster than was possible in the past with traditional lifecycle methodologies.
Figure 1. DevOps as a Framework for Continuous Delivery
From this perspective, DevOps and Continuous Delivery are intimately intertwined, both with one another and with revenue growth. In effect, applying DevOps principles across the lifecycle smoothes the way or “greases the wheels” for efficient delivery of application code.
Indeed, in EMA’s latest survey, almost 90% of the respondents reported their companies are utilizing both, and almost 20% are delivering new code daily or more often (see Figure 2). Respondents report business benefits including higher levels of customer satisfaction, faster revenue growth, and better competitive differentiation from their Continuous Delivery initiatives.
Figure 2. 65% of surveyed companies deliver code at least weekly; 15% deliver daily
There is, however, a dark side to this scenario as well. While the business benefits can be significant, adverse impact on production environments and on IT support can also be significant. Fifty percent of companies surveyed report that development and operations teams are spending more time supporting production as a direct result of frequent production changes. Today, development teams spend approximately as much time supporting production as they do developing new applications. Operations spends almost 15% more time troubleshooting application problems than it does troubleshooting infrastructure problems.
These statistics are a good argument for tools supporting change control, unit and integration testing, workflow management, and deployment automation. They also support investments in Application Performance Management (APM) tools that can be used across the lifecycle to troubleshoot issues in complex application environments.
Increasingly, these high-performing companies are turning to automation to solve these problems. Companies that have automated Continuous Delivery processes often report that production problems decrease, based on the fact that hardware and software provisioning becomes planned and policy-driven, enabling a “cookie cutter” approach. To enable maximum flexibility in terms of deployment targets, best practice dictates that tools supporting deployment, provisioning, workload automation, and release automation should be “cloud ready.”
This means they are equally capable of deploying configurations and code artifacts to cloud infrastructure, such as Infrastructure as a Service (IaaS) and private cloud environments incorporating virtualization, as they are deploying to traditional physical hardware.
To sum up, the companies growing revenue today appear to be those that are also maximizing investments in DevOps and Continuous Delivery practices and the tools that support them. As the statistics above demonstrate, the results can be stunning. However, automation, properly applied, can mean the difference between applications and services that benefit the business and those that introduce chaos into production and consume additional resources.