Making One-Day Turnarounds Possible
Founder and Principal at Ingineering.IT
When my clients ask me how to adopt continuous delivery, I tell them, “Don’t do continuous delivery; do more continuous delivery.” Achieving true continuous delivery requires tremendous discipline and maturity. It also requires a shift in mindset that has to happen over time. Getting there is a path, not a jump.
At its heart, continuous delivery is about small batch sizes. You should always ask yourself how you can make your batch sizes smaller. For example, if you’re building a software component with a front, middle, and back tier and it takes two days to build the whole thing, what happens if you build and release the back tier by itself? Because it’s invisible without the other tiers, there’s no harm in putting it into production alone. If you do, you’ve suddenly shrunk your batch size from two days to a few hours.
The key to following the continuous delivery path is to continually question your own assumptions about what’s possible. I recently helped an agile development team test a new, stand-alone service. They were used to releasing every two weeks. One day, after I helped a developer validate a simple bug fix for the service, he said, “This is ready for release next week.” I responded by asking, “Why not release it today? It doesn’t affect anything else. We’re not going to test it any more than we just did.”
At the following morning’s stand up, he announced that we’d fixed, tested, and released a bug fix, all in one day. Everyone’s eyes got big! No one realized that one-day turnaround was even possible. Suddenly, they started thinking and talking about how to do it more often.