When Should I Automate?
Incremental Automation, as a Process
If you automate too early, you can miss variations. If you automate too late, you accumulate automation debt. It’s easy to fall into these traps because automation is done in batches. Instead, we need Continuous Automation. Automation as a Process (AaaP) a rigorous, lightweight method to get you there at right pace for your team.
So for this month’s whiskey moment (OK, 12 moments), Arlo’s going to share his mechanism for AaaP and why.
Thanks for reading Arlo | Refactoring with Depth! Subscribe for free to receive new posts and support my work.
Common advice automation timing is “the second time.” It makes sense in theory, but in practice it has three major flaws.
You really don’t know if it’s needed again, even if you think you do.
Manual processes happen during “important minutes”. These important minutes are when a minute delay is truly a minute rather than running in parallel to other work.
Since you don’t know the pattern yet, let alone variations, you will have do discovery every time you execute. If you have already automated, you will have to change the program every time.
However, that doesn’t help you know the best timing to automate. The reality is that it will always be guesswork when automation happens in big batches. By using Continous Automation, you can automate a little bit each time it happens without big commitments.
What Makes this Work
Automation as a Process (AaaP) is Arlo Belshee’s (@arlobelshee) version of Continuous Automation. The key element of his process is step three’s Automated Human. In this step, everything is done manually, but there is an executable script that tells the people what action to take, what decision to make, or what to verify.
Start with Checklist
To get the first step, start with a checklist. Create it before the first time you do the process, check it in, and update it before and during every manual execution. This is the second step of AaaP, the Guided Human, and has two parts.
Part 1 - Reproducible
Get a complete and detailed checklist, but it has no decision points.
Part 2 - Handles Variations
Adding decisions and alternate branches to handle variations.
Transition to a Script
Once your checklist deals well with variations, you can now transition to step three’s Automated Human. Turn the checklist file into a script that simply prints each line from the checklist and asks the human to press enter when done with that step.
Once you are doing Automated Human, you can start incrementally automating steps. Each time you run the process, automate one decision, action, or verification. Pick one that is easy and has good return. If you there isn’t an obvious step to automate, then don’t automate anything for that iteration.
The Big Wins
Firstly, automation is no longer binary. At all times, different processes will be in different degrees of automation and you don’t need an automation strategy or group consensus. Secondly, every manual execution includes automating a small part of that process. Your investments automatically accumulate where the value is greatest.
Ready to make this a reality for your team? Join our next workshop to not just learn a model, but practice the techniques for Continous Automation!
Thanks for reading Arlo | Refactoring with Depth! Subscribe for free to receive new posts and support our work.