Re: A Trend Towards Lower Software Maintenance Budgets?



In article <buvmv4x2v9.ln2@xxxxxxxxxxxxxxxxxxxxxxx>,
Flash Gordon <spam@xxxxxxxxxxxxxxxxxx> wrote:

Sometimes code needs to be scrapped and
rewritten, sometimes it needs to be modified. This applies at all scales
(yes, I've been involved in scrapping and rewriting what after the
rewrite was about 50000 LOC). So blanket advice to scrap and rewrite is
bad advice just as blanket advice to always modify what you have is bad.

Our particular development cycle usually involves writing something
in a prototyping language (e.g., MATLAB, maple, Mathematica, IDL)
and hacking on it endlessly for a few years, changing our mind about
what it is supposed to do several times a day. This is the exploratory
research phase, where we often do not know if something is possible
and we often do not know if we have reached the "right" answer.
The sort of code where a bug might happen to produce a better answer
than what we thought we were coding, leaving us to scratch our heads
and re-re-analyze to improve our techniques. Naturally, with so many
changes in purpose and technique going on, the end result is often
a coding mess.

Once we have figured out what works (and what doesn't) and have
a functional implementation, it's time to hand it over to another
group that extracts the good parts and rewrites them cleanly and
efficiently in C++ or C as part of our integrated research framework.

It would not be unfair to say that at that point we are throwing
out several 10's of kLOC and several person-years of coding, to be
rewritten into a completely different form. This isn't a waste of
time: it is the point that seperates the "Research" from the
"Development".
--
So you found your solution
What will be your last contribution?
-- Supertramp (Fool's Overture)
.



Relevant Pages

  • Re: "Sorting" assignment
    ... that duplicated stuff and some bad coding. ... they're usually OK when you post genuine attempts at ... I did actually post a rewrite of that duplicate code because you said the ...
    (comp.programming)
  • Re: One thing I noticed
    ... I meant vb6 needed a rewrite so they did dotnet. ... > I've been coding since 1977 and have only ever done one major ... > re-write, and that was porting a fairly complex DOS EXE ...
    (microsoft.public.vb.general.discussion)
  • Re: How to speed up ruby and make it as fast as possible
    ... see where the bottlenecks are and refine the algorithms. ... it all comes down to good coding that is aware of how the language is best used and how your application is structured to handle the commonest usage. ... I also rewrite all my performance critical code in C, that is the whole application gets rewritten in C once I have used Ruby to prototype the code. ...
    (comp.lang.ruby)
  • Re: Time to Say Goodbye, Delphi?
    ... "Joanna Carter (TeamB)" ... > several attempts at coding one class, ended up creating instances in one ... > rewrite the second domain from scratch. ... of bad/unusable code in 15 working days, ...
    (borland.public.delphi.non-technical)
  • Re: A Trend Towards Lower Software Maintenance Budgets?
    ... I have a 5 line program, is it easier to patch it for a massive change or rewrite it? ... (I don't know what Malcolm meant when he said "extreme programming", ... This applies at all scales (yes, I've been involved in scrapping and rewriting what after the rewrite was about 50000 LOC). ... So blanket advice to scrap and rewrite is bad advice just as blanket advice to always modify what you have is bad. ...
    (comp.lang.c)