Naomi Greenberg <[log in to unmask]> wrote:
> Thank you all for your replies. I agree with everything you've said, but it
> would be helpful to me if there were actual references I could cite proving
> this point, rather than stating opinions, albeit those of the experts. Has
> anyone seen any comparitive studies or articles on the subjects of either
> speed considerations or, as James points out, cost ineffectiveness of
> converting legacy codes?
I can't give you articles, but I can give a real non-hypothetical example.
JPL has used a suite of Fortran 77 programs, amounting to six million
lines or so, for spacecraft navigation. Development of this program
was begun using the FAP assemler for IBM 709 sometime before 1960. By
1964, it was being developed in Fortran.
In 1996, a know-nothing manager got a wasp up his ass, and decided it
would be a wonderful thing to replace this program suite with one written
in C++. The argument is that this would reduce maintenance costs. The
cost of maintaining the Fortran program was seven work years per year
at that time. The estimate to redevelop the suite in C++ was 120 work
years. If the redevelopment project had been completely finished at
the instant it was proposed, and if it could reduce maintenance costs
to zero, it would break even in 2014. Actually, the redevelopment was
to be finished in 2002, so break even would occur in 2020. So far, the
program suite isn't finished; the estimated effort to completion is --
guess what? -- 126 work years.
Leslie Hatton (do a google search) has studied maintenance costs of
programs in various languages. He finds that C++ programs have roughly
two to three times the density of statically-detectable defects as
equivalent programs in Fortran or Ada, and a cost-to-repair roughly
two to three times higher per defect, for a total lifetime "ownership"
cost of six times the cost of an equivalent program in Fortran or Ada.
This dosn't speak to C.
Stephen Zeigler has studied programmer's diaries from Verdix corporation
when Rational absorbed them. They had a suite of programs of similar
functionality to Rational's. Verdix's offerings were coded in C; Rational's
were coded in Ada. Zeigler found that C programs have a lifetime
ownership cost roughly twice the cost of Ada programs. Starting with
Fortran 90, many concepts pioneered in Ada have made their way into
Fortran. Although there are no studies of which I am aware that
document this, it suggests that C programs would cost more to own
than equivalent programs in Fortran.
--
Van Snyder | What fraction of Americans believe
[log in to unmask] | Wrestling is real and NASA is fake?
Any alleged opinions are my own and have not been approved or disapproved
by JPL, CalTech, NASA, Sean O'Keefe, George Bush, the Pope, or anybody else.
|