Agile Software Engineering: How to get the maximum in and out of Trello Free

Or: How to streamline user feedback directly into your Scrum Project, reacting with maximum efficiency — because organization is key for outputting real user value! ✨

KDEVO
7 min readMar 29, 2020

In this article, we implement a clever way to organize your next Trello Scrum project, letting the automation engine Butler and the Power-Ups work for us.

The good thing: Trello Free will be totally sufficient for the start!

After reading the excellent “Scrum Of One” article which perfectly reflects the situation of my one-man projects, I’ve decided to setup a Trello Board in accordance to the article.

Quickly, I stumbled upon Trello’s limitations regarding the free plan:

  1. Only one Power-Up per board
  2. Only one Butler rule per rule type per board
Free plans are limited to one command of each type

I thought about migrating to a different less restrictive project management solution like Taiga — which also seems like a great free choice.

But instead (mainly because of the broad spectrum of Trello integrations), I decided for a different approach…

Use two boards!

By using two boards for one project, such as

  1. Idea Board: Collect and process feedback/ideas
  2. Development Board: Execute the actual Scrum process

we can…

  • have a separate user feedback inbox and free space for ideas
  • keep the backlog cleaner from unfinished cards
  • enforce a well-defined workflow by design
  • assign scrum roles to each board

And finally, we can easily use 2 Power-Ups for our project — and hey, also more work to do for our Trello Butler since we can use more rules!

Setup

The general idea is to bring the two boards together:

Idea Board

Shows filled Idea Board with template cards and the top right “Send to Backlog”-button
  • Roles: Users, Product Owner, Scrum Master
  • Process: Collect and process user feedback, write down ideas, send well-written cards to Backlog of Development Board

The Idea Board is used to draft Ideas from User Feedback.

Let’s define an Idea as a task that potentially creates user value on resolution — namely User Story (e.g. new feature), Improvement and Bug.

After crafting an idea from a template card, the card can be sent to the Development Board’s Backlog.

An Idea can be send to Backlog once it is well-written, i.e. it reaches a certain quality and describes how to actually create user value.

Image of Trello Board Button “Send to Backlog”

Essentially, the top-right “Send to Backlog”-button boils down to the following Butler rule:

move each card not in list "Feedback Inbox" without an empty description with a name not ending with "Draft" to list "Backlog" on board "Project Development"

Therewith, the Idea Board is unidirectionally connected to the Development Board, which is described as follows.

Development Board

Shows Development Board after pressing the top right “Start Sprint!”-button
  • Roles: Scrum Team (Development Team, Product Owner, Scrum Master)
  • Process: Full Scrum Process

The Development Board provides the Scrum environment.

As I said before, I created the boards based on “Scrum Of One”, but this does not mean that it is too specialized. My goal was to keep it simple, which is why I also only use 4 simple lists (Backlog, ToDo, Doing, Done).

The Sprint Scope (translating to “the context of the current sprint”) consists of the latter three lists: ToDo, Doing, Done.

Before we can start the sprint and put cards to the sprint scope, the Backlog needs to be prepared accordingly:

Many Scrum Teams use Story Points to estimate how much effort is needed for an item. I solved this by using labels for my cards:

Shows how labels can be used to indicate Story Points.

Usually, a Fibonacci sequence is used (e.g. 1, 2, 3, 5, 8), but some teams also use T-Shirt sizes. As you can see above, I decided to go for both.

First, this has the advantage that the scaling is more clear (most commonly from S to XXL). Secondly, it makes it easier for pragmatic people by describing a real-world thing instead of just plain numbers.
So why use both? Hopefully, it makes it easier to order/sort items later! This is why the Fibonacci number is at the beginning. Additionally, we do not need to store the mapping between number and size externally and we also cover people who are more into numbers than T-Shirt sizes.

After preparing a card (estimating, rewriting, adding missing information, etc.) the card can be labelled as “Sprint Ready”. This translates to “Ready for the next Sprint”. By indicating “Sprint Ready”-cards, Butler has an easy job to identify items that can be put into Sprint Scope.

Image of Trello Board Button “Start Sprint”

When pressing the “Start Sprint!”-button, our personal Scrum Butler will do the following:

move all the cards in list "Doing" to list "Backlog",

create a report in variable "endreport" with all cards in list "Done" due this week using pattern "- [{cardname}]({cardlink}) ({cardmemberusernames}) [{{cardlabels}}]",
create a unique card with title "Report for week #{weeknumber}" and description "{$endreport}" in list "Done",archive all the cards more than 30 days in list "Done",sort the cards in list "Backlog" by label green "1 / S", green "2 / M", green "3 / L", green "5 / XL", green "8 / XXL" ascending and then by votes ascending,and move each card with the green "Sprint Ready" label in list "Backlog" to list "ToDo" and set due in 14 days

The first 4 actions handle the current sprint end. This means that the “Start Sprint!”-button will not only start the new sprint — it also ends the running sprint. Scrum is a cyclic process!

Action #1 moves cards that couldn’t be done back to the Backlog again.
Personally, I think that action #2 (“create a report”) and action #3 are very useful for the Sprint Retrospective as it summarizes the Sprint in one card while also making it more acceptable to archive Done cards for cleanup after some time as in action #4 to get a better overview.

The last 2 actions handle the start of the new sprint.
In simple words, first the items in the Backlog are sorted (adjust to your needs), and secondly put to Sprint Scope by moving them from Backlog to ToDo and setting a due date for a 2 week Sprint (modify based on your own Sprint length).

Example: 2 Week Sprint

The Sprint ends Thursday afternoon with a “Sprint Release”.
The Sprint Iteration Review is on the day after, Friday morning. Thereafter, the Sprint Retrospective takes place.

Ideally, you would press the “Start Sprint!”-button on the day of the “Sprint Release” Thursday afternoon. This way you could use the generated report for preparation for the upcoming meetings. This comes in handy for taking notes on specific tasks, for instance to decide which features should be presented and how to show them for the Iteration Review.

Power-Up — streamline User Input

See the “Feedback Inbox” in the Idea Board? This can be used to immediately add survey results from actual users into your project, e.g. by using the Typeform Power-Up.

Typeform Power-Up Setup dialog

Tip for students: The GitHub education pack contains a one-year free Typeform Professional membership. Don’t forget to cancel the subscription in your profile afterwards though, they will ask for your credit card details!

Also, you can use the Trello Email-to-board feature for instance by sharing this E-Mail address to (trustworthy) users.

Add Cards via Email Trello dialog

Bonus idea: implement an E-Mail Bot that retrieves the User Feedback from other channels such as Telegram — the possibilities are endless.

Ultimately you can draft new User Stories without ever leaving Trello!

Postscript: Design Decisions

Why do you use labels for Story Points instead of the custom fields Power-Up on the Development Board?

I agree, using labelled labels (pun intended) make some things more complicated. But first, I wanted to keep the option open to use a Power-Up of your own choice for the Development Board. Secondly, using Story Points for all your small tasks might not be best practice.

Why are all the templates on the Idea Board but not on the Development Board?

This was my personal choice to offer more clarity in the actual Scrum board, without overloading the Backlog with cards that are not too relevant.

Isn’t the “Sprint Ready” label unnecessary because you could simply check if an item in the Backlog has already been estimated to move it to the Sprint scope?

No, because I could not find an option to use logical “OR” combinations as a filter condition for the “each …”-rule/action.

❓ What do you think of this approach?

👏 Clap if you like it
💬 Comment if you want to suggest improvements!

Depending on your feedback, I would consider to submit the two boards as a Trello Template to ease the setup for your own projects.

--

--