Teams are more effective when they leverage automation to become more responsive. For example, by automating recurring tasks that are necessary for a release.
Several studies have investigated how (release) automation support organizations in becoming more Agile. Kuusinen et. al. (2018) surveyed decision-makers in a large organization and found that automation reduces manual tasks, but requires a cultural shift to encourage investment in proper developer practices and technologies to support it. DevOps in particular evolved to recognize this shift (Gokarna & Singh, 2018). The benefits of DevOps practices to accelerate release frequency and improve quality are extensively reported by Humble & Kim (2018).
Release automation is sometimes considered as feasible only in small and unregulated environments. However, many scientific case studies are available of successful automation in highly regulated environments (e.g. Morales, Yasar & Volkman, 2018, Yasar, 2017, Toivakka, 2021).
So what are strategies to start improving?
👉 First, organizations vary widely in how much automation they already provide. So a good strategy is to first map which tasks are currently already automated and which are not. The remaining, unautomated, tasks can then be ordered by effort and frequency. Each iteration can then be spent to automate one or more of these tasks.
👉 Second, automation takes many forms. Sometimes it requires custom scripts. But in other cases, tasks can be automated by licensing professional tools. For example, checking for spelling and grammar can be automated, and so can certain types of documentation that need to be generated. Automating such tasks frees a lot of time for productive work.
👉 Third, we’ve found it helpful to encourage productive laziness among developers. This is a rule that says: “do it once, keep it. do it twice, make a note of it. do it thrice, automate it”. Developers can then decide which recurring tasks should be automated and can take the time they need to do it.
Actions to start small and simple are:
1️⃣ During the next (Sprint) Retrospective, ask: ‘What is something we can automate that would make our lives as a team much easier?’. Identify one improvement and determine the next steps to make this happen.
2️⃣ Visit a team that has automated something you haven’t yet, and take 1 idea from them that you will implement next Sprint as well.
3️⃣ Involve at least 2 people from your supporting organization to identify and remove 1 bottleneck to release automation in your team by the end of the next Sprint.
Closing
What is your experience with improving release automation❓ What recommendations do you have to help a team start improving❓Release automation is one of the 20+ factors we measure to determine Agile & Scrum team effectiveness. Based on the results, teams receive evidence-based feedback on how to start improving.
Why don’t you give the Agile/Scrum Team Survey a try? We offer a free version focused on individual teams and a paid version that shows aggregated results of multiple teams.
Check: http://bit.ly/2Pth7gu