Saturday, March 20, 2010

Learning Jidoka from a production line

When you adopt an agile methodology, you first try to apply its recommendations and often you will prefer to make your own dish with these good practices.
After a few weeks of practice, you won't get the expected result that the agile guru has predicated you should. Most of the time, you will be told to apply the methodology you choose without changing a thing.

The Shu Ha Ri way coming from Aikido is often the concept which is proposed for learning an agile method:
  • Shu: first phase, concentrate on all the recommendations and practices,
  • Ha: second step, now you practice the methodology correctly and start to understand the underlying principles,
  • Ri: you have sufficient experience to make your own decision and adapt the methodology to your specific context.
You will also learn, the agile world has not suddenly erupted from the clever minds which produced its manifesto. Instead, these efficient practices have evolved over a century. Toyoda, Taiichi Ōno, Edwards Deming will be the names you will find on your trip back to further discover the root to agile.
Many of these good practices have been promoted in the Toyota company and finally studied and summarised by American researchers in a set of principles named the Toyota Production System (TPS) and the more generic Lean manufacturing.

Among these principles the Jidoka focus on developing the quality in the machine (working station), making the problem visible and separates workers from machines through mechanisms that detect production abnormalities. Two of these principles are Andon and In station quality.
  • Andon: notify management, maintenance system where the centrepiece is a signboard incorporating signal lights to indicate which workstation has the problem.
  • In Station quality: the production system must evaluate the quality of its own result.
Now watch the following video and record the measurement, quality system, colored lights and more.

Like me, you have probably been astonished to see where the USB sticks are produced. Now, step back and understand the quality tools and principles which are used here on a production line.

A production system differs from a product one, regarding the number of times, the same result is produced. Software development as a product development, produces only one time the same package and the same functionality. Consequently, Jidoka will be implemented differently with defect detection of code compilation, of functionnal tests, of feature integration, etc. Because each new product feature make the overall result different, at least the non-regression detection is the primary focus, together with a maintable build system. Also, because each part of the production must have its built in quality, a systematic unit test creation with or prior to coding the new function, is a good pratice too.

If you have seen something else in the video, that is around Toyota culture, please tell me and draw the analogy with your agile world.

Sources :
Agilemanifesto : Principles behind the Agile Manifesto
Wikipedia : Shuhari
Wikipedia : Autonomation
Wikipedia: Toyota Production System
Wikipedia : Toyoda family tree
Wikipedia : Taiichi Ohno
Wikipedia : W. Edwards Deming
Wikipedia : Toyota Production System
Wikipedia : Andon (manufacturing)
Engadget : See USB flash drives manufactured in this shocking behind-the-scenes video
Infoq : InfoQ: Second Generation Lean Product Development: From Cargo Cult to Science
Informit: The History of Lean Software Development

No comments :