That argument is fairly easy to make...
1. it takes a long time to write code (even if you already know all your
requirements, and they don't change)
2. In writing that code, programmers make lots of mistakes
3. Each bug takes a LONG time to fix
Thus, reusing any components you can is a really good thing from an economic
perspective. They have already been written and lots of bugs have been
removed by other people. And, when they haven't, there is often at least an
awareness of the problems that already exist and possible workarounds.
Some estimates on the time it takes to write code:
E = 5.2 * KLOC^(0.91) (Walston-Felix)
E = 5.288 * KLOC^(1.047) (Doty: for > 9 KLOC)
E = 3.2 * KLOC^(1.05) (Boehm)
Experienced programmers typically make about 100 defects per thousand lines
W. S. Humphrey, A Discipline for Software Engineering. Reading, Mass.:
Addison Wesley Longman, 1995.
In industry, defects that escape from the compiler take on average eight
hours each to find and fix in the testing phase.
Laurie Williams Software Engineering Coursepack (
Don't have a primary source available on this one off hand.
On Tue, May 10, 2011 at 1:55 AM, John Domingue <j.b.domin...@open.ac.uk>wrote:
> John and Paola, thanks for your comments. I understand that there are many
> variables. I would like to convey to a non-computer scientist audience the
> significant effort that goes into software production in order to motivate
> software and component re-use. Otherwise a naive person may ask "why not
> just create the software you need on demand every time?".
> If its not possible to give anything near an
> order-of-magnitude-industry-average-answer or range I understand.
> On 9 May 2011, at 23:27, John Daughtry wrote:
> And what activities are you including in "producing"?
>> Sent from my iPhone
>> On May 9, 2011, at 6:25 PM, Paola Kathuria <pa...@limov.com> wrote:
>> John Domingue wrote:
>>>> I'm looking for pointers to how much time and cost is associated with
>>>> producing software code.
>>> I am somewhat flumoxed by this question. What kind of an answer were
>>> you expecting?
>>> The time to produce code can depend on:
>>> - what one is trying to build
>>> - what it's built from
>>> - development methodology used
>>> - business model
>>> - size of the team
>>> - the skill of the developer(s)
>>> - regulatory requirements
>>> - the number of client changes accommodated
>>> - the deadline
>>> In addition, cost depends on:
>>> - developer salaries
>>> - company overheads
>>> This assumes it's software developed for profit. Open-source
>>> software is different.
>>> The price quoted to the client is something else entirely.
>>> Similar "it depends" questions are: how much time and cost is associated
>>> with making a film / a meal / a school ?
>>> Paola (with help from Frank)
>>> P.S. The discussion of actual prices or rates could be considered
>>> price-fixing and is therefore discouraged. See
>>> The Open University is incorporated by Royal Charter (RC 000391), an
>>> exempt charity in England & Wales and a charity registered in Scotland (SC
> Deputy Director, Knowledge Media Institute, The Open University
> Walton Hall, Milton Keynes, MK7 6AA, UK
> phone: 0044 1908 653800, fax: 0044 1908 653169
> email: j.b.domin...@open.ac.uk web: kmi.open.ac.uk/people/domingue/
> President, STI International
> Amerlingstrasse 19/35, Austria - 1060 Vienna
> phone: 0043 1 23 64 002 - 16, fax: 0043 1 23 64 002-99
> email: john.domin...@sti2.org web: www.sti2.org