{"id":7112,"date":"2018-01-18T15:43:30","date_gmt":"2018-01-18T17:43:30","guid":{"rendered":"http:\/\/blog.plataformatec.com.br\/?p=7112"},"modified":"2018-01-18T15:43:30","modified_gmt":"2018-01-18T17:43:30","slug":"wip-limit-a-further-study","status":"publish","type":"post","link":"https:\/\/blog.plataformatec.com.br\/2018\/01\/wip-limit-a-further-study\/","title":{"rendered":"WIP Limit – A further study"},"content":{"rendered":"
One year ago I wrote a <\/span>post talking about WIP limit and its importance<\/span><\/a>. At the time, it was a case study and an introduction to the subject. However, after working on more projects and meeting different people, I saw that, maybe, you don’t need it.<\/span><\/p>\n Introduction<\/b><\/p>\n When we use WIP limit, we limit the number of concurrent tasks. It could be a limit to each column of a Kanban Board; it could be a limit to the whole system; or even a limit to a set of steps of the process.<\/span><\/p>\n The idea behind limiting the work in progress is to work side-by-side with <\/span>Little’s Law<\/span><\/a> and try to improve the flow of the system, diminishing the lead time (LT) of a work item. And that works like a charm for machines. For software development? The relationship between WIP, LT and throughput is not that straightforward.<\/span><\/p>\n People are different<\/b><\/p>\n When we have a chain of machines linked together, in which the output from one feeds the input of other, everything is easier to predict. Now, imagine a situation in which:<\/span><\/p>\n Things start to get tricky, right?<\/span><\/p>\n WIP Saturation Chart<\/b><\/p>\n From my experience, some readings and even the way I work, I saw that different people work best with different workloads. I believe that a chart of WIP by the throughput of a person follow something like this:<\/span><\/p>\n <\/p>\n This chart was taken from <\/span>https:\/\/www.infoq.com\/articles\/how-kanban-works<\/span><\/a>.<\/span><\/p>\n Some people work best with more t<\/span>han one task at a time. For different reasons. They might get unmotivated with few responsibilities, or it might be easy for them to rapidly change focus between tasks, for example. On the other hand, other people have a really difficult time changing focus and handling many tasks at once.<\/p>\n Other than depending on the person, it also depends on the project: it might involve third-parties that regularly block their work, it might have a testing process that takes weeks or months to finish, etc.<\/span><\/p>\n So, how can we come up with a single number that will magically fit all those curves under the same process? You can’t. But that doesn’t mean you shouldn’t.<\/span><\/p>\n So what? Should I just go crazy and forget limits?<\/b><\/p>\n As I said, it is just impossible to get a number that limits the work of everyone in an optimal manner. But that doesn’t mean you shouldn’t use one. I see, until the time of this post, two options for two different contexts:<\/span><\/p>\n Conclusion<\/b><\/p>\n WIP limit works. It will improve your process. But it is not a silver-bullet (I feel like a parrot repeating this). Look at your context (people + project) and use whatever delivers a better outcome.<\/span><\/p>\n What do you think? Do you believe in WIP Limits or not? Leave your comments below!<\/span><\/p>\n <\/p>\n One year ago I wrote a post talking about WIP limit and its importance. At the time, it was a case study and an introduction to the subject. However, after working on more projects and meeting different people, I saw that, maybe, you don’t need it. Introduction When we use WIP limit, we limit the … \u00bb<\/a><\/p>\n","protected":false},"author":47,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[1],"tags":[123,262,121,74],"aioseo_notices":[],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/blog.plataformatec.com.br\/wp-json\/wp\/v2\/posts\/7112"}],"collection":[{"href":"https:\/\/blog.plataformatec.com.br\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.plataformatec.com.br\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.plataformatec.com.br\/wp-json\/wp\/v2\/users\/47"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.plataformatec.com.br\/wp-json\/wp\/v2\/comments?post=7112"}],"version-history":[{"count":6,"href":"https:\/\/blog.plataformatec.com.br\/wp-json\/wp\/v2\/posts\/7112\/revisions"}],"predecessor-version":[{"id":7120,"href":"https:\/\/blog.plataformatec.com.br\/wp-json\/wp\/v2\/posts\/7112\/revisions\/7120"}],"wp:attachment":[{"href":"https:\/\/blog.plataformatec.com.br\/wp-json\/wp\/v2\/media?parent=7112"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.plataformatec.com.br\/wp-json\/wp\/v2\/categories?post=7112"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.plataformatec.com.br\/wp-json\/wp\/v2\/tags?post=7112"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}\n
\n