From: adp@cetijsc.nasa.gov (Allan Plumb)
Subject: Re: Fortran to Ada
Date: 4 Nov 1994 14:24:06 GMT
Date: 1994-11-04T14:24:06+00:00 [thread overview]
Message-ID: <39dg66$43s@popeye.jsc.nasa.gov> (raw)
In-Reply-To: 9411032048.AA02784@eight-ball.hv.boeing.com.hv.boeing.com
Bob Crispen <crispen@EIGHT-BALL.HV.BOEING.COM> writes:
|> Whenever we've ignored our own lessons learned (jeez, none of YOU guys
|> have ever done THAT ;-) and tried to re-code (that is, convert from line
|> to line, Fortran to Ada) we've created a nest of bugs that take forever
|> to find and fix. When we redevelop, we find that previously annoying
|> but non-fatal bugs which have existed in the Fortran code since
|> time immemorial have now mysteriously disappeared.
|>
|> Your mileage may vary, but I doubt it.
Oh? Whenever I've seen people redevelop in another language (or the
same language) without paying sufficient attention to the existing
system, I've seen:
- many capabilities of the existing system are lost
(but of course everybody else has up-to-date requirements, right?)
- validation of the new system is iffy, since they don't have
anything to compare it to at lower levels
I've seen several cases at JSC of "Here's the new improved version of
system X; it does everything the old one did! ... Function ZZZ?
I didn't know anybody still used that. ... Function QQQ? Nobody ever
told me the system was supposed to do that. ... Why is the new system
giving shuttle cross-ranges off by 10 miles from the old system?
Let me spend a couple of months to figure that out."
And "re-code (that is, convert from line to line, Fortran to Ada)"
is or should be a straw-man argument. _Of course_ line by line
conversion won't work. So why would you do that? I.e., translators
_by themselves_ aren't up to the task, but reengineering FORTRAN to
Ada is a bit more than putting semi-colons on the ends of the lines...
My own experience was reengineering a FORTRAN orbital maneuver program
to Ada. About 40 KSLOC, FWIW. The resultant Ada program gaves answers
identical to 15 decimal places to the FORTRAN, and I _know_ that no
capabilities were left out, because I have a trail from every FORTRAN
algorithm to the Ada replacement, or documentation of why it was not
needed. And BTW, we found several "annoying bugs in the FORTRAN" and
fixed them as we went.
And I've seen quite a few redevelopment projects that hit the other
problems I mentioned, and my coworkers have told me of more.
Is reengineering difficult and time-consuming? Yes. Does it have
advantages over redevelopment? Also yes. Are the advantages worth
the time? Now _here_, your mileage may indeed vary.
Carry on.
-- Allan Plumb (adp@gothamcity.jsc.nasa.gov)
next prev parent reply other threads:[~1994-11-04 14:24 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
1994-11-03 20:48 Fortran to Ada Bob Crispen
1994-11-04 14:24 ` Allan Plumb [this message]
1994-11-07 11:09 ` Robert I. Eachus
-- strict thread matches above, loose matches on Subject: below --
2003-12-03 13:20 Anders Sneckenborg
2003-12-03 20:08 ` Randy Brukardt
2003-12-03 20:53 ` Gautier Write-only
1994-11-10 17:25 Bob Crispen
1994-10-31 4:43 Fortran To ADA Paul Emerson
1994-11-01 11:24 ` N. MELLOR
1994-11-01 12:50 ` Gregory Aharonian
1994-11-01 13:56 ` David Weller
1994-11-02 16:09 ` Charles Stump
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox