Sprint Seasons

On a cold, dark, windy, rainy, miserable evening in March, I thought of a slightly more interesting way to make our sprints more dynamic. Simultaneously, aiming to be a bit more interesting than dragging some tickets across a Jira board and having no recollection of who did what well two, four or six months prior.

The three main targets were:

  1. Celebrate our wins more
  2. Recognise outstanding contribution over a period of x weeks
  3. Continuously improve, track velocity and measure output in sprints

I'm a huge football and general sports fan, so naturally I live and breathe statistics. If you've not noticed already, the term Sprint Seasons is influenced by sports seasons. Albeit, seasons in sports can last for nearly a year, Sprint Seasons can be based however long you'd like them to be.

This works well with Agile Scrum, but can be tailored to Kanban, FDD, or any other methodology you are implementing.

For the purpose of this article, a Sprint Season is 5 sprints × 2 weeks = 10 weeks, using Scrum.


Sprint definitions

To track whether our sprints were a win, draw or loss, like you see in sports, we need some definitions. Here are some examples:

Sprint win:

  • Production release(s) and sprint goals met
  • Bug fixes and majority of tickets complete
  • Dealt with customer queries sufficiently

Sprint draw:

  • Main production release, some sprint goals met but most tickets incomplete
  • OR
  • Most tickets complete but no production release

Sprint loss:

  • No production release
  • Most tickets incomplete

You can tailor these to whatever criteria fits your project best, remembering the goal is to make them as realistic as possible.

Points

Your team can score points in a number of ways:

  • 3 points for a sprint win
  • 1 point for a sprint draw
  • 0 points for a sprint loss

You may deduct points for any serious issues, for example:

  • Introducing significant bugs
  • Deleting a production database (God forbid)

In a five sprints over ten weeks there are a maximum of 15 regular points that can be earned.

Additional points

Your team may also score additional bonus points at the end of a Sprint Season.

Set realistic and achieveable targets that could be met at any time throughout the 10 week period. For each goal you meet, score an additional point.

The previous maximum of 15 points, is now a possible 18.

Scoring contributions

Define two outputs for team members:

  • Goalscorers: those that are the primary contributors to the ticket e.g. completed features via development, designs
    • To score a goal ("Goals For" or GF), tickets must move forward from "In progress" to a ready for testing state e.g. "QA"
    • Goals may be revoked ("Goals Against" or GA) if the ticket moves backwards from your testing stage
  • Assisters: those that have helped move the ticket along e.g. reviewing, testing
    • Anybody that has worked on the ticket should earn an assist

You can track all of this in a way that suits you. From my experience, it encourages filling out excellent acceptance criteria on Jira tickets, adding to the comments whenever that person has finished their contribution and provides a detailed track history of tickets that may not have be present prior. This is just one small incentive to being more detailed.

Please also keep in mind, this is not a measure for who's best. Instead, it is an easy way to encourage being more efficient, and satisfies those with a slight spicy edge that are normally more competitive.


Example seasons

Here are some example seasons that can give you an indication of what to expect. These examples are based on a team of six individuals working on a project full-time.

PWDLGFGABPTSO
541010010215Excellent
5221801508Average
5032751514Poor

Definitions: played, won, drawn, lost, goals for, goals against, bonus points, points, outcome

Make it interesting

Optionally, you can add promotion and relegation systems to your seasons. Loosely based on the tiers in the Football League, you may set the boundaries as so:

LeaguePromotion PtsRelegation Pts
Premier League15+ champions8- relegation
Championship12+ promotion7- relegation
League One11+ promotion6- relegation
League Two10+ promotion5- relegation

Start your team in League Two to see if you can make it to the Premier League (and remain there - it gets slightly harder every season).

In the example seasons above, Season 1 is enough points to get promotion in any division, Season 2 isn't and would additionally see you relegated from the Premier League, Season 3... "I cannot speak".


End of season awards

Bring your team closer together every ten weeks by distributing "awards" for:

  • Top goalscorer
  • Top assister
  • Performer of the season (voted for by every member)

Example season contributions:

NameRoleGFGAA
RobertDev2606
EmilyDev1207
BenDev1954
SarahQA3030
JessDesign2100
JohnDelivery102
Totals82550
  • Top goalscorer (Robert)
  • Top assister (Sarah)
  • Performer of the season, by vote (Jess)

Celebrate your wins as a team, if remote staff can join in person that's even better. Go out, have some pizza and a few beers together. It helps morale so much when you have a close-knit team, and genuine people who care about one another.

To reference the targets at the beginning of this article - this is a way to enjoy your wins, recognise everybody's contributions and helps measure output in your sprints to know what you're doing well and not so well collectively. It's easy to forget or not do any of this if your going from sprint to sprint with no recognition of what's come before.

Use Sprint Seasons to boost your camaraderie and make each day a little more interesting.


👉 You can follow me on Github here: @joshembling

⭐ If you've enjoyed this article, please share it: https://joshembling.co.uk/articles/sprint-seasons