Saturday, September 7, 2013

Importance of Story Time (GTSS) in Agile/Scrum

We all know that Scrum holds certain meetings very important for the process to function smoothly and efficiently. Primarily, the following meetings are essential for a Scrum team to be productive: -
  1. Release Planning Meeting – done before a release (spanning multiple sprints) is put together
  2. Sprint Planning Meeting – done before a sprint is put together
  3. Daily Standup – done every day during the sprint to ensure the team is progressing and impediments are discovered and removed ASAP
  4. Sprint Demo – done at the end of a sprint to showcase PBI (Product Backlog Increment) developed during the sprint
  5. Sprint Retrospective – done at the end of a sprint so Scrum Team can talk about how the sprint went and inculcate adjustments to the Scrum process
These meetings are essential for the Scrum Team to operate smoothly, and they are, thus, recognized as fundamental to the process. Almost all Scrum teams are pretty good at following the above said meetings (with minor adjustments such as combining the Sprint Demo and Sprint Retrospective meetings).

In this blog, I want to talk about another Scrum meeting that is often ignored by a lot of Scrum Teams. This meeting is called Story Time; it is also called GTSS (Get The Story Straight).

The primary goal of this meeting is to allow the Scrum team to look ahead at stories in the product backlog slated for future work. In other words, this meeting does not entail discussion about stories on the current sprint. Instead, the focus is on looking at future stories. The GTSS meeting must be time-boxed (usually 1 hour every week) so that Scrum team can continue to have a primary focus on the current sprint. The mandatory participants in the GTSS are all active Scrum team participants; this includes Development Team (Software, UI/UX and Quality Engineering), Product Manager and Scrummaster.

The advantages of conducting a weekly GTSS meeting are manifold; I discuss the primary ones below.

1. Constant Product Backlog Grooming
GTSS forces Product Management to always stay on top of the Product Backlog. If I am a Product Manager, and I know I have to present future stories every week to the team, I will have to constantly groom the Product Backlog; this grooming would entail both arranging the stories in the Product Backlog in the correct business priority as well as providing at least high level elaboration in the stories targeted for immediate discussion.

2. Higher Quality User Stories
GTSS contributes to stories with higher quality. Similar to the argument presented above, user story quality tends to be higher if the team is constantly looking at stories much before a Release Planning or Sprint Planning meeting. Discussing stories early helps the team look at the story from various angles, thus contributing to more complete, robust and well thought out stories.

3. Efficient Release Planning and Sprint Planning Meetings
Release Planning and/or Sprint Planning meetings become shorter and efficient if GTSS meetings are happening. If the team looks at user stories for the first time ever in a Release Planning meeting, a lot of time gets spent in simply trying to understand the user story, and meetings drag on and become marathon sessions. In worst cases, teams can spend up to 2 weeks just doing Release Planning. On the other hand, if the team is already familiar with a user story, it is much easier and faster to discuss and estimate the same.

A great analogy to this is the 'sticker shock' paradigm. If you are a merchant, or eCommerce company, you do not want to show a price to your buyer(s) that will change dramatically at checkout time (after including fees, taxes and any other hidden charges). If you do so, you give the buyer a sticker shock, and chances are that you will lose the business.


Don't give your Scrum Team 'story shock'

Do not give your Scrum Team 'story shock'; show them stories early and do not surprise them when it matters!

5. Smaller wait periods between sprints and releases
Since GTSS meetings allow the Scrum team to constantly stay on top of the Product Backlog, they foster much more efficient Release Planning and Sprint Planning meetings. Teams that used to spend weeks on Release Planning, and were used to take 2-3 days breaks between Sprints soon realize that those wait periods are dramatically reduced if GTSS meetings are done every week. As an example, I have run multiple Scrum teams that efficiently execute back to back sprints without taking days off in-between sprints for marathon planning sessions.

6. Enhanced Team Collaboration and Communication
GTSS encourages numerous useful, informal conversations – Agile/Scrum is all about collaboration and communication. Apart from the standard Scrum meetings and ceremonies, bulk of the communication that a Scrum team does is informal. GTSS meetings encourage more informal communication and brainstorming. When the team looks ahead at future stories, lot of interesting hallway/kitchen conversations result; following are some real examples from my experience working with various teams: –
‘That new feature seems cool; we will enjoy building it.’
‘Ah, that story is architecturally significant, and may need us to collaborate more closely with the platform team.’
‘I was looking at our competitor’s site, and I am really happy to see we are taking feature X on in the near future.’
‘Oh that story will need some serious regression, we better start looking at some QA automation soon enough.’
‘This story can really revolutionize our UI strategy; can we ensure we investigate a new Javascript library during Sprint 0 for next release?’
You get the idea. Looking ahead at features generates excitement in the team, and makes people think ahead. It makes teams proactive versus reactive.

7. More Accurate User Story Estimates
As a direct consequence of the aforementioned point, estimates on stories tend to be much more accurate. Since the team gets the time to chew upon stories for much longer and gets to digest them, the chances of surprises occurring later reduce, which results in better, more accurate estimates.

8. More Engaged Team
If the team sees stories early, team members get to provide feedback on stories that may not be fully set in stone yet. This provides two highly desirable benefits - first, the overall quality of user stories continues to go up as more minds contribute to story elaboration, and second, higher team engagement. Team ownership goes up when the team feels and sees that their input makes a difference and is important.

Summary

Given these benefits, it would be hard for any Scrum team to overlook the importance of GTSS meetings and not reap the rewards of this useful process.

Before I finish, I will recap the GTSS meeting for quick reference using the famous Five Ws and One H style.
  • What – Story Time, or GTSS (Get The Story Straight) meeting
  • When – 1 hour per week
  • Who – Scrum team
  • Where – Anywhere suitable 
  • Why – Constant Product Backlog Grooming
  • How – Product Manager presents future stories and team discusses the same
In my mind, 1 hour week spent on GTSS affords Scrum Teams huge benefits that soon outweigh the time investment. I hope you find this useful reading and start benefiting from this very effective Scrum meeting in your projects!