Kanban Boards
Managing Projects with Ease
Introduction
Whether managing large projects, lots of small projects, or just trying to keep your tasks in order, a Kanban board can help you keep organized and up to date. There are many options when it comes to setting up a Kanban board and the flexibility in how you use it is one of the major benefits in using them to manage your workflow.
About
- Subject: Project Management and Software Development
- Objective: The purpose of this post is to discuss the many options for setting up a Kanban board and how to use them to manage your workflow.
Getting Started
What is a Kanban Board and why you should use one?
Kanban boards are, at their core, a type of to-do list. The boards allow for the visual representation of tasks and their current state. When you glance at a Kanban board you should easily be able to tell where the bulk of the work is and what is in progress. Kanban boards are composed of three key components.
Board
Boards can represent anything that involves tasks you need to manage. This could be keeping track of personal things that need to be done, projects around the house, daily business responsibilities, or keep track of work completed by a team.
Boards themselves can be physical, like a white board with sticky notes you might see around the office of an engineering team, or virtual. There are many companies out there that offer boards as SaaS or opensource that you can host yourself. Trello is a popular provider that offers additional features such as board automation. Trello charges a fee for some of their features, but you can set up a basic board for free. Some of the other options are GitHub, Taiga, or Kanboard.
Columns
Boards are divided up into columns, with each column representing what state the work is in. You could, for instance, have a column that represents that tasks are under review before being confirmed completed, or that work is in the design phase before construction begins. Work will flow from one side of the board to the other, from the backlog or upcoming tasks to the completed column. To have a functional Kanban board you only need three columns, to-do, doing, and done.
Kanban
Kanban are the tasks, cards, or sticky notes that represent the work that needs to be done. Kanban are the objects you move from column to column. Work can be expressed as simple statements like “Pay bills” or can contain checklists, images, and detailed descriptions of requirements. The idea here is to scope the task so that it can be looked at too quickly ascertain what needs to be done.
How to set up a Kanban board
First you will need to pick a platform to use for your board. For our current projects at MonkeyKidGC we use the free tier of Trello, but you may want to use a different board\tier based on cost, features, privacy, and number of team members.
From here you will need to define your workflow. You can start by building out columns for the basics, “Backlog”, “Doing”, and “Done”. After that, identify the different processes that occur during the time your tasks are in-progress. These will be your columns. For example, do you have a design process, a testing phase, or even a time where tasks wait a while before being picked up again. For our workflow we also added a “Design”, “To-Do”, “Code Review”, and “Testing” column.
Another practical way to decide what columns you need is to place an item in the “Backlog” and begin working it. If you find there is a place where you are changing processes/tools or handing the work off to another teammate then you have identified a place to insert a new column. The great thing about Kanban boards is you can modify them for your needs. If you find you need a place to hold questions, reference material, or stretch goals that are not part of the work that is required, then you can create those columns too.
How to use a Kanban board
While working the tasks on the board it is important to revisit the board when you are changing tasks or moving to new processes/columns. This will keep your visibility of the project high. You do not want to be caught working a task and get to the point where you are implementing features that are out of scope or part of another task. If you are going back to the board between steps you will be able to add features you discovered might be needed or desired later to the backlog and also refresh your memory on the status of other tasks.
Our process follows this pattern. Work is pulled from the “Backlog” into the design phase once we are ready to plan out the work. This is design only so we will not begin coding but we will define features, write out user stories, and create mockups. We will then add additional information to the task/card such as checklists, images, and detailed descriptions if needed. Once that is done the item is moved to the “To-Do” list where it waits for someone to begin working on it. This is important for us because we do not want to clog up the “Design” column or the “Doing” column with work that is just waiting. The big difference between the “Backlog” and “To-Do” columns is that we have committed to doing the work in the “To-Do” column whereas we may decide to remove something from the “Backlog”.
Now, someone is ready to start building out the task. This is the point it moves to the “Doing” column. Here we will do any programming, illustration, writing, etc. This is the most straight forward column. Once the work is done we can review the work as a team, begin testing, or both depending on the type of work. If it fails or requires further work/design then we can move it backwards to where we think it needs more work. This allows us some flexibility while still being able to say we took a second look at that piece of work before moving it to production. At this point we are done. We move the work to the “Done” column, but we do not delete it, this allows us a way to reference completed work if needed in the future. Some boards offer the ability to archive your cards if you do need to clean up your board.
That is all for now. If you found this article useful, let us know in the comments. Want to learn more? Check out some of our other articles, such as Setting Up VSCode for Unity. We currently have two games on Google Play and at the Amazon Appstore for Android, check them out below.