DevOps: Keeping your cloud transformation under control

DevOps extends beyond infrastructure automation to encompass people, governance, and process

Just when you thought it was safe to go back and visit your developers, along comes a new buzzword to empower your software processes and raise eyebrows at boardroom meetings. That buzzword is DevOps – a portmanteau of 'development' and 'operations' – and it is already revolutionising the way many IT organisations work. And if you haven't run across it yet, you soon will – if, that is, anybody can agree on exactly what it means.

Broadly, DevOps has emerged in recent years as a way of adding procedural rigour to the process of developing, testing, and deploying new software.

That process has changed dramatically in recent years as on-premises server virtualization – and, later, cloud-based platform-as-a-service (PaaS) providers such Amazon Web Services (AWS) and Microsoft Azure – empowered developers to set up new application-testing environments quickly and easily.

It wasn't too long ago that testing a new application required developers to write a business case for the purchase of a new server for thousands of dollars, wait for days or weeks until it arrived, then go through the headaches of setting it up and loading their applications.

It was headache-inducing and contributed to many development projects running slow and over time.

Virtual server and cloud environments fix this with software-based virtual machines (VMs) that can be started within minutes from a template, copied en masse and decommissioned at will.

Developers were early adopters of this technology – which has since become the basis of virtually all enterprise applications – exactly because it made their everyday activities considerably easier.

Availability of VM platforms has facilitated the broad adoption of 'Agile' project-management methodologies, in which developers work together in functional teams and build software iteratively to increase flexibility and responsiveness, and hasten ROI.

Yet for all the benefits it provides for developers, Agile requires operational discipline as well: Each of those VMs needs to be tracked, managed, and eventually shut down when it's no longer needed.

When the business is paying by the hour for each VM running on a PaaS platform, costs escalate quickly; left unchecked, Agile development environment is to VMs what ants are to your weekend picnic — turn your back for a moment, and the place will be crawling with them.

DevOps, in this scenario, is the can of Mortein that most people find out too late that they forgot to bring along.

Operational collaboration – eventually .

This, then, is one of the core conceits of DevOps: Adding control to the process by which newly empowered developers work their craft.

“For me DevOps is two sides of the same coin,” explains Hannah Browne, Victoria state manager with DevOps specialist firm Cevo.

“One is the technology piece which is easy for people to access and understand – it's about automated infrastructure and environments for provisioning – but the secondary piece is very much around people, governance, and process.”

It may seem far removed from software developers focused on writing bug-free and effective code as quickly as possible, but that secondary piece is critical because it reflects the need for DevOps to involve continuous collaboration with business organisations so that business concerns – things like customer service, efficiency and profitability – can be addressed as part of the development process.

Doug Averill, global public sector business line leader with application provider Pegasystems, sees DevOps as a key tool in the transition towards customer-focused development and service rollouts. By incorporating customer feedback and Net Provider Scores (NPS) to measure response to each new application or version, organisations can build tight feedback loops that guide Agile development and are technologically empowered through DevOps.

“DevOps is the endgame in this,” Averill explains. “Why wait for something to be negatively reviewed in the press, or by your front office workers? By taking a stepwise approach you're much more responsive to any of the operational changes that might be coming. Agencies want to understand best practices and want to be able to share; our role in this is providing world class technology and defining the art of the possible.”

Far too often, however, Cevo's Browne finds client organisations have simply failed to bridge this distance – a task that she calls her “pet” project when working on DevOps projects.

“I hate the idea that we've grown up in these organisations where we are so removed from what the end customer actually engages with our company for,” Browne says.

“I don't care whether they are in sales, marketing, operations, IT or HR; they exist to service a need for a customer. Traditional IT shops have happily siloed themselves away from the customer in the past, and I love that DevOps is changing that. By driving the realisation that we are not siloed business units – that we are all part of a value chain built around delivering something excellent for the customer – it's focusing people on what's valuable and what's important.”

Software development-tools giant CA Technologies, aided by market research firm Freeform Dynamics, has been tracking the emergence of DevOps in recent years and this year's report suggested DevOps done properly can deliver significant benefits.

‘Advanced’ DevOps users, the study found, are 2.5 times more likely to have seen improvements in customer retention; twice as likely to have seen improvements in customer acquisition; 3.4 times more likely to have seen progress on market share; and twice as likely to have seen a positive impact on revenue growth.

Yet just what constitutes 'advanced' DevOps remains up for debate. AppDynamics developer evangelist Dustin Whittle, for one, outlines just six core components that include infrastructure automation, configuration management, deployment automation, log management, performance management, and monitoring.

Yet these are also to be implemented with a contextual eye, Whittle warns: “DevOps isn’t just a set of tools,” he writes, “but a philosophical shift that needs that requires buy-in from all folks involved to truly succeed. It’s only through a high-level of collaboration that things will change for the better.”

Join the Computerworld newsletter!

Error: Please check your email address.

Tags software developmentagile developmentinfrastructurevirtualizationCloudDevopscloud computingagilevirtualisation

More about AdvancedAgileAPACAppDynamicsAWSCA TechnologiesGartnerMicrosoftPegasystems

Show Comments