Path: utzoo!censor!geac!torsqnt!hybrid!scifi!bywater!uunet!microsoft!jimad From: jimad@microsoft.UUCP (Jim ADCOCK) Newsgroups: comp.object Subject: Re: Global program state. Message-ID: <60429@microsoft.UUCP> Date: 11 Jan 91 21:49:07 GMT References: <330@coatimundi.cs.arizona.edu> <2474@motcsd.csd.mot.com> <2784e0a8.6cc8@petunia.CalPoly.EDU> <2491@motcsd.csd.mot.com> Reply-To: jimad@microsoft.UUCP (Jim ADCOCK) Organization: Microsoft Corp., Redmond WA Lines: 29 These arguments remind of a large airplane company I worked for 10-12 years ago. Their mathematicians would make sophisticated dynamic models of the airplane's modes of vibrations, "prove" and double-prove the models to be "correct." Then they's build an airplane, we'd measure it, and the measurements would conflict with the models. -- Of course, they claimed the models were correct and the measurements were wrong. Fortunately, most of the planes are good enough, most of the time, to stay in the air. Most customers have a successful flight, and find the planes "perfectly satisfactory" in meeting their flying needs. The occasionally customer [or their heirs] are sorely disappointed, however. The same seems to be true of most good software. Most of the time it works "perfectly well" for most of the customers. For the occasional customer it fails miserably. Take the example of some well known windowing systems. For most people, they work perfectly satisfactory. For me, they work almost not at all -- I'm not at all comfortable with the delay in their visual response -- it really throws me off, the colors are too harsh for my eyes, the esthetics of the industrial designs of the ikons, etc, I consider ludicrous.... As an engineer, I don't see how one "proves" these kinds of issues. The "prover" types will just say, "write me a spec, and I'll see if it passes or not." I claim such a spec, whether passed nor failed, does nothing to improve the quality of the product. I think one would do better to spend one's time and effort to find out what percentage of your customers don't have a successful flight -- and what you can do to improve the situation for them. Concentrate your efforts on what's wrong, not what you can prove is right. Pick the three things that bother customers most, fix them, then repeat the process.