What's the first word it comes to your mind when you think about Agile software development? Mine is Sprint, and... I dread Sprints.
Sprints in software development almost always last a couple of weeks each. They start with some form of commitment and then off you go working to deliver on your promises.
Sprints in sports are short runs that last a few seconds, it requires explosive energy and one cannot do multiple sprints without a break in between. Think how many 9.58 seconds races can Usain Bolt do in a single day?
My past experiences with Sprints have always been something along the lines:
- At the beginning of the Sprint: What an exciting day, a whole new sprint! Planning session is over. I believe our team did their best to guesstimate the size of the stories. Our commitment is reasonable and ten business days from now we will all be celebrating our deliverables and achievements.
- Mid-Sprint: Ouch! We were not expecting this to have so many sharp edges, we are off track but I believe we can recover from it very soon.
- At the tail end of Sprint: Go, go, go! Why did we commit to this much? Why we didn't estimate things properly? I can compensate with a bit of overtime. Wow, what a low energy retrospective right after the day most of us did overtime trying our best to deliver our commitments.
Your experience might be different. I've seen this story repeat itself in several companies and in distinct teams.
There are multiple challenges with Scrum "by the book", one is to be expected to deliver the same quality, quantity of work and improve over time, there is little consideration to vacation days, onboarding people up, offboarding people, and changes in general.
It's also worth mentioning that most bug fixes and small things can be done during a two week Sprint but if one wants to deliver a small to medium size project, in my experience, six weeks is a more realistic estimate to complete a cycle of development from start to finish.
What about Marathon?
Some people will come and say forget about sprinting for a moment, it's not a Sprint, it's a Marathon!
Have you seen the average athlete after a Marathon? They are so exhausted at the end of it that friends must carry them over. They can't go upstairs for a few days because their legs are full of acid lactic. They deplete every drop of energy in their bodies. Finally, the original story of Marathon ends with a person dying after running a very long distance.
Let's borrow terms
If Sprints and Marathons are unsustainable at the centre of their meaning, what other terms could we use that would mean both agile and sustainable?
Even though multiple things can be done to improve software development processes and what your organization needs may be different from other companies, I want to propose a common denominator. A revisit on Agile terms that unites all stakeholders.
One example sentence with all terms:
A video streaming show happens in seasons which is a collection of episodes.
Forget about the good old pal Sprint or in other words: run for your lives because the sabre-tooth tiger will kill the slowest of you. And welcome the concept of Episode, an Episode may last regular air time or may also be a special extended edition. An Episode may have cameos or cross-overs, think cross team collaboration. An Episode has a tempo, and often or not an episode ends with a cliffhanger for the next one.
A collection of Episodes, it may align to your company recurring planning, e.g. Quarterly Planning, or may be of the length you want, it's common to have similar length to all previous Seasons but not required. A Season may include a welcome to a new character or a goodbye to a loved one. A Season will have several ups and downs and a break will likely be most needed after a good or a bad one.
The goal of most successful (also profitable) shows is to run as long as possible, the cast changes, the viewers mature, the viewers might change but as long as the Show is popular, there will always be space for it. The Show must go on. A less ambiguous term that I also love it's Journey. I propose using them interchangeably. Every time you are watching the original cast talk about the end of their Show, it's not uncommon to hear: "it was a beautiful Journey".
This is my proposal: Episode, Season, Show/Journey. Start using them and share your thoughts.