DevOps is rapidly gaining ground in organizations that feel intense pressure to operate more efficiently and rapidly deliver new products and services to their customers.
DevOps, short for development and operations, is a new way for IT departments to organize their resources to become more closely aligned with business goals and requirements. DevOps emphasizes the communications, collaboration and integration of software development and operations management within the IT department.
It also represents a strategy for a seamless flow of ideas between business units and corporate IT departments. The overarching goal is to innovate quickly and make changes on the fly as new insights and opportunities become apparent to business leaders. This means business leaders must communicate these requirements to the IT department, which must add new capabilities through new applications and existing systems.
According to recent surveys, more than 60 percent of IT departments are using DevOps to produce more applications, to deploy them more rapidly and to ensure higher levels of operational success. That’s up by 25 percent from just two years ago.
While DevOps isn’t a specific methodology or a fixed collection of tools, it does make use of the latest best practices and system management techniques offered today. DevOps is really a mindset that requires application developers to quickly respond to business demands for new capabilities by deploying software that supports those requirements. This means development teams will build complex software, Web services and mobile apps, spinning out new features and updated components on a daily or, in some cases, hourly basis.
Once the software is tested, it’s handed off to the operations team to deploy it in the production environment. The development and operations teams are in constant contact to understand what each team member is doing and when the handoff needs to occur. Once the software is deployed, the team members continue to collaborate and make critical adjustments in the software, servers, networks and other areas to optimize the business processes these IT systems support.
While the concepts behind DevOps have been around for quite some time, the term gained significant visibility around 2009 with the intersection of several application development and system management practices, including agile development methodologies, lean start-ups, cloud computing and management automation.
A New Attitude
Many enterprise computing vendors claim to have DevOps solutions, but a successful DevOps strategy requires more than just IT tools. It requires an organizational structure that supports communications and collaboration between the application development and operations teams. It also requires IT governance in the creation of processes and best practices that encapsulate the DevOps mindset. Moreover, it requires vigilance by IT management to ensure business priorities are being funneled into the development and deployment process in a consistent fashion.
Development and operations teams must find a way to share responsibilities such as priority setting. Both groups must agree on the business goals they’re supporting and the metrics used to track the effectiveness of new software. They must also assume shared responsibility when errors occur and not engage in finger-pointing.
The teams must also agree on budgets, resource allocation and the trade-offs between speed, stability, features, usability, access and control.