Originally written for and posted on ThoughtsOnCloud.com.
One of the hot topics around these days in IT is DevOps. But what is it exactly, why would I want it, and if so, how do I get it? This blog post discusses these three questions; it’s up to you to decide when you start using it.
What is it?
Are you, as developers, fed up with the operations group that doesn’t understand your coding while taking all the time in the world to make a mess of implementing your application? Or are you from operations, frustrated that you’ve been given a half-developed, half-tested application that needs to be implemented without proper documentation? Or are you from the business side, overlooking the struggle between development and operations while wondering why it all takes so long to get this not-too-difficult request implemented? For all of you; DevOps is here!
The name DevOps is derived from a combination of the two words development and operations. DevOps is more than a new development methodology like agile software development, it’s about communication and collaboration between all three earlier stated stakeholders within an organization. It is mainly targeted at product delivery, quality testing, feature development, and maintenance releases in order to improve reliability, security, and faster development and deployment cycles. To support DevOps, collaborative tools are needed to support the agile service delivery approach, accelerating application deployment from weeks to minutes.
DevOps has received increased attention over the last year or so, which makes perfect sense for two reasons: the application landscapes are becoming increasingly complex, the time-to-market of new functionality needs to be decreased. Organizations need to reduce cost while maintaining a satisfactory level of quality — is DevOps a solution to this problem?
Why would I want it?
An IBM CIO study of hundreds of companies revealed that a number of organizations are struggling to just get their software into production consistently. In fact, 50 percent of deployed applications must be rolled back, with rework accounting for more than 30 percent of project costs. Ultimately, the driver is to reduce the costs of managing applications while keeping agile to be able to quickly respond to market demand.
As Werner Vogels, the CTO of Amazon, explains in his presentation in 2011 for HackFwd video (at minutes 3:00 – 5:00), Amazon struggled with the exact same problem: an immense unmanageable application landscape. The solution as he explains it is that each service (set of functionalities) is developed and operated by a small team that can be no larger than it can be fed on two pizzas. Even shorter is “you build it, you run it.”
Now I’m not saying that every organization should do the exact same, but the underlying thought is DevOps. Make functionality and maintainability a shared developers/operations responsibility, supported by focusing on inter-team collaboration and communication.
As Ovum, an organization that provides clients with independent and objective analysis, describes it in its article: “The solution is to provide both teams with a shared objective that is described in business outcomes. This comes from a governance layer that must mandate the behaviors. The roadmaps and demos shown at Pulse indicate that IBM clearly “gets” this and is working to bridge the gap between development and operations at all levels”.
How to start using it?
Back in February 2011 an excellent white paper Collaborative DevOps with Rational and Tivoli was made available. It described the challenges that exist between development and operations. It also described how integrations between products from IBM Rational and IBM Tivoli support effective collaboration to achieve improved accuracy, efficiency, agility, and security in the deployment and monitoring of software systems. The scope of the paper spans the areas of strategic planning, deployment planning, automation, and the identification and remediation of production problems.
Sure you can implement DevOps tools yourself in your own data center, but wouldn’t it be great to get this “as a service” from the cloud? No hardware, installation, or licenses to worry about. No long-term investments needed. Just switch it on and start using it. This is now possible using IBM SmartCloud Application Services. At the platform as a service web page, click the video (4:08) shown on the right to obtain a quick but thorough understanding of how DevOps can work for your business as offered from the IBM SmartCloud.
And what’s even better; you can register now for the pilot program for IBM SmartCloud Application Services to be able to use DevOps from the cloud! Just navigate to IBM SmartCloud and follow the instructions — it’s that simple.
Still hungry for more? Navigate to the IBM SmartCloud Continuous Delivery webpage which holds a wealth of information about DevOps and the various implementation scenarios.