DevOps isn’t a single technology or a specific methodology. Nor is it a field of computer science or business management. Think of it as a movement toward the seamless integration of enterprise application development and the IT production environment.
The goal of DevOps is to tear down the silos that have separated the worlds of application development and system operations within corporate IT departments. It also represents an effort to more closely align IT and business goals.
The payoff will be to bring about high-quality business solutions that make companies more innovative and competitive. But the ultimate objective of DevOps is to rapidly and continuously deliver products that benefit customers and result in improved revenue.
Not only does DevOps aim to create a virtuous circle between the development and deployment of new applications and services, it’s a means to weave business objectives into the very fabric of enterprise IT.
Enterprise Best Practices
System integrators, cloud solution providers, e-commerce vendors and every other type of enterprise with a significant investment in their computer operations are embracing DevOps as a means of streamlining and accelerating application development and deployment.
The first step is to foster improved communications and collaboration between the development and operations teams with the goal of reducing errors and redundancies. Another important goal is to speed up the deployment of new applications and Web services. Where the waterfall method of application development often took months, agile methods are enabling developers to deploy applications in a matter of days.
The next step is to create an infrastructure that supports rapid development of applications, automated testing and the smooth deployment of new systems into the production environment.
Just as businesses and governments have embraced Six Sigma and other methods for continuous process improvement, DevOps practitioners are integrating application development methodologies such as agile development to enable IT professionals to rapidly create, deploy, analyze and revise their solutions based on the analysis of how these systems function in the operational environment.
Tools of the Trade
There are a vast number of computer vendors selling tools and services that will help IT departments make DevOps their standard operating procedure.
DevOp strategies bring into play a number of tools and best practices. On the development side of the equation, practitioners are using agile methodologies, application programming interface (API) integration, cloud-based development and testing services, service-oriented architectures and application lifecycle management to make DevOps a reality.
On the operations side of the house, IT professionals are implementing high-availability architectures that are elastic enough to expand and contract as compute needs require. Public, private and hybrid cloud services are being widely implemented to provide on-demand resource allocation.
The automation of capacity planning, performance management, and security monitoring are also playing a role in the DevOps movement and improved IT operations.
Other technologies that play into the adoption of a DevOps mindset include service virtualization, software release automation, data mining and analytics. Service virtualization lets IT professionals model and simulate the behavior and performance characteristics of applications in the development and testing phases. It also takes into account the impact applications have on the underlying infrastructure.
Data mining and analytics techniques are being integrated into a variety of system management tools to look at the wealth of historical data IT systems collect. Using this data can help operations professionals perform what-if scenarios to help determine optimum configurations and anticipate potential problem areas.
A New Mindset
DevOps isn’t a silver bullet that will resolve all the challenges facing companies as they strive to innovate. Rather, it’s a combination of business and IT best practices that will make organizations better able to respond quickly to competitive pressures and market opportunities.