A code module is reused, unchanged, in a new product. In what ways
does this reuse reduce the overall cost of the product? In what ways
is the cost unchanged?
Suppose that a code module is reused with one change; an addition
operation is changed to a subtraction. What impact does this minor
change have on the savings of the problem above. UNSW Handbook Program - Software Engineering - 3648:: The Software Engineering Program is jointly administered by the School of and also the fast track program BE(Software Eng)/MEngScplan SENGL13648 http://www.handbook.unsw.edu.au/undergraduate/programs/2006/3648.htmlHOME |
Hello Jplhix,
[In what ways does this reuse reduce the overall cost of the product?
In what ways is the cost unchanged?]
There is a *small* cost generally in the "as-is" reuse of a code
module. Studies by Barry Boehm at USC:
http://sunset.usc.edu/research/COCOMOII/cocomo_main.html
[look at the 1995 papers for a chart of non-linear reuse costs]
The STC paper is the one I use in references to figures, etc.
http://sunset.usc.edu/research/COCOMOII/Docs/stc.pdf
look at figure 3 for a good chart that illustrates the costs for
reusing software.
indicate this cost is about 5%-10% of the original development and is
assumed due to:
- effort to select the code module for reuse
- effort to understand the what the module does
- effort to check interfaces with the module
So, if you reuse a code module the development effort is far less than
to develop from scratch. However, there are other "costs" such as
memory, CPU time, and so on that are unchanged with reuse of a code
module.
[Suppose that a code module is reused with one change; an addition
operation is changed to a subtraction. What impact does this minor
change have on the savings of the problem above.]
From the same paper, the costs of change grow dramatically from the
low level until at the 10% change level, the cost of development is
about 55% of the original development cost. The factors that make up
this cost includes:
- effort to identify where the change is needed
- effort to make the change
- effort to retest the change
and so on.
This kind of analysis has been repeated in other studies as well. A
good set of search phrases include:
software cost reuse
cocomo (or software cost model)
personal software process
and so on. These links provide more background information. The last
one describes a method where an individual developer can improve their
development process and determine the effort required to reuse code,
modify code, and develop new software.
--Maniac Module: COSC2299/2428 [Software Eng: Process & Tools (Software Eng :: Feb 11, 2007 Module: COSC2299/2428 [Software Eng: Process & Tools (Software Eng 1B)]. Fullscreen Index Help Finder. 08:30- 09:30, 09:30- 10:30 http://www.cs.rmit.edu.au/timetables/city/2007s2/resource/m21020.htmlHOME | Memories of the NATO Software Engineering Conferences By Brian Randell:: File Format: PDF/Adobe Acrobat - View as HTMLsoftware engineering as its deliberately provocative. title – I believe came originally from Fritz .. fully accepted that the term software engineering http://www.cs.ncl.ac.uk/research/pubs/articles/papers/174.pdfHOME | Find Image Processing Software Eng jobs at Dice.com:: Software, Software Engineer, Engineer, C, programming, Windows, systems, algorithm, currently searching for a Image Processing Software Engineer for a http://seeker.dice.com/jobsearch/servlet/JobSearch?op=302&dockey=xml/8/2/8251e7d29306e77ef324e6c647f459d8@endecaindex&source=19&FREE_TEXT=&rating=99HOME |
Microsoft Unleashes Visual Studio .NET
IBM's iPhrase Buy Adds to WebSphere
|