The Value of Automating Jira Sprint Creation

Automating the creation of Jira sprints offers significant value to delivery leads, such as Release Train Engineers, Agile Delivery Coaches, and Scrum Masters by streamlining essential administrative tasks we undertake to enhance delivery efficiency. Automation reduces the time spent on repetitive processes, enabling us as leaders to focus more on both strategic planning and supporting our teams. It creates consistency and accuracy in sprint setup, reducing the risk of human error. Automation also increases predictability in planning sprints, allowing teams to gain a clearer understanding of timelines and expectations. By creating multiple sprints well in advance, teams can engage in better long-term planning, ensuring that goals and milestones are clearly defined well ahead of time. It creates a planning runway, allowing us to better position what we’ll do and when. This foresight enables teams to more effectively allocate resources, anticipate potential challenges, and align our efforts with strategic objectives. Consistent and predictable sprint planning is a foundational element in a productive work environment and ultimately contributes to the success of our projects and teams. Magnify these benefits across an entire portfolio and it’s a “quick” win.

But it isn’t. Creating sprints in Jira requires a lot of mouse clicks, navigation and text entry. All too often I see teams with only a couple of future sprints created. That may work for highly reactive teams with variable workloads and an unforecast delivery plan but even here, creating containers for future sprints helps create better longer-term plans.

How many future sprints should you have? It depends. For teams and organisations employing quarter or program increments and with two-week sprints, it makes sense to have six to seven sprints to act as nested containers. For teams undertaking “continuous” planning my preference is for a sufficient number to meet the planning horizon, often two to four sprints. Can you have too many future sprints? Possibly.

Per the Principles behind the Agile Manifesto, principle #3:

Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.

How can you effectively deliver increments without sprint containers, tricky huh?

Right, I’m sold.

OK, let’s get into it! Atlassian exposes APIs that you can use to manipulate Jira including creating sprints. While you don’t need a degree in software engineering to use these APIs, you can use them together with a scripting language like Windows PowerShell (PS) and the ubiquitous tool “curl” to automate the task. While PS comes with a curl alias that executes the invoke-webrequest cmdlet, that alias operates very differently from the industry standard curl utility. Curl.exe has been included with Windows 10 since build 17063 and is installed by default on Windows 11. For the technical crew in the room, there are some variations in functionality between the Microsoft version and the free open-source version but for our purposes, these don’t apply. If you have a recent version of W10 or 11 you’ll be good.

What does this script do?

It allows you to

  • create a single sprint
  • create multiple sprints
  • create single or multiple sprints in multiple Jira projects
  • create these sprints with a standardised naming format
  • create these sprints with a standardised date format
  • create these sprints with standardised start and end times
  • return the SprintID for all sprints created, useful in JQL queries

all at once!

Where can I get this script and how much does it cost?

It’s freely available from my  GitHub repository, licensed under the GNU General Public License v3.0.

What’s in this script and what do I do with it?

There are two PS files:

  • bulk-jira-sprint-creation.ps1 – edit this script, full step-by-step instructions are included in the file
  • create-encoded-token.ps1 – run this script to encode your Atlassian API security token needed to authorise sprint creation