agile

Agile Estimation For Distributed Teams

The scrum teams I work with use Planning Poker to estimate the size of user stories. This has proved to be an extremely useful technique, and we rely on it to plan work for upcoming sprints. In the past, we used special card decks for these games, which worked well when everyone was based in the same room. However, with team members now distributed across two continents, this quickly became less effective.

To address this, we initially tried running the sessions over a conference call, using group chat channels to record votes on the items being discussed. However, the quality of estimates noticeably deteriorated as a result, with less confident developers waiting to see what others thought before voting, and outliers not always being discussed. With distributed IT teams becoming more prevalent, a number of online Planning Poker tools have been developed. Since none of the available offerings quite met our requirements, I set about building our own. The key features of this version are:

  • Unobtrusive and extremely lightweight, both in terms of supported features and required hardware.
  • Can be hosted locally (team structures and the content of user stories may be sensitive information).
  • No need to know which user stories are going to be estimated at the start of the session.
  • Easy to extend and add new features as required.

The backend was implemented as a RESTful API (using the Spring Boot framework), with Web Sockets being used to communicate with the AngularJS UI. Source code and binaries are available on GitHub. Pull requests are welcome, and please consider starring this project if you find it useful!

To start using the tool immediately, go to https://rocky-hollows-17288.herokuapp.com/ and create a new session.

User Guide

 

1. Users enter their name, and elect to create a new session or join an existing one:

Registration screen

2. The moderator can publish a reference to the current item, and participants vote on a suitable estimate (in story points):

Voting screen

3. Once a user has voted, the results are displayed. Outliers are discussed, and an estimate is agreed. The moderator can then reset the session to discuss the next item:

Results screen

Discussion

No comments yet.

Leave a Reply

Email Updates

Subscribe to this blog and receive notifications of new posts by email.

LinkedIn

Richard Ashworth
Technical Lead at Goodlord
Experienced software engineer and technical lead. Passionate about functional programming, agile methods and domain-driven design. Check out my blog at richashworth.com

Twitter


Read this blog in your favourite news reader:
Subscribe