

What is DevOps?
Lately there have been a lot of talks about DevOps as one of the trends in business (together with Big Data, Cloud, Mobile, and Social media). Since I’m starting to play around with the tools that helps to bring DevOps approach to an organization, I decided to write this article and briefly explain what DevOps stands for.
“]DevOps (a portmanteau of development and operations) is a software development method that stresses communication, collaboration and integration between software developers and information technology (IT) 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.
I see DevOps as a philosophy that helps increase delivery speed and quality via frequent, automated releases. Many companies are adopting agile practices and tries to reduce customer feedback cycles. These companies usually come to the point when development teams successfully follow the agile practice (produce software incrementally in short time cycles), but they are struggling with the delivery process. They are not able to rapidly and more frequently deploy software to many different environments, they need a continuous delivery pipeline from development to operations, and all the way to production.
For example Flickr developed DevOps capability to support a business requirement of ten deployments per day; this daily deployment cycle would be much higher at organizations producing multi-focus or multi-function applications (think about Google, they do many releases every day but most of them are not noticeable). This is referred to as continuous deployment or continuous delivery. [1]
While DevOps is an approach and not a set of tools, the adoption of the DevOps philosophy can be greatly aided by having the right tools. In April 2013, IBM acquired UrbanCode company and strengthened its DevOps portfolio by tools as uDeploy and uRelease. But I will talk about these tools in another article.
Why DevOps?
In 2013, IBM Institute of Business Value made a study [2] saying that 54 % of companies believe software delivery is critical but only 25 % leverage software delivery effectively today. In the end 69 % of companies outperform those who don’t adopt DevOps approach.
Challenges of software delivery
- Costly, error prone manual processes and efforts to deliver software across an enterprise
- Slow deployment to development and test environments leave teams waiting and unproductive
- Higher risk due to managing multiple application configurations and versions across servers
What’s going wrong?
Benefits
- Drive down cost by automating manual tasks, eliminating wait-time and rework. It reduces the amount of manual labor, resource wait-time, and rework by eliminating errors and providing self-service environments.
- Speed time to market by increasing the frequency of software delivery through automated, repeatable, deployment processes across development, test and production.
- Reduce risk through increased compliance of application deployments. It delivers higher quality application releases with increased compliance through end-to-end transparency, auditability and reduced time to feedback.
- Reduce errors: Automated software release and deployment
- Improve productivity: Push-button deployments for developer and operations
- Compliance and auditability: Enforced security and traceability
Conclusion
DevOps enables organizations to rapidly and more frequently deliver applications to market with reduced cost, risk and increased quality. It’s helping organization realize the value of agile with continuous software delivery.
IBMers talking about DevOps
Sanjeev Sharma is one of the IBMers I have been following for a long time. He writes his own blog on https://sdarchitect.wordpress.com/. There is one of his presentations about DevOps from IBM’s conference Innovate 2013 where I was also honoured to be.
Resources
[1] Wikipedia, the free encyclopedia: DevOps, http://en.wikipedia.org/wiki/DevOps
[2] IBM Institute for Business Value: The software edge – How effective software development and delivery drives competitive advantage, http://www.ibm.com/smarterplanet/global/files/se__sv_se__products__the_software_edge__.pdf