{"id":941,"date":"2022-01-29T21:50:00","date_gmt":"2022-01-29T21:50:00","guid":{"rendered":"https:\/\/www.danieledavi.com\/blog\/?p=941"},"modified":"2022-03-07T22:42:44","modified_gmt":"2022-03-07T22:42:44","slug":"kanban-the-garden-the-restaurant-and-the-dump","status":"publish","type":"post","link":"https:\/\/www.danieledavi.com\/blog\/2022\/01\/kanban-the-garden-the-restaurant-and-the-dump\/","title":{"rendered":"Kanban &#8211; the garden, the restaurant and the dump"},"content":{"rendered":"\n<p class=\"has-text-align-justify\">In this article I am going to describe some conditions under which a team adopting Kanban can be set up for success or failure.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-style-default\"><img decoding=\"async\" src=\"https:\/\/miro.medium.com\/max\/1400\/1*z_Pgzlx-v6e8bQHQzhnOuw.png\" alt=\"\"\/><\/figure>\n\n\n\n<p class=\"has-text-align-justify\">Historically used in the manufacturing industry, Kanban has been incorporated in the successful Toyota Production System (<a href=\"https:\/\/global.toyota\/en\/company\/vision-and-philosophy\/production-system\/\" target=\"_blank\" rel=\"noreferrer noopener\">TPS<\/a>). Kanban is one of the most known Agile frameworks and often over-simplified with the adoption of a Kanban board.In its minimal version, the board has 3 columns (to do, in progress and done) and each task is written in a post that would travel left to right across the board. As soon as someone is ready to take on a task, the post is moved under the &#8220;in progress&#8221; column.\u00a0\u00a0There is a limit on the number of items that can be &#8220;in progress&#8221; at any given time.<br \/>Given the above oversimplified refresh on Kanban definitions, here are a few things you need to consider before adopting it in Software Development.\u00a0\u00a0<\/p>\n\n\n\n<p class=\"has-text-align-justify\">Kanban works for tasks without unknowns.<br \/>The team member who will pick the kanban card (or token) knows what to do from the beginning to the end.\u00a0Whilst the token owner can of course ask questions, look for clarity, involve others, use the common knowledge of the team\/organization, it is recommended that they pick cards for tasks already known by them. By &#8220;already known&#8221; I mean something that they have\u00a0experience in completing it fully.\u00a0Something they master.\u00a0<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">The Pizza Restaurant<\/h3>\n\n\n\n<p class=\"has-text-align-justify\">The pizza chef doesn&#8217;t need to ask around how to\u00a0make a pizza. They\u00a0master all aspects from pre-production to delivery, from buying the ingredients to using the most suitable\u00a0container for transportation, including of course all intermediate stages of working the\u00a0dough, choosing and matching the add-ons, cooking time, controlling the temperature, packaging&#8230; You can have a team of pizza chefs in a large kitchen even sharing the same wood-fireplace, same tools and space, orders pipeline, clientele. <br \/>Each and every\u00a0pizza-chef takes care of their Kanban-pizza autonomously.\u00a0<br \/>You may have seen places where someone prepares the dough,\u00a0someone else the\u00a0sauce or other ingredients,\u00a0someone takes\u00a0care of the oven and someone else of\u00a0packaging and delivery. If they share the responsibility of different preparation steps, still the sequence is performed without hesitations and the agreement is explicit and clear throughout the process. There is also the implicit agreement that if something goes wrong in the pipeline, everyone has the full knowledge to provide support and manage to complete the\u00a0order without under-cooking or over-cooking\u00a0and most importantly without burning the place or having a burn-out.<br \/>In many kitchens (not only pizza places) the orders are written down on cards that are aligned in a way similar to a Kanban board and they are quickly processed.\u00a0<br \/>The chef and all the kitchen knows what to do. Unclarity in the order would increase completion time, disrupt flow, reduce\u00a0rhythm\u00a0and performance. Anything that has gone wrong would be discussed in the kitchen briefing the morning after. Whilst the team is capable of doing more, they do not commit to preparing something that is not in the menu,\u00a0or to something they do not master.<br \/>Yes, they do it on request whenever the circumstances are favourable but they do not commit to complete any capricious or extravagant request from the customer.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Software production and delivery<\/h3>\n\n\n\n<p class=\"has-text-align-justify\">A strong, ruthless, high-performing DevOps team with highly competent and trained team members could use Kanban for known repeatable sequences, pipeline steps, configurations. Unfortunately a good percentage of DevSecOps issues do not have a clear, immediate solution because they may require troubleshooting, and deeper investigations. Nevertheless, the capacity to react and keep the system running should be planned, configured, tested many many times and activated on demand with no hesitations.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Can a person with partial knowledge take or start a Kanban card?<\/h3>\n\n\n\n<p>If the Kanban board has different statuses that reflect a breakdown for the activities in progress, it is possible that a team member takes a card even without being able to complete the full definition of done. <br \/>There are 2 main things to consider though:<\/p>\n\n\n\n<p class=\"has-text-align-justify\">1. If a team member takes a card that they cannot complete or progress to the next stage autonomously they\u00a0will need to ask for support\u00a0from someone else.And when this happens they are disrupting\u00a0someone else&#8217;s work and interrupting the journey of the card. Tasks can have dependency on each other. That task may be an enabler for subsequent\u00a0activity. The complexity of the process would increase according to the number of cards, statues, team members, interruptions. Kanban is meant to be a simple and tidy production system, theoretically one of the\u00a0most\u00a0straight-forward agile frameworks.\u00a0<\/p>\n\n\n\n<p class=\"has-text-align-justify\">2. In a Kanban board where the &#8220;In Progress&#8221; status is broken\u00a0down into a sequence of steps with different responsible people, it is crucial to make sure that there is always someone you can pass the torch to.\u00a0<br \/>Assuring so depends on many factors\u00a0such as, for instance, the number of cards, skillset of the team members, speed of execution, capacity to remove bottlenecks and many more.If you do not control and limit the\u00a0flow, all the &#8220;in progress&#8221; work (i.e. Waste in LEAN) piles up and it all turns into a dump.That&#8217;s why in a decent Kanban implementation you stick to both the overall limit and per-column limits.\u00a0These limits are meant to be respected because each team\/organization has limited resources and limited tokens.\u00a0Not setting or respecting these limits means you are not doing Kanban and you are creating all the conditions\u00a0for failure.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">The Garden<\/h3>\n\n\n\n<p class=\"has-text-align-justify\">If you go to the East Gardens of the Imperial Palace in Tokyo, they issue you with a token (Kanban) on entry.\u00a0You keep it in your hand till the end of your visit.\u00a0You don&#8217;t pass your token to others after half a visit.\u00a0You don&#8217;t keep the token in your pocket just because you may come back the day after.<br \/>You give it back at the exit when you are done.\u00a0Also, once the tokens run out they stop letting people in.<br \/>Limiting the number of visits in progress makes the experience more enjoyable, it ensures that security measures can be taken easily, everyone has plenty of space, the flow is constant and sustainable, all under control and the garden is never overloaded.<\/p>\n\n\n\n<p class=\"has-text-align-justify\">Again, to work smoothly everyone needs to know what to do with the torch, where to go, who is the next one ready to receive it and run at the same speed.\u00a0The agreement among all interacting team\u00a0members needs to be in place, clear and explicit. That&#8217;s what Kanban is for. Very disciplined, knowledgeable, relying teams with known tasks to be completed.<br \/><br \/>If your people work better when collaborating as a team, there are other Agile frameworks\u00a0that support best pair programming, cross collaboration, and team work.\u00a0XP and Scrum are among these.<br \/>If you need to discuss the card, understand more about the UX, what the PO wants, how the architect thinks to get rid of legacy solutions, go around looking for the right set of people that can decide&#8230; then use a framework where cards (or backlog items) can be continuously discussed, clarified, estimated, solved together as team.\u00a0\u00a0XP and Scrum are among these frameworks.\u00a0 \u00a0<\/p>\n\n\n\n<p class=\"has-text-align-justify\">Switching among different frameworks without the correct\u00a0preparation can be fatal.<br \/>The team will need to be trained and coached not only for a smooth shift but for a solid start that will help them progress in their own framework implementation. The organization will need to know the different ways of working with the team, how to interact, how output will differ, the frequency of productions &amp; delivery\u00a0cycles and so on. If tools and policies need to be amended or reconfigured, that needs to happen and be clear to everyone.\u00a0The team will commit to new agreements and start new practices.\u00a0<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">The Dump<\/h3>\n\n\n\n<p class=\"has-text-align-justify\">I have seen organizations mixing up frameworks according to managers&#8217; agenda or delivery dates promised to customers without even discussing them with the team. This type of announcement\u00a0may\u00a0sound something\u00a0like &#8220;Great demo! Starting from today, for the next 2 weeks we will work in Kanban mode.&#8221;\u00a0<br \/>As a developer, tester, business analyst, product owner, software contributor or agile coach (scrum master) it is important to recognise and stop the danger of similar shocking disruptions. <br \/>&#8220;Kanban mode&#8221; or similar improvised ideas are simply garbage, good for a dump and you can smell there is\u00a0something else going\u00a0on.\u00a0Probably office politic, someone&#8217;s agenda or self-sabotaging intentions. <br \/>Reject it as a team and toss it as soon as you can.<\/p>\n\n\n\n<p class=\"has-text-align-justify\">Imagine in a pizzeria the manager orders all pizza chefs, &#8220;from today and next two weeks we will work in cocktail bar mode&#8221; and expects this to be clear for everyone.<br \/><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Conclusions<\/h3>\n\n\n\n<p class=\"has-text-align-justify\">Kanban is a good, simple framework that requires highly skilled autonomous\u00a0independent team members. If you fear isolation or the team breaking apart, get more chances to take a pizza together and a good agile coach that grows the team, builds up their strength, sets them for success.<br \/>Breaking down the In-Progress activities into different statuses with different responsible people is tricky, but it can be done under the conditions explained above:agreement, seamless\u00a0flow, no capacity or knowledge bottleneck, everyone knows from whom they receive the torch, what to do when they hold the torch, who should receive it next, and the full torch journey just in case.<\/p>\n\n\n\n<p class=\"has-text-align-justify\">If to implement Kanban you need to complicate things or introduce a workaround, you may need to review your decision and consider opting for another Agile framework.<br \/>Choosing the right\u00a0framework is important and it is an expensive decision. Don&#8217;t do it often. Prepare the organization for it with training and coaching sessions.<\/p>\n\n\n\n<p>To fail using Kanban is very\u00a0easy. An improvised or\u00a0non\u00a0disciplined approach to Kanban can easily transform a\u00a0queue of\u00a0ordered\u00a0tasks into a nasty, confusing, overloaded dump.<\/p>\n\n\n\n<p>To succeed using Kanban, you need to keep the same discipline, simple and elegant solution used in the East Gardens of the Imperial Palace in Tokyo: one token per visitor; visitor keeps the token from beginning till the end of the visit; limited tokens available.<\/p>\n\n\n\n<p class=\"has-text-align-center\">* * *<\/p>\n\n\n\n<p>I write about organizational patterns, transformational leadership, healthy businesses, high-performing teams, future of workplace, culture, mindset, biases and&nbsp;more. My focus is in leading, training, and coaching teams and organizations in improving their agile adoption. Articles are the result of my ideas, studies, reading, research, courses, and learning.&nbsp;The postings on this site and any social profile are my own and do not represent or relate to the postings, strategies, opinions, events, situations of any current or former employer.<\/p>\n\n\n\n<p>This article has been published for the first time on\u00a0<a href=\"https:\/\/www.danieledavi.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">danieledavi.com<\/a>\u00a0by the author Daniele Davi\u2019.<br \/>\u00a9 Daniele Davi\u2019, 2022. No part of this article or the materials available through this website may be\u00a0copied, photocopied, reproduced, translated, distributed, transmitted, displayed, published, broadcast or reduced to any electronic medium, human or machine-readable form, in whole or in part, without prior written consent of the author, Daniele Davi\u2019.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this article I am going to describe some conditions under which a team adopting Kanban can be set up for success or failure. Historically used in the manufacturing industry, Kanban has been incorporated in the successful Toyota Production System (TPS). Kanban is one of the most known Agile frameworks and often over-simplified with the [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[263,325,334],"tags":[252,328,123,338,127,126],"aioseo_notices":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p90hsv-fb","jetpack-related-posts":[{"id":723,"url":"https:\/\/www.danieledavi.com\/blog\/2021\/02\/simple-agile-metrics\/","url_meta":{"origin":941,"position":0},"title":"Simple Agile Metrics","author":"Daniele Dav\u00ec","date":"February 23, 2021","format":false,"excerpt":"Once your team starts work, the most recurring question your stakeholders ask is likely to be \u201cWhen will it be done?\u201dAgile and its frameworks do not strictly prescribe any specific set of metrics. Values, techniques, practices and definitions can help organizations navigate different strategies and identify the best approach for\u2026","rel":"","context":"In &quot;Agile&quot;","block_context":{"text":"Agile","link":"https:\/\/www.danieledavi.com\/blog\/category\/agile-2\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":819,"url":"https:\/\/www.danieledavi.com\/blog\/2021\/04\/overcoming-organisational-inertia\/","url_meta":{"origin":941,"position":1},"title":"Overcoming organisational inertia","author":"Daniele Dav\u00ec","date":"April 11, 2021","format":false,"excerpt":"The speed and success of any team is determined mainly by the surrounding environment and overall working conditions. Supporting teams in maximising the flow is not easy at all mostly because it requires the full organization to embrace cultural changes.","rel":"","context":"In &quot;Business&quot;","block_context":{"text":"Business","link":"https:\/\/www.danieledavi.com\/blog\/category\/business\/"},"img":{"alt_text":"Bullet travelling in air","src":"https:\/\/i0.wp.com\/www.danieledavi.com\/blog\/wp-content\/uploads\/2021\/04\/f-bullet-shocka.jpg?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/www.danieledavi.com\/blog\/wp-content\/uploads\/2021\/04\/f-bullet-shocka.jpg?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/www.danieledavi.com\/blog\/wp-content\/uploads\/2021\/04\/f-bullet-shocka.jpg?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/www.danieledavi.com\/blog\/wp-content\/uploads\/2021\/04\/f-bullet-shocka.jpg?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/www.danieledavi.com\/blog\/wp-content\/uploads\/2021\/04\/f-bullet-shocka.jpg?resize=1050%2C600&ssl=1 3x"},"classes":[]},{"id":638,"url":"https:\/\/www.danieledavi.com\/blog\/2020\/12\/why-sales-should-be-agile\/","url_meta":{"origin":941,"position":2},"title":"Why sales should be agile?","author":"Daniele Dav\u00ec","date":"December 8, 2020","format":"quote","excerpt":"\"Firms today experience a much higher velocity of business change.Market opportunities appear or dissolve in months or weeks instead of years.\"Diego Lo Giudice and Dave West, Forrester","rel":"","context":"In &quot;Agile&quot;","block_context":{"text":"Agile","link":"https:\/\/www.danieledavi.com\/blog\/category\/agile-2\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":946,"url":"https:\/\/www.danieledavi.com\/blog\/2022\/03\/does-agile-work-and-who-should-answer-the-question\/","url_meta":{"origin":941,"position":3},"title":"Does Agile work? And who should answer the question?","author":"Daniele Dav\u00ec","date":"March 29, 2022","format":false,"excerpt":"Before revealing the answer to these million dollar questions, in this article I will try to clean up some misconceptions and cover some basis on the role of an Agile coach (Scrum Master). As explained by Lyssa Adkins (co-author of the Agile coaching competency framework) there is no hierarchy or\u2026","rel":"","context":"In &quot;Agile&quot;","block_context":{"text":"Agile","link":"https:\/\/www.danieledavi.com\/blog\/category\/agile-2\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":951,"url":"https:\/\/www.danieledavi.com\/blog\/2022\/04\/agile-doesnt-work\/","url_meta":{"origin":941,"position":4},"title":"Agile doesn&#8217;t work","author":"Daniele Dav\u00ec","date":"April 23, 2022","format":false,"excerpt":"Chances are that you heard any of these claims or similar at some point of your career especially if you work in IT and Software Development:- \"We used Agile in a previous project and it wasn't good\"- \"I have worked in Agile before and it didn't work\"- \"Agile doesn't work\u2026","rel":"","context":"In &quot;Agile&quot;","block_context":{"text":"Agile","link":"https:\/\/www.danieledavi.com\/blog\/category\/agile-2\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":791,"url":"https:\/\/www.danieledavi.com\/blog\/2021\/03\/changes-are-welcome\/","url_meta":{"origin":941,"position":5},"title":"Changes are Welcome","author":"Daniele Dav\u00ec","date":"March 10, 2021","format":false,"excerpt":"There are different levels of understanding\u00a0Agile.The first one is where you care about rules. You take every best practice, guide, book, training suggestion and you make a strict process out of context and without interpreting the reality. That's not Agile. That's you using Agile to cover your need of implementing\u2026","rel":"","context":"In &quot;Agile&quot;","block_context":{"text":"Agile","link":"https:\/\/www.danieledavi.com\/blog\/category\/agile-2\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"amp_validity":null,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.danieledavi.com\/blog\/wp-json\/wp\/v2\/posts\/941"}],"collection":[{"href":"https:\/\/www.danieledavi.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.danieledavi.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.danieledavi.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.danieledavi.com\/blog\/wp-json\/wp\/v2\/comments?post=941"}],"version-history":[{"count":2,"href":"https:\/\/www.danieledavi.com\/blog\/wp-json\/wp\/v2\/posts\/941\/revisions"}],"predecessor-version":[{"id":943,"href":"https:\/\/www.danieledavi.com\/blog\/wp-json\/wp\/v2\/posts\/941\/revisions\/943"}],"wp:attachment":[{"href":"https:\/\/www.danieledavi.com\/blog\/wp-json\/wp\/v2\/media?parent=941"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.danieledavi.com\/blog\/wp-json\/wp\/v2\/categories?post=941"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.danieledavi.com\/blog\/wp-json\/wp\/v2\/tags?post=941"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}