🎶 Don't look back in anger - Agile Sprint and Retrospectives in Asana

Agile working methods are becoming increasingly popular—especially a sprint approach to managing work. I can show you how to approach Sprints in Asana in this short (ish) guide.

First, you must input your projects into Asana with the tasks listed to enable this to work well. Then what you need to do is create a Sprint Planning Board. In this board, you will “Multi-home” your tasks from all your projects into one place to plan your Sprint. You can bulk multi-home from the projects (by selecting up to 50 tasks and adding them to the Sprint Planning board), or if you are using templates, you can designate the tasks to “add to projects” directly into the Sprint Planning Backlog. Multi-homing means that your task can sit on the project board as well as in the Sprint Planning project without duplicating, enabling updates to be seen on both sides.

In the Sprint Planning board, you want sections for All Backlog (where all tasks to do across multiple projects will live), Refining and then Scheduled. The Refining section is where you and your team can refine and add details from your Sprint Planning Meeting. I recommend adding custom fields to this project, such as Estimated Time, priority, and sprint number (making sure you add them to the company library). You can also decide upon your sprint goal here and add them as a milestone.

I would then create the Sprint board itself. This needs sections of Sprint Backlog, Working On (Could be designing or in progress, depending on your team type), and Done. You could add more sections, such as ‘Developing an QA’, if you’re more of a DevOps team. Add the same custom fields from the Sprint Planning Board from the company library and any others you might find useful.

Back in the Sprint Planning Board, we now need to ensure that when it moves to the ‘Scheduled’ section, it moves to the Sprint Board in the ‘Sprint Backlog Section’. This is done with a rule. The trigger is ‘When a Task is Moved to That Section’, and the Action is ‘Move to Another Project’. You can now move the tasks you want in your Sprint and your Sprint Goal (milestone) to this section, and it will move to the Sprint Board, ready for you to start your Sprint.

During the Sprint, the Sprint Board is where you would host your Daily Scrum, where you can adjust information and use the project Status Updates to let the team and stakeholders know how things are progressing. When that Sprint is concluded, you can also have your sprint review on this board, looking at the completed tasks marked as Sprint One, assessing the previous Status Updates, making one final one for that Sprint, and using the dashboard to pull reports.

I would recommend having a separate board dedicated to Retrospectives, with sections such as Agenda, What Went Well, What Didn’t Go Well, Improvements for Next Time and Questions. The team can add their thoughts as tasks, and you could even Multi-home tasks that caused issues in this project from the Sprint Board Directly.

Let me know how you do your Sprints and any other thoughts or questions!

Danni @ GenD


We do something similar to this.

One pain point is either having to create a new sprint board each sprint (and therefore updating all the rules that point to it) or finding a way to offload the old tasks from the sprint board. We found that over time Asana slowed down a lot until we offloaded all the tasks that were complete and >1 week old (which took awhile at 50 at a time).

The other issue we ran into is remembering that a rule that always multi-homes tasks to the planning project will always set its section to the same section each time, even if we create that task in a different section.

For example, in our planning project we have a “New tasks” section in addition to the backlog. Every team member has a rule in their “my tasks” that when a task is created, add it to the planning project in the new tasks section. This works great as long as we are not in the planning board manually adding the task to any other section. As soon as the task is assigned to a team member (which happens automatically if the view is filtered to a specific person) the task gets moved back to the “New tasks” section no matter what section it was created in. Sometimes it gets moved before a title is even added.

This is a recent change to how that rule performs, as confirmed by Asana staff.

We wish there was a better way to add tasks to the planning board automatically, and that we didn’t have to keep shuffling off old tasks to prevent performance issues, but otherwise the system works great!

Hey @Eric_Edwards Thanks for your feedback.
I would have a sprint board that is ever green personally, rather than a new board each time. You could do a rule to trigger a move back to the backlog for tasks not completed in the sprint.

Also if you use templates and make it so all tasks multi-home when brought in or even a blank template where it has the rule that when a task is added it auto multihomes.

I have seen a few people multi-homing from my tasks, i would say really the rule should be coming from the projects itself.

Let me know your thoughts.

Hi Danni!

Thanks for this post, I have found it really interesting. I wanted to ask a question, since my understanding is that in this worfklow, you need to create a new project for every new sprint?

I was doing the Github integration today, which is (as I understand it), done per project. Practically it means in your worflow you’d need to install the plugin at the start of every new sprint/cycle, which seems unnecessary.

Was just curious if you have that integration and how you deal with it?

1 Like

Hi @Jacques_De_Villiers no you would not need a new project for every sprint, you would use the same board and return the tasks to the backlog. I do not have the github integration unfortunately so cannot help there

1 Like

Ok, perfect thank you! That is really helpful

1 Like

Hi Danni

I then just have one more question, since it’s not clear to me, how do you add the sprint label to the task? ie I’m assuming that you have automated this, but wasn’t sure how it would increment the label when moving things from Refining to Scheduled?

Hi @Jacques_De_Villiers it is a custom field.