DevOps: Indispensable Approach or Costly Distraction?
The task of getting software development and operations groups to cooperate is a perennial IT challenge. Into that particular divide steps DevOps, a collection of ideas and practices that aim to improve integration between the two sides on IT. The DevOps label, although fairly new, represents a packaging of concepts that have been around for a while. Agile development methodologies, for example, have been advocating streamlined development processes for years. DevOps' reception has been mixed, however. Critics describe DevOps as overly disruptive and possibly headed for an early exit. Other observers believe the approach can yield greater efficiency. Intelligence in Software recently discussed DevOps with Greg R. Clark, Agile mentor and IT PMO at Intel Corp's Agile Competency Center.
Q: Critics of DevOps say it amounts to an expensive cultural disruption, but adherents contend it provides a path to better communication and improved software quality. Who's right here?
Greg R. Clark:
What is DevOps? It's important to start there. The way I see it, if you step back and look at your software development value stream, the traditional software approach is the waterfall model. It's a very linear, phased approach to developing software that involves highly specialized job roles and several handoffs to get through the value stream.
The result is your customer becomes very disconnected from the people who are actually developing the product for them. In a linear value stream like that, with handoffs from one person to the next, you create waste and incur transaction costs that don't add value to the end product. Agile methods, however, take the value stream and collapse it. Instead of a role-specific, phased approach, it takes all those roles and throws them together. It eliminates the handoffs and connects the customer to the team developing the software for them.
The problem is that most Agile methods don't talk in a very detailed way about how to deal with the handoffs between the development team and the operations team. That's where DevOps comes in. It's an ideology like Agile, but it focuses specifically on the big, hairy handoff we have to deal with to get software from the development organization to the operations organization.
Is it disruptive? Yes, it is disruptive to implement. There's a strong culture in both the development and operations organizations. They are based on single-minded goals that are not aligned. DevOps focuses on changing the paradigms that each of those organizations work in. Development organizations should be focused on delivering high-quality, highly sustainable software to their customers quickly, but they should deliver something that involves automated deployment and requires low effort on the part of the operations team to deploy. At the same time, operations organizations should be focused on maintaining a stable environment, but one that is also flexible enough to enable the development organization to deliver software quickly.
Sometimes disruption is necessary in order to break down these paradigms to allow us to continuously improve how we deliver to our customers.
Q: Is there a correct way to pursue DevOps?
It depends on the specific organization. There are a lot of different approaches you can take. The best method for an organization depends on that organization and the issues they are trying to solve. A .Net Web development organization is not going to have the same problems, and the same solutions to those problems, as an enterprise ERP organization.
Q: So there's no particular DevOps document that organizations can use?
A lot of people really struggle with these movements that don't have very concrete processes that they can follow. People are just wired differently. Some people want to be told specifically what to do or they have no time for it.
You really need to understand the ideology. That is, stepping back and seeing your entire value stream. What can we do to achieve much shorter release cycles? What would it take to automate deployment? What would it take to get teams to collaborate early and often on that development cycle?
This is where communities of practice and the Internet are really beneficial. You get a lot of people blogging about their experiences with DevOps and about how they've made these concepts work in different situations. We can go off and learn from others and develop a set of practices that we think are going to work for our unique situation.
Q: How does the rise of cloud computing impact DevOps?
Cloud computing certainly gives the operations organizations a tool that they can leverage to better meet the needs of development organizations. They can deploy hosting environments rapidly and refresh them rapidly. They are able to deploy multiple environments on a larger scale without the additional headcount cost to maintain them. The other side to that is that cloud computing should also serve as an incentive for operations organizations to invest in these DevOps ideas. If they don't make an effort to meet the needs of the development organizations, those organizations now have an alternative. They can go outside the enterprise directly to an external cloud-hosting service where they can get a development environment up and running quickly at a reasonable price.
Q: Overall, where do you see DevOps going? Will it become widely used? Will it go away? Is it a transitional stepping stone to something else?
To be honest, when I first saw the term pop up and learned what it was referring to, I actually thought it was kind of silly. Not the idea that it represents, but just the fact there was this whole movement springing up around what I and other Agile practitioners had done many years before in implementing Agile in our organizations. These things they are talking about in DevOps are a natural extension of Agile when you are trying to streamline how you deliver software to your customers. But it is very difficult to break down the barriers in certain environments. The more you get into large enterprise environments, the more difficult it becomes to convince people that this is the right thing to do.
Movements like DevOps grow when there is a big need to fix a business problem that is common throughout the industry. Putting a name to something helps to legitimize it in a way, and also focuses people's attention on the problem area so they are more prepared to address it as they drive continuous improvement in their organizations. It also acts as a catalyst to change. When people see a particular term like "DevOps" being discussed repeatedly, it can provoke them to take action by implementing those concepts in their own organizations.
Is it going to go away? Maybe the term will merge into something else, but the ideology it represents has been around for a long time. I think anyone using lean principles to make the software development value stream more efficient will sooner or later get around to addressing this issue that DevOps is referring to.
- That's Entertainment: 3D Leaps From Theater to Home
- Are You a Tech Geek?
- Is Your Office Preparing For an iPad Insurgency?
- How to Find Happiness on Social Networks
- The Pirate Bay to Fly 'Server Drones' to Avoid Law Enforcement
- DevOps: Indispensable Approach or Costly Distraction?
- New Programming Languages to Watch
- How to Conquer Tech Buyer's Remorse
- Trade in Your Old Gadgets for Cash or Credit
- Why the New iPad Features Don't Really Matter
- Chinese Computer Games
- Why Do We Need Intelligent Desktop Virtualization?
- Lawsuit Says Facebook Tracks Users After Logging Out
- Facebook and Twitter Cause Insider Trading Headaches for the SEC
- Avoid Social Media MBAs, Some Students Say
- 5 iPhone Apps I Cannot Live Without
- The New Mobile Landscape
- Is Free Public Wi-Fi Safe?
- Keep Your Data Safe When Telecommuting
- Security Issues for Multicore Processors
- How to Reduce Smartphone Security Risks
- Are You Too Snarky Online?
- Who's Gawking at Your Photos?
- Is Social Media a Waste of Time?
- 5 New Ways to Feed Your Online Addiction
- Investors Increasingly Tap Social Media for Stock Tips
- McAfee's Edward Metcalf Shares Hybrid Rootkit-thwarting Strategy
- A Game Plan for Protecting Stored Data
- Think Big When It Comes to Data Breaches
- Information Security MBA's Teach Business Side of Cybersecurity
- Apple Predicts 'Death of the Big Backpack' with New iPad Textbooks
- FBI Wants to Monitor Social Media for 'Emerging Threats'
- Youth on the Web: Reason? Who Needs a Reason
- Google Unveils 'Find My Face' Recognition Tool
- Why Investors Should Keep Their Eyes on the Cloud
- 10 Ways to Stay Safe While Shopping Online
- Take Advantage of Free Shipping Deals This Holiday Season
- Online Shopping Deals Hurt State Budgets
- Tips for Shopping With Your Smartphone
- Seven Rules of Successful Bloggers
- Twitter Redesigns Site, Aims for Simplicity
- 3 Ways to Use Foursquare to Connect With Your College
- United States Reacts to Indian Government's Efforts to Censure Online Content
- Will Apple Be the Same Without Steve Jobs?
- Steve Jobs: 6 Secrets of Success
- Open Clouds
- The Cloud: A Security Solution for Small Business
- 4 Twitter Tips for Business Success
- Twitter: How to Tweet to Get Results
- 3 Sneaky New Online Scams to Avoid
Copyright © 2012 Studio One Networks. All rights reserved.