William Edwards Deming is a statistician credited with the quality revolution in post WW2 Japan. The ToyotaProductionSystem
is often quoted as a successful application of the philosophy of Deming's approach. In Japan, the highest industrial award is the Deming Prize.
In the 1980s, his methods started to gain a following in the US as well. His key publications include "Out of the Crisis" and "The New Economics".
His techniques would seem to be most compatible with the 'big shop' software engineering that I associate with WattsHumphrey
and the CapabilityMaturityModel
. (Strong disagreement, see alternate view in section below.)
But well before WattsHumphrey produced CMM, for good or ill, Deming was a profound influence on TomGilb, in the early 1980s, maybe before. And in some views of software development history (i.e. mine) there are two key pioneering proponents of an "extreme" incremental style of development: AlanKay and the early SmalltalkLanguage team getting closest to a truly uniform incremental programming experience, but with no obvious connection to the murky real world of commercial programming, and TomGilb, taking very similar ideas and daring to apply them to all customer relationships for all commercial programming, regardless of the technology used. The harmonic convergence is still going on, but Deming's ideas - and the Japanese spin put on them referred to by BobHaugen in FourteenPoints - may turn out to a crucial influence. -- RichardDrake
His management philosophy can be best summarize by the FourteenPoints
for good management, from his book Out of the Crisis
, ISBN 0911379010
. ProfoundKnowledge is also an important part of Deming's ideas. -- DanielSvennberg
He also has an eccentric humor and deadpan delivery. I saw him on a training video (on the RedBeadExperiment?
) where he said things like "Gravity. Cheap and Dependable." -- JeremyCromwell
Dr. Deming's PDSA Cycle, see DemingCycle
, seems to reflect IterativeDevelopment
. He was also strongly opposed to after the fact testing. I'm not sure which of his ideas seem to be in line with the CMM approach. -- WayneMack
I think I was thinking of his use of statistical testing of the output product to determine quality - the corollary for software, at least to me, would be a defects/KLOC style chart, that would decline over time as the software got better. -- SteveCline
I think you may have misinterpreted him. Dr. Deming never spoke about "determining quality". Ignore for a moment the question of validity of the defects/KLOC measurement and compare the CMM approach with a PDSA approach.
In CMM, you define some measurements (level 2). You collect the data and hope that magically something happens.
In PDSA, you create a hypothesis, you then determine a measurement to be used to validate your hypothesis. Using the measurement, you determine the current state of the system. You try your proposed change. You then use the measurement to determine the new state of the system. If the state has improved, you accept the change. If it has deteriorated or stayed the same, you reject the change.
I am certain Dr. Deming would reject defects/KLOC as a measurement, as it has no operational definition. I know he was opposed to blindly charting numbers without a purpose. If you associate Dr. Deming with CMM, try reading his work; I think you will be pleasantly surprised.
I gotta agree with the last point. Many people attribute to Deming the views of his peers (like Juran) or (particularly American) followers. I took his seminar and was surprised by statements like "there are many more things that must be manage than can be measured. The inability to measure does not relieve us of the obligation to manage." His FourteenPoints
are among the most useful rules for management that I've run across. And his focus on systems remains state-of-the-art. Compare Deming with PeterSenge
on systems for example. -- HowardFear
If you had defects/KLOC and applied some new approaches like pair programming and unit testing, you could see the result. Software development, although likened to manufacturing, is different; you write only one program and then copy it a million times. The next program you write is different from the first. The output of your development should drive changes to future development. Without some measure of defect/KLOC or defect/complexity, you could say that it's perfect if it compiles - problems with the software usage are the customer's problem.
What I am trying to get at is what is the thing
being manufactured? Is it a line of code, a library, a package (Java), a method, a function, a user requirement - all of which are attempted to be created defect free. See SoftwareMetrics
Deming never used his first name. He was W. Edwards Deming in any formal document or print and Dr. Deming in class, but Ed to anyone on first name basis. -- GeorgeBrower
Of interest to Deming fans: http://www.pbs.org/cringely/pulpit/pulpit20000525.html
It's interesting to see Deming claimed by both adherents of IterativeDevelopment
and of the CapabilityMaturityModel
I see Deming's insights as being compatible with a range of methodologies in software development. The crucial part of the DemingCycle
is that is promotes an "adaptive" attitude to process: a continuous meta-process of modelling what you think is going on, intervening on the back of the model, updating the model, and so on.
An organisation that successfully adopts this kind of approach builds a great deal of robustness into the way it works. Instead of worrying about whether every nuance of the ScrumProcess
is being followed, or whether one can demonstrate compliance with level 5 of the CapabilityMaturityModel
to an external audit team, the focus is on getting and maintaining alignment between what you believe, what you do, and what the effects are in the real world: what GeraldWeinberg
See also FourteenPoints TotalQuality TotalQualityManagement