Confusion between Lead and Cycle Time flow metrics

This issue was posted on github. Once I got no answer, I decided to post here once I have decided myself to use Kanboard. It is an amazing Kanban tool.

I have been tested Kanban board and I am planning to apply it in my organization. It is really a very amazing tool! Congrats to everyone involved in the maintenance and evolution of the app!

Below is just some point of view and not a criticism. I hope I’m not misunderstood.

So, after some testing I realized that KanbanBoard considers both “Lead Time” and “Cycle Time” as metrics to generate some graphs, but I believe that there is a bit misunderstanding of the use of theses concepts.

The discussion regarding these two concepts is very vast and controversial in the Agile and Lean Manufacturing communities. In some points of view they can even be considered as the same concepts.

Sometime is a business choice. If you are a client and you are using a service, for instance, you can consider only the “Lead Time”, the “Cycle Time”, on the other hand, would be only for the management (of the flow) that aims to avoid waste and bottlenecks between each step or workstations of the flow.

Actual behaviour

Backing to Kanban Board

The first question is:

Is there any way that we, as user, can set up the specific column (the step of our Kanban board) that the work starts running? It would be this time that I believe that we should consider as “cycle time”. When we move a card to this column the “Start now” button could be trigged.

What are the formal definitions of them in the Kanban Board?

The lead time is the duration between the task creation and the completion.
The cycle time is the duration between the start date and the completion.

In spite of the “Lead time”, I do agree with this definition. But, regarding the Cycle Time, what does happen if I define a column (in my board) as “Blocked” and every piece of work that is moved as blocked can wait there for several days? If you compute that time as part of Cycle Time is wrong, because the time that a piece of work is blocked does not add any value, so this time is not part of Cycle Time, it belongs to Lead Time.

Expected behaviour

So, I do believe that the best approach to deal with theses two metrics is define which column (or step of the flow) is the one where the process starts and which column the process ends. In addition, there should be a way to define when a “trigger” is fired. Theses triggers would represent the columns of the Kanban that the piece of work waits. If it waits, no one should compute this time as Cycle Time, should compute as part of Lead Time.

Is there any way to do it?

Another question:

In my personal scenario in my organization there is no need to differentiate both Lead and Cycle Time.

So, is there any way to show only Lead Time in the analytics page? That is, disable the Cycle Time concept in the application?

Thank you very much!

Steps to reproduce

Access analytics pages of any card.

Configuration

  • Application version: 1.2.14
  • PHP version: 7.4.5
  • PHP SAPI: fpm-fcgi
  • HTTP Client: cURL
  • OS version: Linux 4.15.0-96-generic
  • Database driver: mysql
  • Database version: 5.7.29-0ubuntu0.18.04.1
  • Browser: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.122 Safari/537.36

URL on github: