DevOps Culture and Mindset Defining DevOps CAMS and CALMS acronyms that make up the core values of DevOps. Lean management process which has a strong connection to DevOps. The idea about Lean management is about delivering more value, eliminating waste and strong focus on respect for people. DevOps idea is to break down historic silos and improve collaboration between development and operations teams to streamline and improve work in some keyways. The idea behind DevOps is to break down all those barriers and get everyone collaborating from the get-go on the same team. It used to be that separate teams wrote the code, tested the code, deployed the code, and then maintain the code during a product's lifecycle. DevOps is about people; and creating a culture of focusing on delivering values for customers. CAMS and CALMS CAMS CALMS Culture Culture Automation Automation Measurement Lean Sharing Measurement Sharing DevOps is about improving culture, setting up automation where it makes sense, applying lean management principles, figuring out effective ways to measure our efforts, and sharing ideas to solve problems with one another. These are some of the core values at the heart of DevOps. DevSecOps – Incorporating security into DevOps. Should organizations create DevOps teams or should organizations have titles called DevOps? Ultimately, what’s really important is the culture of collaboration ad not the name of the team. It’s about culture and ensuring that you are automating the right things. 1. DevOps Principles: The Three Ways William Edwards Deming works on Systems Thinking. The three ways bring the CALMS process to life. The three ways model was developed by Gene Kim and Mike Orzen. 1. Systems thinking 2. Amplifying feedback loops 3. A culture of continuous experimentation and learning 1. Systems Thinking Emphasizes Performance of the entire system rather that improving a single silo. Collaboration across functional lines Focuses on IT-enabled value streams. Outcomes Stoppage in passing defects to downstream work. Does not allow local optimization. Always seeking to increase flow. Profound understanding of the system DevOps is about continuous learning and amplifying feedback loops. And figuring out how you can continue to learn as you are delivering value. 2. Amplifying Feedback Loops Feedback loop is a process that allows for reflection on its own output before determining the next steps that need to be completed. Outcomes of Amplifying Feedback Loops Understanding and responding to all customers, internal and external Shortening and amplifying all feedback loops Embedding knowledge where needed. This process can be done by the following ways: Building automated tests into the pipeline so developers can get feedback early and often. Embedding operations engineers into the development teams. 3. A culture of continuous experimentation and learning Create the culture. Encourage risk-taking and failing forward. Affirm that repetition in practice is a prereuuisite to mastery. Outcomes The outcomes are making sure that you’re Allocating time for improvement work Rewarding teams for taking risks Introduce faults into the system to increase resilience. 2. DevOps Principles: The Seven Principles and Seven Wastes of Lean LEAN Management The Seven Principles 1. Eliminate Waste Don’t code more features than needed. 2. 3. 4. 5. 6. 7. Build in Quality Create Knowledge Defer Commitment Deliver Fast Respect People Optimize the Whole Don’t just make optimizations locally. Enjoy systems thinking. Lean’s Seven Wastes into Software Development 1. 2. 3. 4. 5. 6. 7. Partially Done Work Extra Features Revisiting Decisions Handoffs Delays Task Switching / Multitasking Defects 3. DevOps Principles: Improvement Kata Kata is a very helpful DevOps Principle Improvement Kata It is a process for continuous improvement. Improvement Kata Steps 1. 2. 3. 4. Understand vision and direction for project. Analyse to understand current condition. Establish target condition. Plan > Do > Check > Act (PDCA) toward target Often people think they know what problems they need to solve, And they jump to conclusions about how to solve those problems. By leveraging the Improvement Kata, it reuuires leaders to set the direction and gives teams the opportunity to thoroughly understand what target they're trying to achieve. And really problem solve and experiment toward that in a methodical way. 4. DevOps Principles: A3 Problem Solving Framework A3 just means A3 paper size. A3 problem solving = Structured Steps Creates a culture of continuous improvement and learning. A PDCA has four steps whereas A3 Framework has 7 steps. 1. Set the background. Include statement of how problem directly impacts business outcomes. 2. Current Condition and Problem Statement Aligned with improvement kata language. Current reality = where things stand today. 3. Develop the Goal Target state you are trying to achieve. Explain how you will measure outcome. 4. Performance Analysis Also called Root Cause Analysis Identify root cause, there may be multiple factors. ** Plan Phase – Spend time on the plan phase. Great planning leads to successful outcomes. 5. Brainstorm How do you intend to reach the target condition? Come up with a hypothesis on how countermeasure can help reach goal 6. Implementation Plan Enables you to check results. Confirms impact on current condition. 7. Update Update “Standard Work” based on steps taken. 5. The Westrum Model for Improving Organizational Culture Culture DevOps is all about culture. If culture is not supportive, organizations will not be high performing. Generative organizations: Performance Oriented. 6. Leadership Philosophies 7. Changing Metrics: Shifting from Outputs to Outcomes Two major outcomes with which most businesses are concerned. Key metrics used to measure outcomes: Deployment pain Deployment freuuency Change failure rate Mean time to recovery (MTTR) eNPS Output = What we deliver Outcome = what we gain from output Output #1: Increasing revenue Output #2: Improving Efficiency 8. DevOps Works for Everyone: Three Case Studies