What is Kanban?
A project like Siboot 2.0, with people spread across the globe and multiple tasks in different phase of development, can quickly become unmanageable and spin out of control. Chris and I talked this past weekend about how we could use Trello to make the team more effective. My suggestion was that we implement a Kanban board using Trello.
Kanban is technique pioneered by Toyota that can be applied to Lean software development. In Kanban an entire process, whether manufacturing or coding, is viewed as a pipeline.
Within the pipeline there are various phases. Work moves through the the individual phases from left to right.
Based on resources assigned, each phase can only accommodate so much work. If a phase has reached it’s work limit, work in prior phases builds up. This lets you pinpoint bottlenecks in your process quickly.
Trello and Kanban
Trello is based around lists and cards so I thought it would map well to the Kanban process.
I created a new board, Siboot 2.0, and added a set of lists that corresponds to our development process (I’ve also renamed the organization from “Siboot 2.0″ to “Storytron” to avoid confusion).
Each of the lists represents a phase of development on the Siboot 2.0 project.
- Backlog – Tasks that are not ready to be worked on. They either are missing information and need further discussion or are too “epic” and need to be broken down into smaller tasks
- Ready – Prioritized tasks that are ready to be worked on.
- In Progress – Tasks that are currently being worked on
- Blocked – Tasks that are in progress but stalled, waiting on some information or decision by someone else or waiting on another task to be completed
- In Review or Test – Tasks that are complete but still need verification
- Done – Tasks that have been completed
Each list contains cards which represent the individual tasks. The only required element of a card is a short descriptive title that outlines the work to be done (don’t worry, there’s more room on the “back” of each card to expand on the one or two line title).
To create a new card click the Add a card link at the bottom of a list.
Type your card title and click the Add button (or press Enter on the keyboard).
The card will be added to the list and you’ll still be left in Add Card mode. This way you can rapidly add multiple cards to a list by type card title after card title, pressing Enter each time to add the new card to the list.
I try to keep the following mnemonic in mind when creating tasks – INVEST.
- Independent – Each task should be self-contained with no inherent dependency on another task
- Negotiable – Until it is In Progress each task can always be changed and rewritten
- Valuable – Each task must deliver value to the end user
- Estimatable – Each task should always be able to be estimated (if not it’s probably too “epic” and should be broken down into smaller tasks)
- Scalable – Each task should not be so big that it is impossible to plan or prioritize with a certain level of certainty
- Testable – Each task and its description should provide the information that makes testing or review possible
It’s more of an art than a science and, while it might feel strange at first, it will become easier the more you do it.
Once you’ve created cards there are three things you can do with them – move them up and down in a list, move them between lists, and add details.
To move a card up and down in a list click on the card and hold the mouse button down while you drag the card up or down the list. As you move the card the mouse pointer changes from a pointing finger to a grabbing hand to indicate that you’re dragging a card.
In this screenshot the “Fine tune verb algorithms” card is being dragged up above the “Create 200-400 anecdotes,” giving it a higher priority in the list.
To move a card between lists click on a card and hold the mouse button down while you drag the card from one list to another. In the screenshot below the “Finish adding final verbs to the storyworld” card is being dragged out of the Backlog list.
Into the Ready list.
Again, as you move the card the mouse pointer changes from a pointing finger to a grabbing hand to indicate that you’re dragging a card.
Modifying Card Details
Clicking on a card allows you to “flip” the card and add additional information to the card.
Here’s a sample card with just a simple title.
When you click on the card it will open a larger view into the card, displaying the various items that you can add to the card about the work that has to be done. At any time you can click the X in the upper right corner (or anywhere outside the expanded card view) to return to the board.
On the “back” of the card you can add or edit the following items:
- Due Date
Members, Labels, Checklists, Due Dates, and Attachments are added to the card by using the Add menu on the upper right.
Editing the Title
To edit the card title simply click on the title text, make your changes, and then select Save.
Editing the Description
To edit the card description click the Edit the description link (or an existing description), make your changes, and then select Save.
Selecting Members from the Add menu will display a list of board members. Selecting individual members puts a check mark next to their name.
Adding them to the card (I figure we can use this to show who’s going to be working on a task).
Selecting Labels from the Add menu displays a list of colored labels that can be used to classify each card.
I’ve customized the labels into two groups – things and verbs. Storyworld, Anecdotes, Faces, and Graphics are the things; Designing, Coding, Testing, Writing are the verbs.
Selecting each label puts a check mark on it.
And adds it to the card (I figure two labels per card should be the norm, one noun, one verb).
Editing Due Dates
Selecting Due Date from the Add menu will display a date picker which allows you to select a due date and time.
Clicking Save after selecting the appropriate date and time adds them to the card.
Selecting Checklist from the Add menu prompts you for a checklist title (you can also copy checklist items from another card to pre-populate this checklist using the Copy Items From drop-down menu).
Selecting the Add button will add the checklist to the card (in the example below we’ve chosen not to pre-populate our checklist with items from another card).
Type your checklist item in the “Add an item” field and click the “Add” button (or press Enter) to add the item to the checklist.
As you work on items you can mark them complete by clicking the check box to the left of each item. For each completed item the progress bar at the top of the checklist will display a percent complete so you know at a glance how much work remains.
You can click on any checklist item in the list to edit it. You can also create a new card from any checklist item by clicking the “Convert to Card” link if you feel that this piece of work should be a separate task.
Selecting Attachments from the Add menu displays a list of locations where you can select files. Selecting one of those locations will display a dialog box that allows you to select your attachment. (You can also attach a link using the Attach a link field.)
Attachments appear underneath the card description. By default the first attachment will be displayed as the card’s cover (you can change this by clicking the Remove Cover link).
Multiple attachments can be added to a card and you can designate which one (or none) is the card’s cover.
Board members can carry on conversations about a particular task by writing comments in the Activity section.
Besides writing text you can also add an attachment, mention another member (which notifies that member of your comment), add a link to another card, or add emoji to your comment using the links beneath the Write a comment… field
All card activity is tracked in reverse chronological order.
As you make changes to a card the changes are reflected on the card’s “front.”
Other Card Actions
The Actions menu provides some additional card actions.
Using this menu you can:
- Move the card to another board, another list, or a new position in a list
- Copy the card with options to include checklists, labels, members, attachments, or comments
- Subscribe to the card so you get notifications when something changes
- Archive the card to remove it from the board
Quick Card Editor
Once you’ve created a card you can quickly edit some of the card information without “flipping” the card onto its back. To do this move the cursor over the card and click on the pencil icon that appears (you can also type “e” instead of clicking).
In this mode you’ll be able to edit the card title, change labels, members, or due date, as well as performing some additional card actions.
Searching the Board
Using the search box in the upper left corner it’s
You can search on any card text.
You can refine your search by including member names.
And you can even refine your search further by limiting it to cards with specific labels.
Some Additional Links
Here are some additional links to answer any additional questions you might have.
Some Suggestions for Board Use
There are no specific member permissions to restrict certain activities to certain members – everyone who is a board member can do anything. Because of this lack of permissions I’d like to offer some suggestions for how the Siboot 2.0 board could be used.
- Anyone should feel free to add a task to the Backlog list
- Tasks should probably be labeled with one noun, either Storyworld, Anecdotes, Faces, or Graphics
- Tasks should probably be labeled with one verb, either Designing, Coding, Testing, Writing
- Discussions about the task should probably happen on the card associated with the task
- Only Chris Crawford should move cards from the the Backlog list into the Ready list
- Only Chris Crawford should prioritize cards in the Ready list
Remember, these are only suggestions.