Improving the hand-off of work from development to operations is an age-old goal. It came into new focus in 2011 under the banner of "DevOps." It has always been the case that packaging and scripting software to run on hardware has consumed lots of project time. That time looks out of balance as other parts of the cycle shrink.
It has often been the case that developers ''throw it over the wall'' – delivering software that runs on their machines but fails in the data center. As the push to quickly launch Web applications accelerates, the undue time it takes to get new applications and integrations running right begins to grate on all the parties involved. So the problem gets a new name – ''DevOps'' – and, in the year just passed, new attention.
In simple terms, DevOps is an effort to promote more collaboration between development and operations teams. At events like the recent LISA [Large-Installation System Administration] USENIX CONF in Boston, it was widely discussed. LISA conference chair people and presenters alike label DevOps an important trend. One keynoter, Ben Rockwood, director of systems engineering at cloud services provider Joyent, said DevOps is best understood as both a cultural and professional movement.
"DevOps is a huge shift in our industry. The funny thing is that it’s nothing new," said Rockwood. The correct philosophy of DevOps is like yin and yang, where opposing forces exist separately but are effectively unified and mutually dependent.
Today, said Rockwood, "We have siloed priorities. Development produces goods, operations produces services. Development's goal is get it out on time with no defects. Ops’ goal is to get it up - keep it up."
"Sit together. Join each others' meetings. Have fun," he exhorts the two sides of the application integration equation.
What is needed is "full collaboration between teams," said Rockwood. If dev and ops work together from early on, "boundaries blur, obtaining a one-team feel," he said.
"DevOps is a journey of discovery, not a destination," he told the LISA Usenix crowd. "It's the whole idea of continuous improvement."
As 2012 looms, DevOps seems to be taking a trajectory along the path of Agile development. That is: It is being described in terms that mark it as something of a philosophy, voyage or a way of life. That is not meant as a criticism. The solution to many of our technology problems often comes down to “let's work together better.” The idea of more and earlier meetings (often dreaded, that!) between dev and ops often comes up. What is up in the air, however, is how much new tools can help bring about better developer-operations outcomes. For more on that, we turn to Scott Ambler, Agile development practice leader for IBM.
In June, noted Agilist Ambler told SearchSOA.com that cross-commitment and early collaboration are important, especially as more complex application integrations become the norm.
“Developers find ops won’t support the technologies that the teams have used. They won’t put up the servers. It’s a surprise,” he said. But this should not be a surprise. The development and operations teams should have been looking at these issues long before 'deployment day.' Ambler and his IBM colleagues have been looking to systematize collaboration via a process framework called Disciplined Agile Delivery. The work has had an influence on recent IBM Rational tool directions.
The 800-lb gorilla in the DevOps' room is cloud computing and Platform as a Service (PaaS). Behind the PaaS movement is a desire to automate - and speed-up - new application integration deployments. This is in part due to the uptake of Agile methods in development teams. Some say this ushers in a new era for DevOps.
“Cloud changed the game for all of us," said Joyent's Ben Rockwood. "Cloud has really helped developers to bypass IT.” They often do the operations end-around using a personal credit card, he noted.
"Cloud has been a great leveler, anyone can be a player. There is no ramp-up time," he said.
Complex integrations - on the cloud and in the data center - have placed developers in a position where they are far more responsible for operations-related issues than in the past. "The developer has a lot more experience with the APIs that control these things – more than ops has," he said. That has turned into another reason to bypass operations, and open up an account with a cloud computing vendor.
But, with some shifts, the likely case is that two sides - development and operations - will continue to exist, albeit with some new procedures. 2012 should be interesting as the drama plays out.
Rockwood says the 20th Century operations research work of Peter Drucker, W. Edwards Deming, Eiji Toyoda and others provides a beacon for future DevOps' directions. And, he predicts, while cloud computing may change the nature of operations' work of deploying complex application integrations, cloud computing will not curb the demand for operations personnel.
"Cloud will increase the demand for [system administrators]," he said, "but our concerns are going to move up the stack."
Business value off operations
It is early to gauge the track of the PaaS cloud, Luke Kanies, CEO, Puppet Labs, a maker of systems management automation software, told SearchSOA.com in an email message. But Kaines, who spoke at Lisa Usenix 2011, warned that some people look to the PaaS cloud as an alternative to in-house system administration, which, he remarks, is a competency that would-be successful firms should pursue.
''I think PaaS is more about having little to no operations, whereas DevOps is about changing the role of operations to be focused more on business value,'' said Kaines.
''I fundamentally believe that you can't outsource your core competencies - if it's a key differentiator or your competitive advantage, you have to own it and you have to be the best at it. DevOps is a statement that operations can be a competitive advantage for your organization, but PaaS is basically outsourcing your operations to software, and is an implicit statement that operations can't be a competitive advantage for you,'' he said.
Like others, Kanies sees similarities between DevOps and Agile methods. ''DevOps, like Agile development, is an attempt at drawing attention to what the best people are doing and how it's different from what's normally considered best practice,'' he said.
How did DevOps do this year? ''This year DevOps seemed to cross into the mainstream,'' Kanies suggested.