Volume 10 Number 1 • 1st Quarter 2009 Feature Article


Lean Software Production

Lean production will put your company into the most successful configuration for riding out the current economic downturn. Prepare your people and organisation for robust business growth derived from increased capability and responsiveness in the coming upturn.

What is Lean Production?

Lean production is an exciting advance on industrial mass production methods, where products can be economically delivered on a mass scale, but can also be variably tailored or customised to individual customer needs.

Lean production methods originated in Japan and have grown in the automotive industry with the Toyota Motor Corporation showing the way. A detailed background to this is Jeffrey Liker’s book, “The Toyota Way, 14 Management Principles from the World’s Greatest Manufacturer”.

Lean is not necessarily intuitive. It takes time and coaching to understand why it works well when practised with diligence and insight. 

Rather than cut costs to improve the productive use of assets, Lean will eliminate waste in the production process. This change of emphasis is the difference between cutting off a person’s leg to reduce their weight or using liposuction to remove excess fat from their belly.

Companies so often, through lack of Lean insight, hamper their own chances of success by cutting jobs, rather than true waste. This weakens them in the hard times and leaves them injured, dispirited and incapable of gaining advantage in good times.

Sample Lean Principles

To illustrate some Lean principles, 4 sample principles of Lean in the context of software production are illustrated.

Hear the Voice of the Customer

All businesses and non-profit organisations would do well to start with an in-depth understanding of what their customers want. Products and services need to be identified, and swiftly delivered to add value. 

It is unfortunate that in reality, an improper understanding of needs may be the starting point, and a plethora of tangential issues may be the process, before customer expectations on an often late delivery are disappointed. In IT, this can be particularly true, especially where technology considerations and discussions often overshadow rather than support customer needs.

 In testing, discussions often centre on which automation tool the customer requires, whereas their need is to have  the correct tests done in large numbers, quickly and accurately at low cost.

Customers, as well as suppliers, would do well to establish the customer’s essential needs, where details of the solution should always be vetted against the essential needs, rather than becoming and remaining an ideal in themselves.

 Encourage Flow

Stop-start, is the opposite of flow. In IT particularly, stop-start is a common, silent villain, entertained at the expense of even workflows, productivity and a stress-free working environment. “We can’t design because we are waiting for specifications!” and “We can’t test, because coding has not been completed!” are familiar cries on the IT project. These cries result from inadequate time being budgeted for each stage to be done properly and these in turn can be related to batch sizes of work that are too large and too complex to be effectively handled in a given time.

More time to complete a work stream, better planning and partitioning of work will assist flow, and eliminate time spent waiting, or rework when a large batch is discovered to contain high numbers of the same defect.  

Eliminate Waste and Understand Problems Deeply by Eliminating Their Root Causes

Toyota identifies at least 7 types of waste. Defects, which is one of these waste types, is now discussed. Defects are well known in software projects and in my years of experience, I have witnessed the following antics related to defects (i.e. bugs):

Lean suggests that one should not build a defects database to track defects but rather that one should fix defects immediately and put in the extra work to ensure they do not occur again. The result of following Lean thinking will therefore be to initially cope with a lot of stop-starts as errors are made, the resulting defects fixed and prevented, and then later to be (almost) defect-free and to have a very small number of open defects at any time. Will project managers be brave enough to push through the initial teething pains and continue with Lean? This will not happen easily unless they are coached through it and experience it for themselves. This has been achieved on some projects, even complex projects.  Therefore, defects are a type of waste and should not be stored, prioritised or otherwise used to sidetrack us as we enter Lean.

However, what of testing and inspection? Are they also a type of waste? Surprisingly, the answer is yes! You may have heard that you cannot inspect or test quality into a product. This is true, as after-the-fact tests and inspections can only be used to identify defects in the products (i.e. fail them) and then redirect them (for wasteful rework).

Does that mean that we ought to stop testing and inspections in IT? No! It means that testing and inspecting need to be incorporated as a natural part of the build process. This is the origin and popularity of “Test Driven Development”, popularised by Kent Beck, in practices and a book of the same name.

Similar principles can be used for test-driven design and test driven specification.  One test that should always be included is, “Does this answer the voice of the customer?”

Eliminating waste is often about not wasting time. Waiting for inputs before being able to continue one’s work adds no extra value to the customer. Reworking something to correct it adds no more value (and typically less value) than getting it right in the first place.

In Lean production, the elimination of waste, especially ‘waste of time’, has the extraordinary side-effect of dramatically reducing cycle times.

Let’s consider the common case of reporting a defect:

In the above defect report and fix cycle, 90 minutes is value-added (or partial value-added) time and five hours is not. 300 minutes is ‘wasted’ time spent waiting. The total defect turnaround (cycle) time is 390 minutes (or 6 ½  hours).

If there was a way to organise for the non-value added elements of the cycle to be eliminated, the cycle time would have been reduced to 90 minutes – over 4 times faster!  What is the time wasted if the process only allows for the reviewing of the defects once a week? Lean has practices that dramatically reduce waste and therefore improve cycle times. This shrinks software schedules considerably and therefore time-to-market is significantly brought forward.

Use Thoroughly Knowledgeable Managers, Grown from Within the Company

Lean practices, as a culture, are surprisingly difficult to learn and assimilate within a company. When progress in this direction is made, it is important to lock it in. For this reason Toyota will always know which senior engineers understand, practice and support Lean behaviours. These same engineers are essential to the quantum and sustainability of Toyota’s success. They are grown within the company, and then used in roles to run key projects and propagate all they have learned.

In any company wishing to progress in Lean practices, the senior technical staff are key to cementing the companies’ values, skills and behaviours. Companies therefore wishing to embark on Lean practices as a means of improving productivity, reducing costs and increasing customer service and product satisfaction must understand that senior management must train and support their key engineers and partners in learning Lean. This longer-term view and commitment is the only effective way to build the practical Lean skills needed by your personnel. They can effectively use the downturn to learn and consolidate new skills. It will equip your senior engineers (programme, and project managers, and area specialists) as well as all personnel, so that they can optimally position your organisation for when the market brightens.

Wayne Mallinson
info@testfocus.co.za

Reproduction & Copyright

The reproduction, adaptation or broadcast, without permission, of any articles or photographs published in this publication, is forbidden and copyright
is expressly reserved for Test and Data Services (Pty) Ltd.

Opinions

Opinions expressed by contributors are their own and do not necessarily express the opinions of the Publisher, Editor or members of the Editorial Panel.