Bicycle traffic barrier used to slow down cyclists circumvented by taking a detour on the lawn, thereby showing a literal path of least resistance.

Goldratt describes, in the book The Goal, how a failing factory is transformed into a success. One of the steps, as the purpose of the story is to describe Theory Of Constraints, is to find the bottlenecks of the production in the factory. When this is done, they try to find ways to grow the capacity of the bottlenecks.

They go to the quality assurance team that tests finished products. There they find a lot of things that passed through a bottleneck, but got discarded. since they had shortages in quality. By moving parts of the QA before the bottleneck, they save the limiting station from working on things that are already broken.

What is the equivalent to this in software?

I do TDD and BDD! you might say. If we assume that the developers are the bottleneck I would say that it is rather like making sure that the products are not broken during or after they are at the bottleneck.

My suggestion is that we see user research and design sprints as our way to make sure that we do not have products that are already broken taking up valuable time at the bottlenecks. Every feature, that is not tested against a real user, risk being waste in process instead of work in progress already when it reaches the development team.

The best way to increase the capacity of a bottleneck is to find what it should not do. By doing design sprints and user research you can try a lot of ideas that do not have to go though the full development cycle. (It has other advantages too.) By investing in usability and design a lot of redo and undo can be saved.

Make sure that all tasks that get turned into code has first been checked that they actually should be implemented. That is how user research limits waste in process.

Tags

Comment on the blog!

Create a comment by emailing me. I will then add the comment to the post.

Open an email to start writing.