Managing your personal projects with Kanban

June 20, 2021 | 0.25 PDUs

Kanban is a lightweight task management methodology perfectly suited for small-to-medium personal projects. In this post, we look at how Kanban works and an example of applying Kanban to a personal project.

While Kanban’s initial applications can be traced back to just-in-time manufacturing, it can be applied to just about any other project type.

What is Kanban?

Kanban is a methodology in which tasks are enumerated as “cards” and progress through a series of “bins” until completion. Naming conventions vary for the bins, but frequently the bins represent three states for the tasks:

  1. To-do
  2. Doing
  3. Done

The following screenshot (from the popular Kanban tool, Trello) shows multiple tasks in various states:

example Kanban board

In this example, Tasks 1 and 4 have yet to be started, Task 3 is in progress, and Tasks 2 and 5 are completed. If you were to start working on Task 1, you would drag it from “To-do” into “Doing.” Once completed, you would drag the card into “Done.”

moving cards

In this way, you can have a simple accounting of all the work required to complete your project and be able to determine, at a very quick glance, the progress of your project.

Sizing your tasks

Kanban is well-suited for smaller-sized tasks. Not only do you get a nice sense of accomplishment by frequently moving cards across the board, you also get more insight into progress.

For example, I would consider a task that takes weeks or more to be too large for a Kanban card. Why? Because you don’t gain much insight when that card is in the “doing” state: it could be that the task is at the beginning of being done and will take weeks more to continue, or it could be that the task has just a day or so left.

Conversely, if all of your tasks take days or less, you can likely anticipate that a card in the “doing” state will be done in the coming days.

Estimation optional

Estimating task size is generally option in Kanban. I have used Kanban in conjunction with story-pointing in professional software development settings, but generally opt not to assign points to my tasks for personal projects—I think it all depends what your end goal is with the project. If your personal project has no stakeholders who need project delivery by a certain date and don’t require status updates, then estimation seems like overkill.

If you do opt for estimating your tasks, I recommend using a pointing system, which is a methodology to assign a number of points to each task based on pre-defined criteria. In software development, a popular framework is to assign tasks a score of 0, 1, 2, 3, 5, or 8 points (the first six unique numbers in the Fibonacci sequence). A score of 0 points means that no work is reqiured for the task to be complete whereas a score of 8 points is a very significant amount of work.

When estimating, your project will develop a velocity: the speed with which you can deliver points. For example, you might find that you can deliver 10 points per week. You can use this 10 points/week number to estimate the amount of time it will take you to complete your project given the number of points you have assigned to the remaining tasks.

An example: building a web portfolio

Being primarily in the software space, a natural example that comes to mind for using Kanban is building a web portfolio. In this example, I create a basic work breakdown structure (WBS) that articulates the tasks required to complete the project:

Work breakdown structure

  • Design portfolio

    • General layout
    • Color scheme
    • Home page mockup
    • About page mockup
    • Portfolio page mockup
    • Contact page mockup
  • Programming

    • Home page coding
    • About page coding
    • Portfolio coding
    • Contact page coding
  • Infrastructure

    • Acquire domain name
    • Acquire hosting
    • Configure continuous integration/deployment
    • Deploy site

Setting up the board

Next up, I’ll add all of these tasks to the “To-do” column of my board. Most Kanban software has handy labeling features to visually distinguish between categories of tasks.

portfolio project setup

Working through the tasks

As I progress through the project, I drag tasks from left to right. In the following screenshot, you can see that I have completed most of the design tasks. Some design is still in progress, but I have completed enough of the designs to start doing some coding work on the site.

partially completed project

Note that, in a more robust example, I could have added schedule constraints. These are generally referred to as “blockers” in Kanban. In this example, the mockups would have all been “blocked” by the general layout design and possibly the color scheme design. The coding card for each page would be “blocked” by its corresponding design card (can’t start coding something that hasn’t been designed yet).

Since this is a personal project and these relationships are intuitive to me, I elected not to explicitly specify the relationships in the software. Like many aspects of project management, you can decide when additional process helps and when it doesn’t for your particular use case!

And that’s really it

As mentioned before, I’m a big fan of making sure the project management process you implement is commensurate with the project you’re undertaking. Kanban can be an extremely lightweight but also extremely effecting option for managing personal projects. Of course, your mileage may vary! You may think this is overkill for certain projects or not enough process for other projects—and you’d probably be right.

Kanban in the professional world

While this article suggests you should use Kanban for personal projects, it by no means suggests you can’t use it for professional projects. In fact, it’s my preferred tool for managing agile software development projects!

The main difference, in my experience, is you generally have more participants in the board and more stakeholders to whom you must report. Therefore, your Kanban methodology will likely evolve to have more process behind it: ways to assign cards to individuals, work-in-progress (WIP) limits to prevent individuals from becoming overburdened, and devoted sessions for story-pointing. You may develop artifacts like burn-down charts to present to stakeholders to show work being completed over time.

Conclusion

Kanban is an excellent methodology to add to your arsenal. While not perfect for every project, it’s an excellent low-friction choice for both personal projects and agile professional projects.


Welcome to PMKnowledge.org! Here you will find articles about various project management topics. Each article lists a number of Professional Development Units (PDUs) you can earn by reading the article based on the average reading time of that article.

© 2021, PMKnowledge.org