In a recent post, we took a look at why DevOps and Agile are so important to the Agile EA. Based on feedback from some of my colleagues, we didn’t go very far in describing what DevOps _IS_ ! So let’s fix that, shall we ?

So lets start with what DevOps ISN’T – its not a canvas or a framework. Its actually a workflow ! Workflows are like business processes. As we see in Agile Software Development, it is really a methodology for delivering business capabilities, in an iterative and predictable manner. And like Agile, DevOps is meant to deliver CI/CD to bring business value with each iteration.

DevOps-CycleThis simple graphic demonstrates the iterative process that is DevOps – it revolves around the customer experience, proving continuous integration & continuous deployment (CI/CD), based on the feedback loop. Feedback is key – as the customer experience evolves, so does the product or service being delivered. Inherently, as the product or service scales out, it is a given that the customer experience also gets better.

Plan: The heart of Agile is NOT having a project plan ! It’s about listing the business capabilities in order of importance to the Enterprise, and estimating the effort for delivery. The stakeholder determines the business viability.

Code: You know – the engineering behind creating and enhancing the customer experience ? 🙄 It’s the “secret sauce”.

Build: Thats where all the moving parts come together. If you remember my piece on Kanban Boards, you will recall how larger tasks get broken down into smaller tasks. Here, its key that the Agile EA understands how to knit all of the back-end systems together to drive the customer experience.

Test: Does it work ? What if the customers try to do weird stuff – does it STILL work ? Many would argue that nothing beats real-world testing, but that comes at the cost of a lesser customer experience. Its a balancing act.

Release: Put a fork in it – this set of capabilities is done ! Think about the Minimum Viable Product (or MVP). Every iteration has a set of deliverables required to meet the capabilities being delivered. Nothing more, nothing less…

Deploy: This is where Engineering meets Infrastructure. Also known as “it’s time to get customer-facing !”. Sometimes it’s a net-new capability, or adding onto existing capabilities. The Agile EA helps define this roadmap. This too is a major part of the discipline – DevOps includes the ability to define and build the technology stack, from hardware to interface. And just as importantly, all the way through the Development process.

Operate: Here is where we see how our customers consume our product. These are the processes behind insuring a smooth and enjoyable customer experience.

Monitor: Looking for performance issues or other defects, and sometimes fixing them on the fly. Once the metrics are collected and analyzed, opportunities for improvement are worked into the next development cycle.

By following this repeatable workflow, the Enterprise can count on its Engineering Team to deliver new customer-driven functionality in a rapid fashion. The feedback loop insures quality, while the repeated process creates predictability. Notice how the graphic is the shape of the symbol for infinite ?