We All Care About The Loop!
To start with I care about context. I'll start by declaring that we all care about software delivery loops.
But what is a software delivery loop you might ask?
I'm sure you will be familiar with what is being communicated with this picture.
|Figure 1 - Software Delivery Loop|
Sounds a lot like an SDLC?
I want to focus on the journey around this loop to deliver software. And I talk about the loop itself as the infrastructure that supports this journey - the tools and SDLCs. And most importantly I want to be able to talk about what makes for a good software delivery loop.
A good software delivery loop needs to be judged based on the needs of the consumers of the software delivered by the loop, as well as the needs of the producers of that software.
The consumers care primarily about the outputs, speed and costs of the loop:
- Does the loop deliver solutions that bring business value?
- Are we able to get around the loop quickly to deliver the next set of business value?
- Does the loop deliver this value cost effectively?
- Does the loop allow me to be productive?
- Does the loop operate without unnecessary complexity?
Simple software delivery loops that allow teams to be productive make for happy delivery teams. And happy software delivery teams are better at producing good software that meets the needs of the consumers.
- What do good software delivery loops look like? And equally what do bad software delivery loops look like?
- How can we make software delivery teams happier by ensuring they live in a good delivery loop?
- How do practices like Agile and DevOps help improve our software delivery loops? And what other practices add value?