DevOps has become a buzzword and everyone talks about it, whether knowing it or not. Some excellent companies who have excelled and are at the leading edge of the DevOps crusade are even having contention and debate as to what truly is the best approach to DevOps.
To my exploration and experience, I’m documenting what I know about DevOps, list of key players, different approaches that are evolving, and how can one implement DevOps in an Enterprise.
There are as many definitions of DevOps or at least opinions of what DevOps really is, as blogs and tech journals. Various perspectives of DevOps are:
- It is where the Developer is king,
- It is where continuous testing is the driver,
- It is where all hinges on the Cloud and
- It is Continuous Delivery.
So, let me list some good definitions of DevOps I have found through various resources.
Wikipedia states, “DevOps is a software development method that stresses communication, collaboration and integration between software developers and Information Technology professionals. DevOps is a response to the interdependence of software development and IT operations. It aims to help an organization rapidly produce software products and services”.
IBM’s states, “DevOps is designing processes for coordinating software development teams with IT operations teams”.
Hence, DevOps is the crusade to bring Development and Operations closer through communication and collaboration. So, let’s reduce the gap between Dev and Ops.
Note: Development = development + testing.
One of the best sources of introductory information on DevOps is a short free eBook “What is DevOps?” by Mike Loukides that O’reilly published.
Mike Loukides explains DevOps as “…modern applications, running in the cloud, still need to be resilient and fault tolerant, still need monitoring, still need to adapt to huge swings in load, etc. But those features, formerly provided by the IT/operations infrastructures, now need to be part of the application, particularly in “platform as a service” environments. Operations doesn’t go away, it becomes part of the development. And rather than envision some sort of uber developer, who understands big data, web performance optimization, application middleware, and fault tolerance in a massively distributed environment, we need operations specialists on the development teams. The infrastructure doesn’t go away – it moves into the code; and the people responsible for the infrastructure, the system administrators and corporate IT groups, evolve so that they can write the code that maintains the infrastructure. Rather than being isolated, they need to cooperate and collaborate with the developers who create the applications. This is the movement informally known as DevOps”.
In simple terms, “DevOps is kicking the SH out of IT!”