Accelerating Business with DevOps in the Cloud
When Netflix launched its business in 1997, some shrugged, thinking: How much money can a company make renting movies? Obviously, when done right, a lot, if judged by the company’s more than 50 million customers. To succeed in today’s market requires agility — a characteristic Netflix and other innovative organizations have in spades. This agility includes the ability to quickly respond to market demand with new or updated customer-facing software applications — an approach now supported by initiatives called DevOps.
Short for development operations, DevOps is driven by technology and organizational changes that remove the barriers between an organization’s software development and its IT operations teams. The advent of the cloud, which lets teams quickly bring up IT resources to develop, test and launch their software, also plays a key role in speeding the DevOps process.
“When Web-scale companies such as Netflix, Amazon and Yahoo started consistently and rapidly releasing full-blown e-commerce and other business-critical apps, people started asking, ‘What’s going on here?’” says Derick Townsend, CSC cloud product portfolio director. “Interest started gathering, and a movement and discipline around DevOps were formed.”
Before companies such as Netflix emerged, enterprises needed about six months to a year to release new or updated business-critical software applications — a six-month launch was considered quick. To survive today, companies find they need to dramatically reduce their software development cycles, even though regulations and security challenges create increasing drags on their time.
A framework for rapid release
This need for speed has driven the DevOps’ evolution into today’s set of methods and technologies that provide a framework for the rapid release of quality software. Evidence is beginning to appear that shows the approach works. “Because business outcomes are linked to IT practices, greater DevOps maturity gives companies a clear lead, as their business outcomes continue to improve over time along with IT performance,” says the Puppet Labs 2014 State of DevOps Report.
As part of Puppet Labs’ survey, analysis of responses from people working at 355 publicly traded companies suggests “that companies paying attention to DevOps practices see organizational performance benefits, and that firms actually investing in DevOps see significant gains compared to their peers.”
An enabler of this DevOps movement has been the emergence of the cloud and cloud-based technologies that can help companies manage their development and launch processes and use of cloud resources, whether public, private or a hybrid.
“It’s extremely difficult to keep up with IT-resource demand using traditional data centers compared to using a cloud environment, which can be automated, orchestrated and self-service,” says CSC’s Townsend. “Organizations can apply DevOps to speed their software development without using the cloud; however, we’ve found the combination of the two offers the best of both worlds.”
When developing software, teams often need computing resources for just a few hours or a couple of days. With the cloud, teams can quickly access computing resources when they need them, use what they need, and then shut down those resources. With the advent of tools, such as CSC’s Agility Platform, that can manage public, private and hybrid environments, DevOps teams can gain greater efficiencies.
For example, a team can use a less costly, powerhouse public cloud for development; then move to a more secure private cloud for both testing and production. A private cloud may be required for testing if the testing team needs to use real customer data, which in many countries involves meeting specific privacy requirements and using region-specific IT resources.
“The cloud provides a much more efficient way to develop software than using a traditional data center. Rather than having a small army of people manually set up and configure hardware, you can use cloud policies and blueprints to automate provisioning and enforce governance standards whenever a team needs resources,” says Townsend.
Automated tools for DevOps management
As cloud management tools have improved, making it easier for teams to manage their cloud-based infrastructure and platforms, so have the tools that help manage and govern the development and operations process. This process, where the development, quality assurance, and operations teams interact, traditionally experiences numerous chokepoints, mainly because each team has different goals. While development teams want to shorten software development cycles and focus on coding and innovation instead of infrastructure, IT operations teams need to ensure that an enterprise’s systems are secure and running.
“In many organizations, you have development teams that, once they’re done with a software release, throw it over the wall to the QA team to deploy, which, when finished with testing, throws it over the wall to the operations team to deploy,” says Townsend. “This creates too many silos, too many manual handoffs, and too much potential for manual configuration errors. With DevOps, these walls, and associated errors, are coming down.”
As walls fall and development and launch speeds accelerate, the customer feedback loop also accelerates. Teams can quickly determine whether customers like a new software application — whether it’s a new form of electronic wallet, educational tool or heart monitor — learn from that information, and quickly launch enhancements before a competitor introduces a similar application.
“The faster you discover that information — whether good or bad — and the faster you can course-correct, the more competitive and innovative an organization can become,” says Townsend.
Today’s game features serious competition from players that range from upstarts to global enterprises. Key trends, such as individualization, will only increase the pressure to innovate faster.
“Today enterprises are evaluating and implementing DevOps initiatives to shrink their release cycles from multiple quarters down to a few months,” says Townsend. “This is a huge improvement, but also just a beginning. As more organizations gain experience from these initiatives and realize the associated benefits, they’ll seek to push the envelope further. We’ve already seen organizations such as Netflix and Amazon have dozens or even hundreds of software releases per day. It may sound unobtainable today, but other organizations will eventually achieve that level of agility and responsiveness.”
Jenny Mangelsdorf is a writer for CSC’s digital marketing team.