Home

kanban edited this page Jul 14, 2011 · 2 revisions
Clone this wiki locally

How to set up the Kanban App

Prerequisites

The Kanban App is a Java web application archive ("war" file). To run it you need to have a box running a Java web application server such as Tomcat or Jetty. Ideally you should have experience with deploying Java web applications to your application server and you will need to know the host name and port number of your application server.

Deploy kanban.war

Deploy the kanban.war file to the web application server. Application servers typically allow you to do this by copying the war file to the application server's webapps directory. There may also be an "manager" website you can connect to that will allow you to deploy the war file by uploading it from a web page.

Verify deployment

Verify the installation. Navigate to http://<host>:<port>/kanban. If you are connecting from the box that is running the web application server you can use "localhost" for <host>. The port is probably either 80 (the standard port) or 8080. If you connect to this URL you should see a page like this:

Kanban App

Version 24
Kanban Home /home/username/.kanban

Click here to create the Kanban Home directory with a sample project.

Configure a project

Click where it says “click here” and the Kanban App will create you a sample project to experiment with. You can create other projects by clicking the “Create Project” button from within the sample project.

Verify configuration

You should now see one project listed, the sample project. Click on the project and check that you can navigate to the Backlog, Wall and Completed pages. Experiment with creating features and stories and verify that you can move them through all their phases.

The project configuration

We don't have a configuration UI at this stage, so to set up a project you need to copy an existing project or build the project structure and create a kanban.properties file by hand:

<kanban home>/<project name>/kanban.properties

Declare the work-item types

The work item types are the categories of work item like features and stories. You declare them like this:

workItemTypes=feature,story 

Configure the work-item types

Then, for each work item type you specify its parent, its phases and the colours to use on the web page:

workItemTypes.feature.parent=root 
workItemTypes.feature.phases=Backlog,Design,Implement,Accept,Complete 
workItemTypes.feature.cardColour=6698FF 
workItemTypes.feature.backgroundColour=C6DEFF 

workItemTypes.story.parent=feature 
workItemTypes.story.phases=Development,Test 
workItemTypes.story.cardColour=ECD672 
workItemTypes.story.backgroundColour=FAF8CC

The "parent" property creates a hierarchy. In this case, stories are subtypes of features and features are the root work item type.

Configure the board phases

Finally you specify which phases should appear on the Wall and Completed boards:

boards.wall=Design,Implement,Development,Test,Accept 
boards.completed=Complete

So in this case the "wall" board contains phases for both features and stories, but the "completed" board only contains features. The "backlog" board only ever contains the top-level work items (i.e. features), and it is hard-coded to list items in the first phase in the sequence (in our example, the Backlog phase).

There are error messages in the stack trace if the project configuration is wrong. Hopefully these are pretty clear.