How to start fighting Zombie Scrum with automation

Christiaan Verwijs
Feb 24, 2017 · 7 min read

Teams that suffer from Zombie Scrum have huge trouble shipping fast. In part, this is often because a (total) lack of automation. Deployments are done manually, testing is done manually and repetitive work during development is done manually. But automating manual work can be a daunting task. Most teams agree that automation is important. But not knowing where to start with this ‘huge and important thing’, they keep pushing it into the future. In this post we offer a practical approach to get started with automation tomorrow.

Automation is one of the cornerstones of Agile software development. The idea is that manual work is tedious, error-prone and therefore something you’re likely to do as infrequently as possible. This includes tasks such as testing your application and releasing a new version of your platform. But by doing this infrequently you lose a wonderful opportunity to rapidly gather important feedback on questions like “Are my components still integrating?” or “Can our codebase still be deployed to our server-environment, or has configuration changed?”. In short, you want to automate manual work to learn faster about what works and what doesn’t.

Most teams agree with this wholeheartedly. They can’t wait to start. But the level of automation in their development process remains minimal nonetheless. The reason why is usually a variation of:

“Yes, we know that automation is important. But we’re too busy now”.

And I can’t blame them. Automation can feel like a daunting task. Especially for monolithic legacy applications. In the mind of a team, it tends to become this huge ball of tangled wires. Not knowing where to start, and not having the luxury of time, they keep pushing it into the future (“We’ll hopefully have some time after this big project”).

What can you automate?

  • Copying a new version of your app through an FTP-client;
  • Minifying CSS and JS-files into compressed bundles;
  • Checking if your application is still running after a deployment;
  • Calculating metrics to ascertain the quality of your codebase;
  • Running scripts on your database (on any environment) to migrate it to the most recent version;
  • Changing parameters in the configuration of your application per environment (like a connection string or SMTP-settings);
  • Setting up a new virtual machine in one of your environments;
  • Clicking through some parts of the application after it has been deployed to make sure it still works;
  • F5-ing the web application on your production environment to make sure that it’s still running;
  • Running your web application in a number of browsers to check for compatibility;
  • Creating a backup of the current application in production before deploying a new one;
  • Running a build on your most recent codebase to see if it still compiles;
  • F5-ing your local browser to check the impact of your recent change in code;

These are just some of things that I’ve done manually at some point, and that has been automated at some later point. Pure developer happiness!

Start untangling (with a workshop)

1. Preparation

2. Purpose

3. Energizer

4. Inventarize manual work

5. Estimate cost of manual work (optional)

6. Plot manual work on a pain/effort matrix

7. Identify steps to automate tasks

Depending on the number of tasks in the high pain/low effort quadrant, you can do this with the entire group or with smaller break-out groups that focus on a selection of items. Start with the low-hanging fruit (high pain/low effort), and move to low effort/low pain from there. Try to stay away from the ‘high effort’ tasks, unless the team really wants to also tackle some ‘bigger steps’ over the previous smaller ones. Limit this exercise to 60 minutes to keep it focused and tidy.

8. Make improvements transparent

Concluding thoughts

Diagnose Your Scrum Team

Sign up here to stay informed and provide feedback on our writing.

The Liberators

The Liberators: Unleashing Organisational Superpowers

Christiaan Verwijs

Written by

I aim to liberate teams & organizations from de-humanizing and ineffective ways of organizing work. Professional Scrum Trainer & Steward @ Scrum.org

The Liberators

The Liberators: Unleashing Organisational Superpowers

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade