Вы находитесь на странице: 1из 3

Theres a sign promiHow to get people nently on his wall: that my printer displayscan have You can get

it fast; you

and technology to work together.

of negotiating with our customers and managers on what constitutes success.

it cheap; you can get it right. Pick m ! That same o sign could be displayed on the wall of e v q sojinaredevelopent organization. And yet most of our customers want all three. Ed Yourdon tackles that dilemma in this issues column. He contend that we dont rationally establish proper balance among the critical project parameters: cost, schedule, stafing, finctiimality, and quality. Our customers want 11s to optimize all these parameters, even when this is clearly impossible. The purists among you may find Eds comments grating. But I w p e c t that those o f you whove been bloodied in the pro-ject wars will find wisdom in his work. -Roger P r e m n

Editor: Roger Pressman Pressman & Associates 620 E. Slope Dr. Orange, Cl 06477 rsp0547@aol.com
IEEE SOFTWARE

MISAPPLIED IDEAL. In the past, we often negotiated critical success factors once, at the beginning of the project, then tried to optimize a few other parameters the customer was often unaware of. For example, functionality, schedule, budget, and staff resources typically were negotiated in terms of political constraints: We were told to deliver a software system with a certain amount of (often ambiguous, misunderstood, and poorly documented) functionality within a (hysterically optimistic) schedule and (imposed by fiat) budget, and with a (relatively fixed) staff of developers. Within those constraints, the developers often tried to optimize IN T H E 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 Well deliver high-qualthats not possible in todays world. ity, bug-free software o n time, In more and more application within budget! domains, weve been forced to accept For an important class of software that the reengineering slogan of projects, that battle cry is s d relevant faster, cheaper, better really means - obviously, nobody wants to fly on fast enough, cheap enough, good an airplane whose guidance-control enough. s o h a r e has as many bugs as the word In the past few months, the conprocessor they can buy at their local cept of good-enough software has computer store. And nobody wants been getting a lot of attention: the 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, But for another class of software while the surprisingly numerous projects - a class that is now defects that are publicly acknowlarguably far larger than the missionedged 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 T h e 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 WHEN BEST ISNT. T h e shift in expectations manage software development. Some purists - were experiencing stems from information techespecially veterans who tend to read magazines nologys transition into a consumer commodity: like this one, and who regard themselves as pro- unit costs are low and everyone can afford it. In fessionals - may express horror at this flight the past, most of us worked on proprietary, onefrom quality. But I think a good-enough of-a-kind systems, developed according t o approach will lead to more rational software- schedules measured in years and funded by buddevelopment projects and a more rational way gets measured in millions. Some of us are still

IT MAY SHOCK PURISTS, BUT THIS MAY BE A MORE RATIONAL WAY TO NEGOTIATE SUCCESS.

79

employed by organizations that want custom systems - but schedules and budgets have shrunk considerably. And our customers will often point out that they can achieve almost the same results by jury-rigging a combination of Microsoft W o r d , Lotus Notes, and Borland Quattro, which they can obtain from a discount mail-order catalog. Shrinkwrapped software may be clumsy and limited in its functionality, our customers tell us, but its cheap and they can put it into service tomorrow morning.

10 times higher than your existing product. Would you switch? Maybe - but maybe not. What if product C required you to convert all your existing wordprocessing documents to a different format? What if it required you to switch to a different operating system? You might well conclude that product B was good enough. In this case, the project manager for product B has outsmarted the project manager for product C, even though Cs manager pursued a set of goals that all software professionals would admire.

LATE I NEVER BETTER.That customers S DO THE MATH. Software project mannow view software as a commodity has also introduced an inertia we must cope agers today must be aware that each parawith, especially in the consumer desktop meter - cost, schedule, staffing, functionality, and quality - is market. It goes like this. potentially critical. It is the Suppose the time has come to acquire a word customer - be they an end user for an in-house system processor. You have a choice of products A, B, or the marketing department and C. Product A costs for a software company who decides what the proper $500 and comes with a balance is. Its also crucial to money-back guarantee; remember that the balance product B costs $100 and comes with a long disamong parameters is dynamclaimer that basically says ic and may need to be readcaveat emptor. Product justed daily. After all, the C costs only $50, has twice as many fea- business environment is likely to change tures as either A or B, and its developers in a dramatic, unpredictable way - and are so confident of its quality theyre this can easily change the customers perbragging about a double-your-moneyception of the importance of schedule, back guarantee. The only problem with cost, and so on. Intelligent customers, especially those product C is that its vaporware and (despite glowing reviews in all the trade who have survived todays tumultuous magazines) wont be available for six business environment, know trade-offs months. Assuming you need a word must be made and priorities balanced. processor n m , you will probably make a But customers are often naive about the rational choice between A and B based details. For example, it may not occur to on your assessment of the importance of them that defects (aka bugs) are a paracost versus defects. meter we must consciously plan for, and But now suppose you already have a for which we must trade off other paraword processor, perhaps B, and youve meters. And of course customers may not been using it for a year. Some of its fea- want to make the cold-blooded, rational, tures are slightly annoying, but its ade- calculated decisions about those tradequate for your mundane word-processing offs. Although immensely frustrating to tasks. Bs quality isnt all that great: it developers, its understandable that cuscrashes once a day, and youve become tomers demand a software system in half accustomed to saving your documents the time, at half the cost, with twice the functionality and half as many defects as every 15 minutes. Now vendor C finally delivers its the developers believe technologically product and it really does cost only $50 possible. They dont know any better. and it really does have a level of quality What does this mean for the project

IT IS THE CUSTOMER WHO DECIDES THE PROPER BALANCE OF PARAMETERS.

manager? If we can assume for the moment that were dealing with rational customers, and that a rational negotiation can determine the criteria for project success, then it is incumbent upon the manager to be as forthright and detailed as possible about all the relevant success criteria. Thus, instead of just assuming that the customer requires zerodefect quality, the project manager should say something like, Our standard approach for developing the software youve described will require X number of people and Y u i s of time with a cost nt of Z dollars; well deliver P units of functionality with a defect level of Q bugs per function point. Chances are that the proposed combination of X , Y, Z, P, and Q will not be acceptable to the customer, whose likely response might be You cant have Y units of time, we need the software in half that time. O r a less rational customer might respond, We want twice the functionality you proposed, but you can only have half as many people, half the time, and half the budget. T h e response then is that this is possible, assuming that the customer completely relaxes the constraint on the number of defects (most likely an unrealistic assumption). After all, I can deliver an infinite amount of software, with an infinite amount of functionality, in zero time -if it doesnt have to work. An even less rational customer might constrain all the parameters t o some demonstrably unachievable level! It is perfectly rational for our customers to challenge our proposal for X , Y, Z, P, and Q - particularly if we can get them to focus their attention on one parameter at a time. If the user wants the software in half the time, then its incumbent on us to provide a counterproposal that shows the effect such a change will have upon one or more of the other parameters. Some 20 years ago Fred Brooks reminded us (The Mythical Man-Month, Addison-Wesley, 1975) that time and staff resources are not interchangeable in a linear relationship. If we reduce the project schedule by half it will more than double the required staff. O r we can cut the schedule in half, keep the staff con-

I
80
MAY 1995

stant, and increase the cost in a nonlinear fashion (by having the constant-level staff work extraordinarylevels of overtime).

allow for dynamic renegotiations once engage in a rational negotiation will the project has commenced. probably require some extensive educaRenegotiation may not be all that impor- tion, but getting our project manages to il tant on a project that only takes three negotiate in this fashion wl be equally NEGOTIATING A SUCCESSFUL PROJECT. months. But if a project lasts more than a difficult. It is indeed difficult to say to a cusT h e mathematics of the relationships year or two, renegotiation is almost between X, U, 2, P, and Q are something inevitable in todays turbulent business tomer, Im going to deliver a system to you in six months that will have 5,0oO bugs environment. we dont know enough Although the precise in it, and youre going to be very happy! about at our present level of nature of the mathematical But that may well be the world many of us software engineering. Larry relationships has yet to be live in for the next several years. Putnam and Ware Myers developed in detail, we have explored this in their Eiward Yourah is a sojiware-engineerbook,M e m e s f i f i c e k e have enough information ing cunsultmt and author wbo developed today - especially from -Reliable Sojiware m Time, the Yourah metbod of structured syrtents the work of such metrics Within Budget (Prenticeanu@is and &ped and codeveloped the experts as Larry Pumam, Hall, 1992), but much more CoadNourdon method of object-oriented Howard Rubin, and work is necessary. analysis and design. He edits three Similarly, some comCapers Jones - to provide w a r e j o u d : American Programmer, a reasonable basis for a mercial project-estimating Guerrilla Programmer, and packages let managers rational discussion of the Application Development Strategies. explore trade-offs among these parame- issues with our customers. The biggest He can be reached a t 71250.2322@ ters when they establish the initial pro- difficulty, I believe, is one of politics and mpusrne.com. ject estimates and plans, but they rarely management. Getting our customers to

ICAN DELIVER ALL KINDS OF SOWARE IN NO TIME-IF IT DOESNT HAVE TO WORK.

SOB-

TheSdhvare~rhrgCabofAnkrm,ComMngd Center for Strategic Techndogy Research (CSTaR) inapplications to mi ~egearch ~ssodate,senior ~esear~h st sodate and Researcher positions. Successful candiites Wil no& on projects in the area of cotpotate-wide reuse. Prima responsblllties will Include a leadership role in the creation munple,inbuatly-speciflc,reuss-0diswutedorganizations.

reuse. Preferencewill be given to t o ewho have a backgroundin hs ins~uting firm-wide reuse programs laergegtalned.architecturecentered reuse addressingorganizationaland structural impediments to systematic

Candidates must have an M.S. or Ph.D. in Computer Science or a closely related field and 2+ years of experience In corporate-wide

lTl[TJAyqq
I
IEEE TECHNICAL SPECIALISTS

IEEE MANAOERS

SUPPORT

MARKETING

firm-wide reuse. ensalionwill be competitive and based on experience.Applications include a c u m t resume and references.

,our commitmentto helping our carried out by more than 26,000

research center of Andersen

Center for Sttategic Technobgy

The Technology Registry is a state-of-the-art online recruitment database used by a national consortium of 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.

Nophonecallsplease.

If you are IEEE member em loyed b a technology ment rn a technology compan or looking for em rn our database. in&astry,you should

Вам также может понравиться