Making Reuse Cost-Effective

Making Reuse Cost-Effective - Making Reuse Cost-Effective...

Info iconThis preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon
Making Reuse Cost -Effective BRUCE H. BARNES, National Science Foundation TERRY B. BOLLINGER, Contel Technology Center llSoftware reuse must be recognized as having the same cost and risk features as any financial investment. This aaicle suggests analytical approaches for making good reuse investments. T here has been quite a bit of debate in the last few years on the merits of software reuse. One rea- son for this continuing debate has been a question of scope: Should software reuse be defined narrowly in terms of one or a few specific methods (such as libraries of scavenged parts), or should it be defined broadly so it includes widely differing methods and processes? The question of scope is important, since it really asks whether the concept of software reuse provides any major in- sight into the software-development process. A narrow definition implies that reuse is simply another development technique that, like many other tech- niques, is helpful in some contexts and inappropriate in many others. A broad definition implies that reuse incorpo- rates one or more general principles that should be recognized and addressed ex- plicitly in the software-development process. We believe that reuse is in fact one of the fundamental paradigms of develop- ment and that, until it is better under- stood, significant reductions in the cost of building large systems will simply not be possible. We base this assertion pri- marily on our belief that: The defining characteristic of good reuse is not the reuse of so&are per se, but the reuse of human problem solving. A SCARCE RESOURCE By “human problem solving,” we mean those nonrepetitive, nontrivial aspects of software development and maintenance that cannot easily be formalized or auto- mated using current levels of expertise. Unlike many other hardware and soft- ware resources used in development, IEEE SOFTWARE ~. 07407459/91/0100/0013/$01 00 0 IEEE 13 Authorized licensed use limited to: Syracuse University Library. Downloaded on January 19, 2010 at 07:43 from IEEE Xplore. Restrictions apply.
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
human problem solving cannot readily be multiplied, multiplexed, accelerated, or enhanced. Problem solving thus shares many of the characteristics of precious metals in the materials-processing indus- trv: It must be used iudi- ciously, replaced by less expensive resources when possible, and recovered for further use whenever feasible. If human problem solving is viewed as a scarce resource then the three techmques of judi- cious use, replacement, and recovery correspond fairly closely to project planning, automation, and reuse: Good planning re- duces the loss of human problem solving by mini- mizing redundant and dead-end work, by en- .. work product is any explicit, physical re- sult of a work activity in the development and maintenance process.) Examples of potentially reusable work products are requirements specifications, designs, code modules, - Problem solving shares many characteristics of precious metals. It must be used judiciously, replaced by less expensive resources when possible, and
Background image of page 2
Image of page 3
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}

Page1 / 12

Making Reuse Cost-Effective - Making Reuse Cost-Effective...

This preview shows document pages 1 - 3. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online