[comp.software-eng] Software reuse

abbott@aero.ARPA (Russell J. Abbott) (12/14/88)

There has been much discussionn recently about software reuse.  I'm
interested in knowing the extent to which the organization for which
readers of this newsgroup work supports/encourages reuse.  For example:

Are there corporate-wide (division-wide, department-wide, ??-wide) reuse
libraries?

Is the creation of reusable elements encouraged?  If so, how?  For
example, one of the evaluation items in a performance review may be the
number of reusable elements submitted to (and accepted by) the reuse
library.

Is reuse encoraged?  If so, how?  For example, there may be a regular
newsletter to inform people of new elements available for reuse.  Or if
there is a reuse library, there may be support for people wanting to use
it?

I will summarize and post replies.

Thanks.

-- Russ Abbott

jmi@dac.mdcbbs.com ((JM Ivler) MDC - Douglas Aircraft, Long Beach, CA) (07/13/90)

This is most likely going to become an orphaned response,but... :-)

Backround:

About one week ago I was asked to create a user interface for an input process. 
The customer was using VAX Fortran77 read and write statements to get the 
information from the person at the tube. The person at the tube was going to be 
someone of importance and the customer wanted a "nicer" interface. I had a 
deadline of 3 days.

[comment: accepted standard is 10 debugged and tested SLOC / day]

Actions taken:

Went to customer and sat down for 45 minutes getting detailed specifications. 
Found out all the exceptions and error handling required. Discussed basic 
screen design. 

Went to my code library. Obtained piece of code that (bare with no changes) met 
about 65% of the customers need.

Coded the additional features into the code, tested and debugged the code.

Final outcome:

Delivered 150 debugged and tested SLOC in 6.5 manhours. Customer integrated it 
into their main product in 15 minutes. Works like a charm. The customer is 
happy and their VIP user is happy [wants all the interfaces in this manner].

When management asked how I could beat the standard by 15X I explained about 
reuse and clear precise specifications. There is now an effort under way to see 
what can be done to increase reuse (specs are on the back burner). 

Point:

I don't know squat about OOD. Let's be honest, I am a VAX F77 code hacker and , 
what DAC refer to, a systems analyst. I do know that code reuse, of any code - 
including those non-object oriented ones, is one major method that can be used 
to increase productivity drastically. Since this incident two other people 
have reused code from my libraries to decrease the development time of their 
products. One, that was about 3 days behind schedule is now on target again, 
the other is ahead of schedule. I have found that code reuse, with or without 
OOP/OOD (whatever that may be :-) ) is one of the fastest ways to increase the 
productivity of a software development effort. The other, which to me is a 
bigger crises, is to get *clear and concise* specifications from the customer. 
This way you can do it right the first time, not the thirty-third.

jmi     systems analyst - DAC/MDC     jmi@dac.mdcbbs.com