Re: Does software-engineering focus on the wrong subject?

From: CTips (ctips_at_bestweb.net)
Date: 12/20/04


Date: Mon, 20 Dec 2004 17:38:22 -0500

Bjorn Reese wrote:
> CTips wrote:
>
>> We know that there is a huge difference in productivity between the
>> best and the average programmer - anecdotally, the spread is something
>> like 20x to 50x. But very little literature discusses exactly how to
>> improve an average programmer.
>
>
> Numbers like these are not supported by empirical data. See for example:
>
> http://citeseer.nj.nec.com/prechelt99grantsackman.html

I'm actually aware of both the 1:28 claim, and its various refutations.

However, I'm speaking from personal experience, and from discussions
with colleagues. And I'm referring to the entire process - from
requirements through analysis and design to impementation, and including
testing and test-environments and maintainence and maintainability - not
just to maintainability. The difference of overall productivity is not
just the implementation (where may only be a small reason for the
difference) but in the overall design and architecture, and in the
maintainability of the final product.

In a previous job at a big company, two people put together in 3 months
a tool which was somewhat similar to a different tool that had taken 12
man years+ to develop. Its not exactly a perfect comparison, because
each of the tools had different strenghts, but they are close enough
that I would feel comfortable stating that we got a 25x productivity
increase.

>> Now, why isn't there much done on the subject? Is it because most
>
>
> Well, researchers like Lutz Prechelt, Janice Singer, and Timothy
> Lethbridge springs to mind (there are more, but I do not have a
> comprehensive list.)
>
It would be nice to get some specific papers where they show how to
improve productivity.

I looked at the Prechelt's home page, and there were too many papers to
be really go through.

Just out of curiosity, I looked at his paper "An empirical comparison of
C, C++, Java, Perl, Python, Rexx and Tcl"
[http://page.mi.fu-berlin.de/~prechelt/Biblio/jccpprt_computer2000.ps.gz],
and decided to implement the phonecode program based on the problem spec
in page 2. It took me about 2hrs, 15min. I then looked at the results of
the 5 C programmers; it looks like they ranged upto 16 hrs; thats a 7x
difference w.r.t. masters students in CS (I have no clue wether they
were average or above average programmers). The solution is in
http://users.bestweb.net/~ctips/telephone.c



Relevant Pages

  • Re: What makes a (super-)programmer?
    ... > of shippable code a year. ... > 50klocs is better quality than from an average programmer. ... Part is avoiding profound mistakes that cost a lot to fix. ... And negative productivity is a distinct possibility. ...
    (comp.programming)
  • Does software-engineering focus on the wrong subject?
    ... standards software products should satisfy. ... We know that there is a huge difference in productivity between the best ... and the average programmer - anecdotally, ... Given current salary spreads, ...
    (comp.programming)
  • Re: Does software-engineering focus on the wrong subject?
    ... >processes to build software or how to measure software quality, ... >standards software products should satisfy. ... >We know that there is a huge difference in productivity between the best ... >and the average programmer - anecdotally, ...
    (comp.programming)
  • Re: Does software-engineering focus on the wrong subject?
    ... > processes to build software or how to measure software quality, ... > make individual programmers more productive. ... > We know that there is a huge difference in productivity between the best ... > and the average programmer - anecdotally, ...
    (comp.programming)
  • Re: Does software-engineering focus on the wrong subject?
    ... >>requirements through analysis and design to impementation, ... The difference of overall productivity is not ... >>maintainability of the final product. ...
    (comp.programming)