bomonike

kanban.png

If I’m working with small team or just by myself, I use the Kanban system to stay focused.

I’ve found that the Kanban system helps me focus and collaborate better with others.

And that’s not only because I’ve worked at Toyota, where Kanban was made famous. Use of Kanban enabled the car manufacturer to achieve large efficiency and quality gains in the 1950s and beyond.

What’s Kanban?

Kanban is a japanese word coined in the 1950s by Taiichi Ohno, an industrial engineer at Toyota.

“Kanban is a strategy for optimizing the flow of value through a process that uses a visual, pull-based system.”

Kanban is described as an approach that “pulls” items from upstream rather than having items “pushed” to downstream processes. This video shows how Kanban is used within a physical factory.

Unlike “Scrum”, Kanban does not prescibe “Daily standups” or any kind of team meeting. However, daily reviews provide an opportunity to deal with blocks and observed issues with flow and value produced.

Unlike “Scrum”, there are no set roles in Kanban such as “Product Owner”. Kanban members define what value they are optimizing in their context.

The 5 rules of Kanban:

VIDEO:

  1. Visualize workflow - “Visible” means that the Kanban system uses a card to represent each product (that generates value) traveling through the production line. It’s a just-in-time scheduling system because movement of a card visually signals the need to create that part.

  2. Limit Work-In-Process (WIP)

    The most important practice is explicityly controlling WIP (Work in Process) through limits of how many items are in progress at a time.

  3. Measure and manage flow. The transparency made possible by visible cards enable “lean manufacturing” practioners to measure the basic metrics of flow as a way to highlight areas to focus continuous improvement:

    • Total System WIP (items of Work In Process started but not finished)

    • Throughput count of items getting done (items per day/week)

    • Work Item Age (hours & days between when an item started and the current time)

    • Cycle Time - the amount of elapsed (calendar) time from when an item starts to when it got finished (meet exit criteria). https://kanbanguides.org/html-kanban-guide/#KanbanMeasures

    Weekends and holidays are included. There should be at least one, with no Cycle Time of Zero.

    None are measured per person.

  4. Make process policies explicit

    Each item does not have to be of the same size, but that they be broken into a small enough batch size.

  5. Use models to recognize improvement opportunities

    References:

Trello.com

I and my team uses Trello.com’s free website to use Kanban.

Trello was purchased by Atlanssian, which also makes Jira, a licensed product also used to manage Kanban. See my https://wilsonmar.github.io/jira

Kanban is not suited for a very creative endeavor.

PROTIP: Each Kanban board is best for processing well-known tasks like in a factory. Thus, each Kanban board tyically organizes people with the same skillset.

Kanban is particularly useful for those with multi-disciplinary skills. Workers can pick to work any task from the top of the Current ToDo list any task they have been cleared to do (front-end UI, database, utilities, etc.).

Time is being wasted when team members skip tasks only others can handle. With such boards, it’s crucial to designate the specific member who can handle each task.

Kanban board

The flow of columns from left to right represents common names for the flow of work from ideation to completion.

PROTIP: The methodology and rules here use the Kanban board to minimize live meetings, so is ideal for team members working in different time zones around the world.

Kanban aims focus on the most urgent items at the top of the “Doing” stack.

Doing column

  1. The “Doing” (or “In Progress”) column lists cards (tasks) the team currently “has on its plate”.

    A glance at that column answers “who is working on what now”?

    PROTIP: Trello refreshes its dashboard automatically. So I have an old monitor display the Trello board continuously without going to sleep.

    RULE: Tasks in “Doing” must have a team member assigned (or it’s not really being worked on).

    RULE: Tasks in “Doing” are listed in order of steps within a process flow from producer to customer. The task at the top of the list produces what is needed for tasks below it.

    PROTIP: The name of an item is often what becomes the message of the git commit message for the item into GitHub. Alternately, a Note would contain that message. Such a Note would provide a cross-reference to GitHub.

    RULE: Set a personal limit of how many tasks one person can do at the same time. RULE: The WIP (Work in Progress) Limit is the number of items the whole team can work on at the same time.

    Notes

  2. PROTIP: As tasks are performed, since Notes in active cards are abandoned when done, ideas for improvement in future iterations are added in a separate template board containing items to be copied onto the team’s active Kanban board “ToDo” column for each new project/customer.

    Notes in the Template contain tips and caveats to perform each task. For example: As is common among Agile teams, the team has agreed ahead of time to a common “Definition of Done” (DoD) which defines the conditions for moving an item for another team member to Review/Test. For example:

    • Unit tests passed
    • Code reviewed

    • Functionality documented in necessary user documentation
    • Integrated into a clean build

    • Automated regression tests pass
    • Feature level functional tests passed
    • Functional Regression tests pass
    • Performance Regression tests pass
    • Non-functional requirements met

    • Meets defined market expectations
    • Meets organizational/industry standards (e.g. HIPAA compliance)
    • Meets general security requirements

    • End-to-end integration completed
    • Acceptance criteria met
    • Product Owner acceptance

    Notes in each item in the template board define the sequence (dependencies) of items before and after each task. The template may be a multi-dimensional diagram.

    Trello puts a red dot on items with new Note activity. Since that dot goes away after viewing, an additional reply such as “Noted” or “Agreed” is not necessary.

    Review/Test

  3. When a task from the Doing column is complete, move it to the “Review/Test” column for someone else to perform Quality Control.

    PROTIP: Team members should pick “Review/Test” items before picking the next “To Do” item. This is so all items get to “Done” as soon as possible, without being stuck in progress.

    Part of Quality Control is evaluating the manual documentation or automation. Are they still accurate and efficient? Steps that are error-prone in future iterations should be flagged. Such attention to detail is what the Japanese call Kaisan (Continuous Improvement).

    Next To Do

  4. The Next To Do column contain items which the team agrees it should do when all “Doing” and “Review/Testing” items are completed.

    Kanban is considered a continuous workflow. It’s unlike Scrum’s “time boxed” approach which some claim intentionally adds psychological pressure to worry about how to cram a whole list of items into a fixed time-frame (sprint).

    The culture of Kanban is that team members are not cohersed into accepting estimates as “commitments” that must be kept. This approach encourages open discussion/handling of delays without the shame which encourages lying and poor quality.

    Stuck

  5. If you get stuck working on an item, be weary of wasting time going in circles and getting frustrated.

    It may be better use of time to move on to work the next item. But before you do that, to minimize switching costs, create a note within the blocked item and paste in it the error message output by the app. Define how to recreate the error and what you’ve tried.

    To summon help on the blocked item, add “BLOCKED:” at the beginning of its name. It’s good for others to help you because they may learn something too.

    A key benefit of an Agile mindset is the invention of quick change mechanisms that enable more efficient switching between different types of tasks.

    Take a quick break to clear your head while you see if someone can come to your aid.

    It’s usually preferrable to fix issues immediately rather than fixing problems later. It’s usually more expensive to “kick the can down the road”. Quality costs less.

    If you cannot work on an item, move it back to the top of the “To Do” list because you are not working on it.

    Backlog

  6. As you’re working on an item and inspiration strikes, create a card to the bottom of the “Backlog” column.

    Some companies celebrate their favorite improvement of the year.

    Backlog items are in the left-most column, as in “from left field” in American Baseball slang, to refer to something that is unexpected, unusual, or surprising.

    Backlong items are also called unplanned because they have not been accepted as an item that should be worked on.

    PROTIP: Making acceptance a conscious step is important to ensure that the risks and costs be properly considered. That includes the possible benefit of NOT doing the item if that makes better sense.

    Movement of the item to the next column should usually occur after there is agreement about where the backlong item fits within the planned Product Roadmap/Timeline, as in which other tasks take precedent.

    During deliberations, some items may be broken out into separate items. Other items may be combined with another item.

    Teams have a designated recurring time when team members deliberate Backlog items together. Before that meeting, each team member add notes and reply to notes. “+1” is added to designate acceptance of an item as stated. That would mute disscussion on the item, which enable “air time” to be on where it’s most productive (such as on socializing).

    With that said, special meetings may be necessary to resolve emergencies.

    Closure

  7. PROTIP: Unless otherwise agreed upon, only the person who created the item be the one to move to Done. This is to prevent unwarrented closures, which drains initiative. If allowed, it can be a “power move” to bully others.

    PROTIP: Marking items as done prematurely is a form of lying. Closing an item can be used to “sweep things under the carpet” and create invisible “Technical Debt”.

  8. Add “TEAM:” to the front of item names items which the entire team should review together.

    Pre-scheduled demo meetings would be an items with a date in the “Review/Test” column.

    Time Stamps

  9. Optionally, time stamps the system automatically tracks enable Notes in the template to be updated with actual times of task completed during previous iterations, presented as a histogram if there are enough repeats. Several histograms can be presented for each level of difficulty.

  10. Each team member should look at the board occassionally to pick up items unassigned.

    If you see an item marked “BLOCKED”, see if you can help.

Kanban Stand-ups

We hold daily “stand-ups” to encourage collaboration, not for a military role call.

Stand-ups are a time for the whole team to decide on items such as blocks.

Stand-ups are NOT a time to repeat (confirm) what is already written.

  1. Look at all items before each stand-up meeting.

Visualize the workflow: Divide your kanban board into columns that represent the different stages of your workflow, such as “ToDo”, “In Progress”, and “Done”. This allows you to visualize the status of each task at a glance.1

Limit on the number of items being worked on.

Display continuosly

To continuously refresh any web page, either install browser extension “Auto Refresh & Page Monitor” for Google Chrome or code JavaScript.

  1. The extension allows you to automatically refresh web pages at specified time intervals, such as every 5 seconds, 10 minutes, etc.

  2. Use the tag in the HTML of the web page to automatically refresh it. For example, adding will refresh the page every 10 seconds. Use JavaScript’s setInterval() function to continuously reload the page. For example, to reload the page every 2 seconds (2000 milliseconds):

javascript
function autoRefresh() {
  window.location = window.location.href;
}
setInterval('autoRefresh()', 2000);

Leverage the <meta> tag in the HTML2, or implement a JavaScript function that continuously reloads the page.

To keep a laptop continuously displayed on an external monitor even when the laptop lid is closed, you can follow these steps:

Go to the Power Options in the Control Panel or Windows Settings. 1

3 4 Click on “Choose what closing the lid does” and select “Do nothing” for both when on battery power and when plugged in. 1 3 4 This will prevent the laptop from going to sleep or turning off the display when the lid is closed. 1

Additionally, you can:

Disable the automatic sleep/hibernate settings in the Power Options to keep the laptop running continuously. 4
Use a third-party software like Wakeful to prevent the laptop from going to sleep. 4

The key is to configure the power settings so that closing the laptop lid does not trigger the laptop to sleep, hibernate or turn off the display. This will allow the laptop to continue running and displaying content on the external monitor even with the lid closed. 1 3 4 Just remember that keeping the laptop running continuously will drain the battery faster, so it’s best to keep it plugged into a power source. 4 1 https://www.youtube.com/watch?v=iBp8B7Vicvs[3] https://www.youtube.com/watch?v=etH24opBZwo[4] https://v2cloud.com/tutorials/how-to-keep-computer-running-all-the-time

References

https://www.kanban.help/ by Marco Re

https://www.linkedin.com/advice/0/how-do-you-design-kanban-board-complex-uncertain-environment

Cumulative Flow Diagram

SLE (Service Level Expectation) is a probabilistic forecast for your process – with a range and a probability.

Cycle Time Scatterplot to identify possible outlyers Cycle Time Histogram Throughput Run Chart

Little’s Law throughput form of items of similar size.

Monte Carlo simulation is a statistical used to determine when a given number of items in a backlog might possibly be completed.

There is no equivalent of a SCRUM Burndown chart in flow. Cost of Delay is not tracked in flow systems.