8 Steps to Get DevOps Right
Use these best practices to implement successful DevOps initiatives.
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.
1. 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.
2. 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.
3. 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; Acceptable Value; Acceptable risk.
4. 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.
5. 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.
6. 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.
7. 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.
8. 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.