Edward Yourdon WHEN GOOD ENOUGH SOMARE IS BEST There’s a sign that my printer displays promi- of negotiating with our customers and managers Howto get people nently on his wall: “You can get it fast; you can have on what constitutes success. and technologyto zt cheap;you can get it right. Pick two!” That same sign could be displayed on the wall of evq so&are- MISAPPLIEDIDEAL. In the past, we often work together.developm ent organization. And yet most of our cus- negotiated critical success factors once, at the tomers want all three. Ed Yourdon tackles that beginning of the project, then tried to optimize dilemma in this issue’scolumn. He contends that we a few other parameters the customer was often don’t rationally establish proper balance among the unaware of. For example, functionality, sched- critical project parameters: cost, schedule, stafing, ule, budget, and staff resources typically were fh-tionality, and quality. Our customerswant 11sto negotiated in terms of political constraints: We optimize all these parameters, even when this is were told to deliver a system with a clearly impossible. The purists among you may find certain amount of (often ambiguous, misunder- Ed’s comments grating. But I suspect that those of stood, and poorly documented) functionality you who’ve been bloodied in tbe pro-jectwars will find within a (hysterically optimistic) schedule and wisdom in his words. (imposed by fiat) budget, and with a (relatively - Rage-rPressman fixed) staff of developers. Within those con- straints, the developers often tried to optimize IN THE BEST OF ALL POSSIBLE WORLDS, such features as maintainability, portability, our users would like us to develop software reliability, and efficiency. Thus, the battle cry instantly, at no cost, and with no defects. But for many projects was “We’ll deliver high-qual- that’s not possible in today’s world. ity, bug-free software on time, In more and more application within budget!” domains, we’ve been forced to accept ITMAY SHOCK For an important class of software that the reengineering slogan of projects, that battle cry is still relevant “faster, cheaper, better” really means PURISTS, - obviously, nobody wants to fly on “fast enough, cheap enough, good BUTTHIS MAY an airplane whose guidance-control enough.” BEA MORE software has as many bugs as the word In the past few months, the con- processor they can buy at their local cept of “good-enough” software has RATIONALcomputer store. And nobody wants been getting a lot of attention: the WAYTO their telephone or automated teller to uproar over the Pentium bug suggests malfunction as often as their PC. that it was deemed not good enough, NEGOTIATEBut for another class of software while the surprisingly numerous SUCCESS.projects - a class that is now defects that are publicly acknowl- . arguably far larger than the mission- edged in popular shrinkwrapped critical class - rapid delivery to the software products - word processors, spread- customer is sometimes more important than sheets, tax calculators, and PC operating systems number of defects. In other situations, “feature - suggest that those products are good enough. richness” may be the most important factor; in The concept of good-enough software is still others, cost may be the only thing the user beginning to challenge some of our basic cares about. assumptions about software development, and I believe it will fundamentally change the way we WHENBEST ISN ’T.The shift in expectations Editor: manage software development. Some purists - we’re experiencing stems from information tech- RogerPressman especially veterans who tend to read magazines nology’s transition into a consumer commodity: like this one, and who regard themselves as pro- unit costs are low and everyone can afford it. In R.Pressman & Associatesfessionals - may express horror at this “flight the past, most of us worked on proprietary, one- 62OE*Slo~eDr- from quality.” But I think a good-enough of-a-kind systems, developed according to Orange,Cl 06477 approach will lead to more rational software- schedules measured in years and funded by bud- [email protected] evelopment projects and a more rational way gets measured in millions. Some of us are still

IEEE SOFTWARE 79 employed by organizations that want 10 times higher than your existing prod- manager? If we can assume for the custom systems - but schedules and uct. Would you switch? Maybe - but moment that we’re dealing with rational budgets have shrunk considerably. And maybe not. What if product C required customers, and that a rational negotia- our customers will often point out that you to convert all your existing word- tion can determine the criteria for pro- they can achieve almost the same results processing documents to a different for- ject success, then it is incumbent upon by jury-rigging a combination of mat? What if it required you to switch to the manager to be as forthright and Microsoft Word, Lotus Notes, and a different operating system? You might detailed as possible about all the relevant Borland Quattro, which they can obtain well conclude that product B was good success criteria. Thus, instead of just from a discount mail-order catalog. enough. assuming that the customer requires zero- Shrinkwrapped software may be clumsy In this case, the project manager for defect quality, the project manager and limited in its functionality, our cus- product B has outsmarted the project should say something like, “Our standard tomers tell us, but it’s cheap and they can manager for product C, even though C’s approach for developing the software put it into service tomorrow morning. manager pursued a set of goals that all you’ve described will require X number software professionals would admire. of people and Y units of time with a cost LATEIS NEVERBETTER.That customers of Z dollars; we’ll deliver P units of func- now view software as a commodity has DO THEMATH. Software project man- tionality with a defect level of Q bugs per also introduced an inertia we must cope agers today must be aware that eachpara- function point.” with, especially- . in the consumer desktop meter - cost, schedule, staffing, func- Chances are that the proposed combi- market. It goes like this. tionality, and quality - is nation of X, Y, Z, P, and Q will not be Suppose the time has potentially critical. It is the acceptable to the customer, whose likely come to acquire a word ITIS THE customer - be they an end response might be “You can’t have Y processor. You have a user for an in-house system units of time, we need the software in choice of products A, B, CUSTOMERWHOor the marketing department half that time.” Or a less rational cus- and C. Product A costs DECIDESTHE for a software company - tomer might respond, “We want twice $500 and comes with a who decides what the proper the functionality you proposed, but you money-back guarantee; PROPER balance is. It’s also crucial to can only have half as many people, half product B costs $100 and BALANCEOF remember that the balance the time, and half the budget.” The comes with a long dis- PARAMETERS.among parameters is dynam- response then is that this is possible, claimer that basically says ic and may need to be read- assuming that the customer completely “caveat emptor.” Product justed daily. After all, the relaxes the constraint on the number of C costs only $50, has twice as many fea- business environment is likely to change defects (most likely an unrealistic tures as either A or B, and its developers in a dramatic, unpredictable way - and assumption). After all, I can deliver an are so confident of its quality they’re this can easily change the customer’s per- infinite amount of software, with an inli- bragging about a double-your-money- ception of the importance of schedule, nite amount of functionality, in zero time back guarantee. The only problem with cost, and so on. - if it doesn’t have to work. An even less product C is that it’s vaporware and Intelligent customers, especially those rational customer might constrain all the (despite glowing reviews in all the trade who have survived today’s tumultuous parameters to some demonstrably magazines) won’t be available for six business environment, know trade-offs unachievable level! It is perfectly rational months. Assuming you need a word must be made and priorities balanced. for our customers to challenge our pro- processor AOW,you will probably make a But customers are often naive about the posal for X, Y, Z, P, and Q - particularly rational choice between A and B based details. For example, it may not occur to if we can get them to focus their atten- on your assessment of the importance of them that defects (aka “bugs”) are a para- tion on one parameter at a time. If the cost versus defects. meter we must consciously plan for, and user wants the software in half the time, But now suppose you already have a for which we must trade off other para- then it’s incumbent on us to provide a word processor, perhaps B, and you’ve meters. And of course customers may not counterproposal that shows the effect been using it for a year. Some of its fea- want to make the cold-blooded, rational, such a change will have upon one or tures are slightly annoying, but it’s ade- calculated decisions about those trade- more of the other parameters. quate for your mundane word-processing offs. Although immensely frustrating to Some 20 years ago Fred Brooks tasks. B’s quality isn’t all that great: it developers, it’s understandable that cus- reminded us (The Mythical Man-Month, crashes once a day, and you’ve become tomers demand a software system in half Addison-Wesley, 1975) that time and accustomed to saving your documents the time, at half the cost, with twice the staff resources are not interchangeable in every 15 minutes. functionality and half as many defects as a linear relationship. If we reduce the Now vendor C finally delivers its the developers believe technologically project schedule by half it will more than product and it really does cost only $50 possible. They don’t know any better. double the required staff. Or we can cut and it really does have a level of quality What does this mean for the project the schedule in half, keep the staff con-

80 MAY 1995 want, and increase the cost in a nonlinear allow for dynamic renegotiations once :ngage in a rational negotiation will fashion (by having the constant-level staff the project has commenced. arobably require some extensive educa- work extraordinary levels of overtime). Renegotiation may not be all that impor- ion, but getting our project manages to tant on a project that only takes three negotiate in this fashion will be equally NEGOTIATINGA SUCCESSFUL PROJECT. months. But if a project lasts more than a rlifficult. The mathematics of the relationships year or two, renegotiation is almost It is indeed difficult to say to a cus- between X, U, 2, P, and Q are something inevitable in today’s turbulent business tomer, “I’m going to deliver a system to we don’t know enough environment. you in six months that will have 5,000 bugs about at our present level of Although the precise in it, and you’re going to be very happy!” . Lany nature of the mathematical But that may well be the world many of us Putnam and Ware Myers I CANDELIVER relationships has yet to be live in for the next several years. l have explored this in their ALLKINDS OF developed in detail, we book, A/leancresj% Excelknc~ SOFlWAREIN have enough information Edward Ym&n k a qfhuare-engineer- - Reliable Sojkuare m Time, today - especially from ing ktxznt and a&or wbo developed Within Budget (Prentice- NOTIME-IF IT the work of such metrics the Yourah method of structured syrtents Hall, 1992), but much more DOESNHAVE’T experts as Larry Putnam, anuryrir and designedand c&eloped tbe work is necessary. Howard Rubin, and Coad/Yourdon method of object-oriented Similarly, some com- TOWORK. Capers Jones - to provide analysis and design. He edits three so& mercial project-estimating I a reasonable basis for a ware journals: American Programmer, packages let managers rational discussion of the Guerrilla Programmer, and explore trade-offs among these parame- issues with our customers. The biggest Application Development Strategies. ters when they establish the initial pro- difficulty, I believe, is one of politics and He can be reached at 71250.2322@ ject estimates and plans, but they rarely management. Getting our customers to crmp.reroe.cum.

I IEEE MANAOERS I utsdorganizatlons. I IEEE TECHNICAL SPECIALISTS s rnusl have an MS. or Ph.D. in or a I I I muse. Preference will be given to those who have a background in 1HARDWARE SOFTWARE SYSTEMS R&D I l leergegmined. architecturecenteredmuse SUPPORT QA MARKETING and structural impediments to systematic The Technology Registry is a state-of-the-art online ensation will be competitive and based on experience. Appliitions recruitment database used by a national consortium of inctude a curmnt resume and references. technology companies, search firms and venture capital funds to find talented managers and technical specialists who can help create successful businesses out of the exciting technologies emerging in the 1990s. IEEE members are in particularly high demand because they have always been in the forefront of new technologies. If you are interested in joining the team of a rapidly growing technology company or an entrepreneurial venture, now or in the future, your profile should be in the Technology Registry. You may contact us via our Internet address (http://www.techreg.com/techreg/) or send your resume in confidence to: Technology Registry, 555 Bryant Street, #750, Palo Alto, California 95301.

If you are IEEE member em loyed b a techiology compan or looking for em o ment n a technology in&y, you should L In our database.