- In Agile, there are defined methodologies like Scrum and Extreme programming that provide a playbook for implementing Agile in an organization. In DevOps, there aren't as many that are well established, but some common methodologies have emerged. In this section, we're covering the five most prevalent DevOps methodologies. - One of the first methodologies was coined by Alexandre and it's called people over process over tools. In short, it recommends identifying who's responsible for a job function first, then defining the process that needs to happen around them, and then selecting and implementing the tool to perform that process. It seems somewhat obvious, but engineers and sometimes overzealous tech managers under the sales person are usually awfully tempted to do the reverse and buy a tool first and go back up the chain from there. - The second methodology is continuous delivery. It's such a common methodology that some people even wrongly equate it with DevOps. In short, it's the practice of coding, testing and releasing software frequently and really small batches so that you can improve the overall quality and velocity. - It's been shown in studies, that in CD environments, the team spends 22% less time on unplanned work and rework. Changes have a three times lower failure rate and the team recovers 24 times faster from failures. - And it works for all kinds of workloads, even legacy environments. Gary Gruver even used it to revolutionize the LaserJet firmware department at HP. - Third up is lean management. It consists of using small batches of work, work in progress limits, feedback loops and visualization. The same studies showed that lean management practices led to both better organizational outputs, including system throughput and stability. And less burnout and greater employee satisfaction at the personal level. - The fourth methodology is Changed Control. In 2004, the book Visible Ops came out. Its research demonstrated that, there is a direct correlation between operational success and control over changes in your environment. - But there's a lot of old school heavy change control processes out there that do more harm than good. - Yeah, there really is and that's what was really great about Visible Ops because it describes a light and practical approach to change control. It focused on an emphasis of eliminating fragile artifacts, creating a repeatable build process, managing dependencies and create an environment of continuous improvement. - And last but not least, our fifth and final methodology, infrastructure as code. One of the major realizations of modern operations is that systems can and should be treated like code. System specifications should be checked into source control, go through a code review, whether a build an automated test, and then we can automatically create real systems from the spec and manage them programmatically. With this kind of programmatic system, we can compile and run and kill and run systems again, instead of creating handcrafted permanent fixtures that we maintain manually over time. - Yeah, we ended up treating servers like cattle, not pets. - So five key methodologies can help you start in on your tangible implementation of DevOps. People over process over tools, continuous delivery, lean management, visible ops-style, change control, and infrastructure as code.
In this course, well-known DevOps practitioners Ernest Mueller and James Wickett provide an overview of the DevOps movement, focusing on the core value of CAMS (culture, automation, measurement, and sharing). They cover the various methodologies and tools an organization can adopt to transition into DevOps, looking at both agile and lean project management principles and how old-school principles like ITIL, ITSM, and SDLC fit within DevOps.
The course concludes with a discussion of the three main tenants of DevOps—infrastructure automation, continuous delivery, and reliability engineering—as well as some additional resources and a brief look into what the future holds as organizations transition from the cloud to serverless architectures.
- What is DevOps?
- Understanding DevOps core values and principles
- Choosing DevOps tools
- Creating a positive DevOps culture
- Understanding agile and lean
- Building a continuous delivery pipeline
- Building reliable systems
- Looking into the future of DevOps