DevOps is an umbrella name for a collection of improvement strategies built around a simple idea: that all facets of your technology organization must be aligned towards the the common goal of rapidly and reliably producing high-quality software-based products and services.
DevOps is about continuously looking for new ways to break down silos, remove bottlenecks, and eliminate inefficiencies — all while holding ourselves to a higher standard of quality and reliability.
DevOps borrows heavily from the lessons of Lean and Agile, including the lesson that the path to success begins with implementing a culture of Continual Improvement within your organization. This idea of Continual improvement is at the core of our “3 B’s” approach to solving DevOps problems.
- Benchmark: visualize delivery processes, measure capabilities, and identify wastes
- Blueprint: transform the lessons of the Benchmark into improvement strategies, toolchain design, and action plans
- Bootstrap: accelerate improvement through mentoring, skills injection, and implementation assistance
What are the common signs of DevOps problems?
- Time-to-market and cycle times are excessively long
- Frequent delays or excessive project downtime
- Frequent self-inflicted environment and service issues
- Too much of your budget is going to “run the business” activity and not enough on “grow the business” activity
- Difficult or excessively costly to scale operations
- Business opportunities are missed due to inflexibility
DevOps aligns technical capabilities with business goals
The DevOps point-of-view is that your technology organization exists to enable the business to react quicker to market forces and out-innovate the competition. In our new Web and app enabled world, your technology organization is your digital “factory floor”. It’s where value is created and how you make your money.
To measure the success of your DevOps improvement efforts you have to measure the impact from the perspective of your business. Do ideas get through the application lifecycle and into a customer-facing environment quicker and more reliably? Are your customers experiencing fewer outages? Are you able to react to new ideas quicker and more easily? Are you spending less on “run the business activity” and more on “grow the business activity”?
DevOps views your technology organization as a unified system
DevOps breaks away from the traditional view that technology organizations are a collection of functional silos (Dev, QA, Ops, Security, etc.). DevOps thinking dictates that each part of your technology organization needs to work together, as a unified system, to provide specific capabilities to your business. Moving to this DevOps ideal takes close collaboration and communication amongst and between your existing teams as well a fresh perspective on your processes and tooling.
DevOps improvements take a multi-level approach
Since DevOps is about improving the capability of your technology organization as a whole, a multi-level approach is required. Isolated efforts or disjointed fixes can often lead to increased problems rather than DevOps relief. You must examine DevOps problems and potential solutions from three points of view: People, Process, and Tools.
Do you have the right people in the right place and have you empowered them with the skills, knowledge, and tools that they will need to be successful? Once you have organizational concerns worked out, do you have the right processes in place to enable your people to meet your improvement goals? And finally, do you have the right automation and tooling in place to formalize your processes and speed success?
How can my company get started with DevOps improvement?
The success of your DevOps improvement efforts will hinge on your ability to align your organization towards a common understanding of the source of the problems and the techniques you will use to overcome those problems. An effective first step towards this it to bring the key stakeholders from across your organization together for a DevOps Workshop. The workshop infuses your organization with knowledge of best practices and guiding principles from around the industry, helps form a shared understanding of where the current problems lie, and introduces concrete techniques to attack those problems.