With digitalization, there is a critical need to support businesses that must operate at higher speeds and with greater agility. This has resulted in DevOps growing quickly and becoming key to many organizations in their pursuit of competitive advantage. Although DevOps delivers compelling business advantages, many organizations struggle to benefit from DevOps initiatives due to uncertainty about how to approach them.
The most successful organizations know the business benefits they hope to realize from DevOps
“DevOps challenges conventional IT thinking with its lack of a standard definition and approach, its constant evolution, and its requirement for acceptance and management of risk,” says George Spafford, research director at Gartner. “This imprecise target state has caused many IT organizations to hesitate in implementing a DevOps strategy.”
Although there is no specific set of required stages, Spafford recommends eight foundational steps that infrastructure and operations (I&O) leaders can follow to get their DevOps initiatives up and running.
Identify the business justification
A DevOps initiative must focus on business requirements and not on “doing DevOps for the sake of DevOps,” wherein the methods and tools become more important than what customers need. Organizations must avoid the all-too-common mistake of launching a DevOps initiative before establishing that a business reason exists to do so.
“For example, instead of focusing on release rates and doing things faster, start with the business value by asking what that will enable,” explains Spafford. “The justification could be something like ‘by increasing our release rate, we will be able to innovate faster and thus support sales and marketing’s push for ordering with a mobile app.’ The most successful organizations know the business benefits they hope to realize from DevOps.”
Define DevOps for your organization
Gartner defines DevOps as a business-driven approach to deliver solutions using agile methods, collaboration and automation. However, it’s important to define the target state in terms that your organization will understand. Picking a label for your initiative to provide a “banner” for people to identify with and support will help to get them on board. The definition should be short, focused and supportive of the business justification.
Select the “first mover” application
Do not deploy DevOps in a single step. DevOps must be deployed iteratively, with each increment satisfying all three of the following qualities:
- Politically friendly environment: This means that people are willing to work with the first-mover application and give the initiative a fair and honest try.
- Acceptable value: The first mover must deliver enough value to earn credibility and approval to continue.
- Acceptable risk: Because of the ambiguity and uncertainty surrounding DevOps, many people view it as risky and are afraid to begin. Organizations should identify an opportunity that involves an acceptable level of risk, because everyone — IT, operations, development, information security, regulatory compliance and audit — must learn.
“The core use case of DevOps is in agile development and situations with considerable uncertainty such as machine learning and Internet of Things (IoT), but because the DevOps philosophy can be applied broadly, there will be other opportunities to introduce concepts,” says Spafford. “The initial impact, however, will usually be better with systems of innovation because the existing capabilities likely can’t support these initiatives such as big data, machine learning, IoT and so forth.”
Because people are the most important part of a DevOps initiative, understanding and implementing the right motivators is critical.
Identify the initial team
People are the main ingredient in a successful DevOps initiative. When selecting members of the initial team, emphasize behavior over skills. Teaching technical skills is easier than teaching the correct behaviors — and the wrong behaviors will derail the DevOps effort. Look for a good team player who is smart, motivated, understands risk and is a committed lifelong learner, capable of working in new ways.
Establish objectives and metrics
Because people are the most important part of a DevOps initiative, understanding and implementing the right motivators is critical. “In many traditional organizations, objectives are set departmentally and IT metrics are in place to solve problems and reward the person who solves them,” says Spafford.
“In a DevOps initiative, objectives must be at the team level and aligned to the business objective given to the team. DevOps team members must realize that they all have the same objective, and metrics and incentives must encourage teamwork toward business goals as opposed to metrics that reinforce risk aversion and individual problem solving.”
Focus on constraints
I&O leaders should identify the largest bottleneck that is limiting throughput. The life cycle of developing and transitioning new and changed systems into production will have a greatest constraint that limits throughput. By focusing on this greatest constraint, the DevOps team can methodically identify what is holding them back from the required cadence and address it.
Don’t derail a valid DevOps initiative by trying to scale before you’re ready
Develop the toolchain
The overall goal of a true DevOps implementation includes an integrated toolchain that enables an approach to evaluating and selecting tools so that each tool can be loosely coupled to its adjacent tool in the application life cycle. Linking all of the automation touchpoints and information flows speeds the movement of releases through the toolchain while reducing errors, defects, rework and outages. This will allow the tools used at each stage to be aligned and will provide a view on where automation, integration and tool hand-offs need to be achieved within and between stages.
Scale when ready
Too many companies make the mistake of believing they need to scale DevOps before they start in order to get approval. This leads to a vicious cycle. Because they don’t know how they will scale DevOps, they can’t start. And because they can’t start, they can’t learn and figure out how to scale.
“Don’t derail a valid DevOps initiative by trying to scale before you’re ready,” advises Spafford.
“Instead, bring together your team, start moving in the direction that seems to make the most sense and address the constraints encountered. Learning and evolution must happen in terms of the people, the technologies and the processes. Incurring technical debt is inevitable, and managing that debt is a part of the new model as evolution occurs.”