Over the years, I’ve coded and managed 100s of web and mobile development projects. Most of them were delivered using Scrum or related agile methodologies. As a company, we’ve gradually settled on Trello as our de-facto project management tool. It’s not immediately obvious how you would use Trello for Scrum out of the box, so I would like to show you the setup that we’ve adopted at DN Digital.
Before we get started:
What is Scrum?
Scrum is a popular way to manage software development projects. It creates small, collaborative teams that deliver individual features in short, highly structured iterations. Real-world results rather than theoretical estimates are used to determine the progress and success of a project. Companies adopt Scrum because it delivers measurable results and can respond easily to changes in requirements.
Why use Trello for Scrum?
Trello generally isn’t first on your list when you consider Scrum project management tools. The Scrum method is highly prescriptive and all the freedom that Trello offers makes Scrum harder to implement. It doesn’t ‘just work’ out of the box. In our experience, however, Trello’s benefits outweigh the lack of specific Scrum features on all but the largest of projects:
- Many Scrum tools are cumbersome and old-fashioned – Trello easily trumps them in terms of speed and ease-of-use.
- In the real world, many of Scrum’s more formal requirements are ignored anyway. In these cases, the lack of built-in Scrum support isn’t really an issue anymore.
- We use Trello to manage the rest of your business. Not having to switch tools when working on development projects saves a lot of time.
Why not use Trello for Scrum?
Trello’s main weakness is a lack of management reporting such as burndown charts, estimates and progress reports. You will need to use browser extensions or 3rd party apps to cover these. It also doesn’t offer github integration, time tracking or automatic estimates on team velocity. So if these are indispensable and you’re looking to implement a highly formalised Scrum process, then I would suggest looking to more established tools that offer many of these features out of the box.
Let’s get started with The List!
1. Set up an efficient board structure
We generally break down Scrum projects into 2 boards:
The Planning Board
- Wishlist
- Discovery
- Estimation
- Product Backlog
The Sprint Board
- Sprint Backlog
- Implementing
- Done
- Ready for testing
- Approved
- Rejected
- Ready for release
- Released Sprint #1
- Released Sprint #2
- Released Sprint #3
Truth be told we usually start with all of these on a single board. Once it becomes unwieldy we split off the Planning section. And if it gets even more unwieldy, we might split off the release history. For larger teams, or where there is a clear separation between the people planning and those developing, it makes sense to split into 2 boards from the beginning.
And remember: Each team operates a little differently. The beauty of Trello is that you can adjust the board structure instantly to accommodate new requirements.
2. Name a Trello champion
Trello is easy to use and highly collaborative. For teams, that translates into a learning curve and potential chaos. Designating someone who will look after training the team, coaching new members and making sure Trello is kept up to date. On larger projects we even provide video guidance and short written instructions. Often the Scrum Master is ideal for this role.
3. Integrate your QA process
Our developers move Trello cards from ‘Done’ to ‘Ready for Testing’. From there they are picked up by QA. They in turn move the card to ‘Rejected’ or ‘Approved’. All of this happens on the same board. It gives clear visibility of what’s involved in delivering a particular feature and everybody can deal with questions quickly.
4. Use lists and card titles to group larger features
Larger features are called Epics in Scrum. Where Trello differs from other tools is that it doesn’t allow cards to be grouped together as part of an Epic. We work around that in two steps:
- Create a new list to keep the feature cards together in the backlog.
- Big Feature Backlog
- Product Backlog
- Add the name of the feature to each card’s title (we use capitals to separate visually):
BIG FEATURE User can pay with Stripe
BIG FEATURE User receives 30 day free trial
This allows the connection to be maintained when the cards get separated into different columns.
NOTE: It’s often tempting to use checklists for this purpose instead. Doing so hides separate tasks inside a card, makes them unassignable and means you can’t track them individually. Checklists are more effective during planning, where you create a single card for the Epic and collect sub-features in a checklist. Then convert each checklist item into a new card when it goes into estimation.
5. Use card titles to store estimates
A key part of Scrum revolves around estimating tasks. We simply store the estimate in a card’s title, in brackets:
(4) User can pay with Stripe
On some projects we also ask developers to record the final effort – this goes at the end of the title, in square brackets:
(4) User can pay with Stripe [3]
This approach is easy to read and is compatible with the highly recommended Scrum for Trello browser extension.
6. Keep a detailed sprint history
When a card has been released into production, it ends up in the ‘Released’ column. We create a new column for each sprint, eg:
- Released Sprint #1
- Released Sprint #2
- etc.
I can’t overstress how useful this is: It makes release reports very easy, allows you to see how your scrum velocity develops over time and provides a great starting point for sprint reviews. All of these are key features of a working Scrum setup and separate release lists make it achievable without fancy tools.
7. Use extensions for estimates, burndown charts and more
An important part of Scrum is using empirical data to gauge project progress and delivery dates. At the simplest level this revolves around estimates and sprint velocity. Trello doesn’t offer these out of the box, but the good news is that a plethora of browser extensions come to your rescue. Our tools of choice are:
http://scrumfortrello.com – to track estimates, actual effort and velocity
https://burndownfortrello.com – to create burndown charts