Speed & quality drives everything in today’s digital world. Organizations that successfully accelerate whilst improving quality apply techniques like Agile, DevOps and/or Lean. For organisations that are the start of their digital journey it can be tricky to decide what best to apply— “Should I deploy Agile, DevOps and Lean or do I only focus on Agile and Lean and apply DevOps at a later stage?”

The key to knowing where to start is first to understand what Agile, DevOps and Lean actually is, where each overlaps and where the differences are. The following short blog is trying to provide some detail on what Agile, DevOps and Lean is–for more detail please follow the references at the end of the blog.

Agile is a software development approach, coined first in 2001[1] that mainly focuses on the actual development cycle covering the aspects from the point of gathering requirements to executing code testing. It does this by splitting larger set of requirements into small(er) more manageable junks that are then being prioritized and developed by highly collaborative teams in very short and iterative cycles. As per [3] Agile is all about creating a project down into little/smaller components called user stories, prioritizing them and then continuously delivering these in short cycles called iterations.

This is in contrast to the so-called V-Mode [2] development approach, that runs through the different development phases (plan, define, design, develop, test and implement) in a waterfall approach. Both typically focus on functional requirements throughout the beginning and middle phases.

DevOps [5], a term that was coined in 2007 [6], focuses much more on the middle and end phases and is mainly focused on increasing deployment cycles as well as reducing outages that are change related. DevOps achieves that by bringing “Development” and “Operations” together. Focusing on people, process and tools related aspects DevOps is a way of collaborating and industrializing using highly automated approaches to deploy solutions that evolve as fast as your business needs it. The team-centric DevOps ethos tears down traditional silos to tightly integrate business, development and operations to drive agility and service delivery excellence across the entire lifecycle. For more details on DevOps see [5] as well as [7]

Lean [4] on the other hand is an approach meant to maximise the value produced for IT by executing continuous improvement as well as by focusing on elimination of waste. Originally created and developed in the manufacturing sector, Lean (IT) top priority is on cutting out waste.

Even though Lean and Agile focus on different aspects, Agile project method is based on an incremental and iterative process to make a product or services, there are a number of areas that are shared between Agile and Lean:

Agile, DevOps and V-Mode do focus on two main areas—Agile and V-Mode on Business/Dev phase whereas DevOps is focusing on Dev/Ops phase of a project. Next to the difference in focus each approach drives a different set of objectives.

Summary

Which approach to apply and in what order depends on many different aspects. The key to knowing where to start is first to understand what Agile, DevOps and Lean actually is, where each overlaps and where the differences are.

Thanks for Reading. 

About the Author: Gunnar Menzel has been an IT professional for over 25 years and is VP and Chief Architect Officer for Capgemini’s Cloud Infrastructure Business. His main focus is business – enabling technology transformation & innovation.

References: [1] http://agilemanifesto.org/ [2] https://en.wikipedia.org/wiki/V-Model_(software_development) [3] http://www.agilenutshell.com/ [4] https://en.wikipedia.org/wiki/Lean_IT [5] https://www.linkedin.com/pulse/devops-simple-answer-question-gunnar-menzel?trk=prof-post [6] Patrick Debois is widely being credited for establishing the Term DevOps [7] DevOps – The Future of Application Lifecycle Automation https://www.capgemini.com/resources/devops-the-future-of-application-lifecycle-automation