We use "Continuous Agile" to describe the combination of Kanban Agile task management with continuous delivery code management.
"Agile" traditionally describes task and team management. We get two big advantages from bringing code management into the process. First, we can actually finish a Kanban task by merging, testing, and deploying code. Second, we can bring in a lot of innovations from the rapidly advancing art of code contribution and testing.
There are many successful routes. We will try to break away from the bad habits of people who find one thing that worked for them, and then recommend it for everyone else. This guide describes a set of building blocks to choose from.
Task management: The spectrum of task management tactics begins with roadmapping (making a list) and continues to planning releases with batches of tasks, and then to continuous or Kanban. Users often adopt these in sequence.
Code management: Code management with a repository is the core technology of continuous delivery. We find that practitioners can succeed with a "centralized" process that makes all contributions and tests on one version, or a "distributed' process where contributions are tested on separate versions. This is supported by the rapidly advancing art of contributing, reviewing, and merging code.
Testing: You want to very quickly test a change to prepare it for release, and you want to do this in the most efficient way possible, and you want your culture to support the testing. Testing and test automation is the most important investment that you will make in the move to continuous agile.
Product Management: You will accelerate planning to keep up with your developers, unblock them so they can work and release without waiting, and follow each individual change as it flows to release.
Team leaders should understand all of the options, not just the familiar ones. They should change tactics when they run into obstacles, delays, and new opportunities.
We want to build software faster and with less stress. Continuous Agile uses some "lean" principles to achieve this goal:
There is no single correct process or set of tactics. We present a toolbox of task and code management options. Teams select a process and tactics to fit their unique situation.