in reply to Re^6: Reinvent the wheel!
in thread Reinvent the wheel!

Using agile incremental methodologies does not change this fact.

It certainly does. Agile, incremental development pushes almost 100% of the cost of software into the maintenance phase.

Replies are listed 'Best First'.
Re^8: Reinvent the wheel!
by tilly (Archbishop) on Mar 24, 2009 at 03:58 UTC
    That depends on how you define "maintenance".

    To me if you're actively building new features, that's not maintenance, that's development. The fact that people are using the software as you're developing it doesn't change the fact that it is under development. You obviously use the term "maintenance" differently.

    What I'd call "maintenance" is roughly equivalent to what you were calling "minimal maintenance" earlier. Granted, there is more of a gradual decline here rather than a bright dividing line. But the distinction is real.

    In that state a project needs much less development. But software stays in that state for much longer periods of time - frequently decades. And when bugs come up, the maintainer likely has not seen the relevant code in a long period of time, which makes everything that much more difficult to deal with. These two factors together are what causes so much aggregate expense in software which is changing at a glacial pace.