Mastering Kanboard

Kanban Fun

Article from Issue 191/2016
Author(s):

Based on the kanban system, Kanboard offers solid tools for efficiently managing projects. We explain the Kanboard basics and put the application to project management duties.

The kanban technique [1] is not limited to large organizations managing complex projects. Practically any project – travel planning, writing a book, and developing software – can be managed using a kanban-style application. The basic idea behind kanban is relatively simple.

The key components of kanban are cards and a board divided into columns representing project stages. In the most simple scenario, the project may consist of three stages: To Do, Doing, and Done. Each card represents a project task, and you move cards from one project stage to another as you work on the tasks and complete them. In the case of the To Do-Doing-Done project system, you start by placing all the cards into the To Do column, then move the tasks you are currently working on to the Doing column. When the task is completed, you push it to the Done column (Figure 1).

Figure 1: Kanboard allows you to manage projects visually.

As the name suggests, Kanboard [2] is based on the kanban technique, and the application offers a wide range of tools and features that ease the project management burden. To deploy Kanboard you need a machine running a web server (e.g., Apache) and PHP. Although the application supports several database back ends, including MariaDB and PostgreSQL, it uses the SQLite database engine by default, which requires no setup or configuration.

Installing Kanboard is straightforward. Fetch the latest version of Kanboard from the project's website, unpack the downloaded archive, rename the resulting directory to kanboard, and move it to the document root of the server (e.g., /var/www). Make the kanboard directory writable by the server using the

chown www-data:www-data -R kanboard

command, and you are done. Point the browser to http://127.0.0.1/kanboard (replace 127.0.0.1 with the actual IP address or domain name of the server running Kanboard), and log in using the default admin/admin username and password.

Kanboard Basics

The first step is to change the default login credentials and populate Kanboard with additional users, if necessary. To do this, expand the User menu in the upper-right corner of Kanboard's interface and choose My Profile. Click on the admin entry, then click on the Edit Profile item in the Actions section. Modify the default name and email, and press Save. Click on the Change password link and change the default password.

You might want to tweak a few other settings, too. You can upload an avatar and enable the two-factor authentication feature, which adds an additional layer of security by generating a disposable access code for logging into Kanban. To enable this feature, install the FreeOTP [3] two-factor authentication app on your mobile device, enable the two-factor authentication option for the Kanboard user, and scan the generated QR code with FreeOTP (Figure 2). Use the app to generate a code, enter it into the Code field, and press Check my code to enable two-factor authentication. To keep the user up-to-date on project activities, you can also enable and configure notifications in the appropriate section of the user management area.

Figure 2: Kanboard supports two-factor authentication.

Next stop is the application's settings section (choose Settings from your User menu). Although you can leave most options at their defaults, you might want to modify a couple of settings. In the Application settings section, you can change the interface language and timezone as well as specify the desired time format. By default, Kanboard uses four project columns: Backlog, Ready, Work in progress, and Done. But you can change that in the Project settings section by entering the desired column names (e.g., To Do, Doing, Done) into the appropriate field.

Now you are ready to create your first project. To do this, press the + button next to the User menu and select either New project (a project that can be accessed by other Kanboard users) or New private project (a project accessible only by you). Give the project a descriptive name and press Save. This creates the project and switches to the settings area. There are a few options you can modify here. If you prefer to use custom tags for project tasks, you can specify them in the Tags section.

By default, all projects in Kanboard are private, meaning the user must be logged in to the application to access projects. However, the application also allows you to make projects public (Figure 3). To do this, switch to the Public access section and press the Enable public access button. This not only makes the project public but also generates RSS and iCal feeds for others to subscribe to.

Figure 3: Making the project public.

Before you start exploring Kanboard's interface and tools, it's a good idea to add a few tasks to the project (Figure 4). The application provides several ways to do that, but for now choose the Add a new task command from the main menu. Use the available fields and options in the New Task dialog to give the task a name, a description, assign tags and user, specify color, and select the project column. You can specify the task's priority and complexity as well as its start and due dates along with the estimated number of hours required to complete the task. Because Kanboard lets you manage projects visually, card colors can act as important identifiers. So, you might want to devise a system for using specific colors right from the start. For example, if you are working on a programming book project, you can choose one color for all tasks that involve coding and debugging, and another color for writing tasks. This way, you can easily identify each task by its color.

Figure 4: Adding a new task.

With the first project ready to go, you can start exploring Kanboard. The application's interface consists of several views. As the name suggests, the Overview view gives you a brief overview of the current project, including the number of tasks in each project column and a list of recent activity. Board is probably the most important view in Kanboard; it displays the project as a board divided into columns representing project stages.

Tasks on the board are shown as cards, and you can move them from one column to another using the mouse. You can add new tasks to a column by clicking on the + icon next to it. The Calendar view displays the tasks that have a due date, and the List view shows tasks as a regular list (Figure 5). Finally, the Gantt view displays the project tasks and relationships between them on a timeline (more about task relationships later). You can use the mouse to move the tasks on the timeline as well as adjust the duration and due date of each task.

Figure 5: Kanboard features several views, including a Calendar view.

Under the main menu, you'll find a handful of useful items. The Analytics command, for example, gives you access to the Analytics area with various charts and graphs, such as Task distribution, Cumulative flow, Average time into each column, and so on (Figure 6).

Figure 6: The Analytics area gives you access to various charts.

To get an overview off all your projects and tasks, switch to the Dashboard area by choosing the My Dashboard command from the User menu (or simply click on the KB logo in the upper-left corner of Kanboard's interface). Here, you can quickly view not only projects and tasks, but also your calendar, activities, and notifications (Figure 7). The Exports and Imports commands let you export and import tasks, and the Activity command shows the activity stream.

Figure 7: The Dashboard provides an overview of all your projects and tasks.

The Filter bar in Kanboard's interface is used to filter tasks by specific criteria, and the application comes with several default filtering rules like My tasks, Tasks due today, Open tasks, and the like. You also can specify queries on the fly using special syntax. For example, the assignee:me due:tomorrow Proofread query displays all the tasks assigned to you with a due date of the next day and containing the word Proofread in their titles. Better still, Kanboard makes it possible to create custom filters (Figure 8). To create a filter, choose Custom filters from the main menu, give the new filter a name, and specify the desired filtering rule. For example, to view all opened and closed tasks, specify the status:closed status:open query. Press Save, and you can access the created filter using the dedicated menu in the Filter bar.

Figure 8: Kanboard makes it possible to create custom filters.

More about Tasks

Tasks in Kanboard are not just simple entries, but containers that can hold a lot of useful information. And the application provides a dedicated interface for working with tasks. To switch to it, click on the desired task in any of Kanboard's views. This opens the task view, where you can see the task's summary, view the task's activity and its transitions (the task's movements between project columns) and analytics. The Edit the task command opens the familiar task editing dialog where you can modify the task's settings (Figure 9). Each task can contain a number of sub-tasks that can be added using the Add a sub-task command. This functionality can come in useful when you need to divide a complex task into smaller pieces. All sub-tasks appear in the Sub-Tasks section in the task view, and you can use the timer feature to track time spent on the particular sub-task.

Figure 9: Editing a task.

Complex projects often include interdependent tasks. For example, you may have a project in which you can't start working on task Y before you complete task X, and any changes in the schedule for task X affect task Y and all other related tasks. Kanboard makes it possible to keep tabs on related tasks by creating internal links (i.e., relationships) between them. To specify an internal link for the current task, use the Add internal link command in the task view. In the Add a new link dialog, select the desired relationship from the Label drop-down list, and specify the target task in the Task field. Press Save to create the relationship. You can then use the Gantt view to manage connected tasks.

It's also possible to add external links to a task. This functionality can be useful for storing links that point to local files, websites, and attachments. Speaking of attachments, you can attach files to tasks, too. The Add a screenshot command lets you quickly attach screenshots to a task. Finally, the Add a comment command can be used to append comments that can be used for keeping task-related notes and discussions.

Final Word

Despite its apparent simplicity, Kanboard is a capable project management application loaded with useful features and tools. I covered only a tiny fraction of Kanboard's capabilities, and there is much more to this application than meets the eye. Fortunately, Kanboard comes with excellent documentation that can be accessed via the Documentation command in the User menu. Make sure to take a look at it if you want to get the most out of this excellent application.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Visual Aid

    Wekan lets self-organzing teams manage a project's workflow by tracking task ownership and progress visually.

  • Getting Things Gnome

    Getting Things Gnome helps with getting things done. Users can enter outstanding tasks and assign keywords and completion dates to their task lists in the foreground.

  • Manage Tasks on Android with SimpleDo
  • Time Management

    If you need to accurately measure time spent on individual projects and tasks, you need something more sophisticated than yellow sticky notes. Fanurio helps you keep an eye on your time, your projects, and more.

  • Workspace – Taskwarrior

    Taskwarrior is arguably the most powerful command-line task manager. We show you how to use this application to manage tasks like a pro.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More

News