It is important for a software process to recognize and support the MaintenanceProgrammer. ExtremeProgramming as a process supports this area by giving the programmers UnitTests and FunctionalTests. Without these tools, a MaintenanceProgrammer is forced to rely on BigBangTesting and TestingByPokingAround. -- FrancisTownsendExtremeProgramming seems to be centered around the idea of maintenance of the code, does anyone else get this feeling?
ExtremeProgramming seems to remove the distinction between development and maintenance. -- EricHerman
I read a talk abstract the other day that lamented that 80% of software development dollars were spent on maintenance. My immediate reaction was, "What would it take to get that up to 95%?" -- KentBeckShould we distinguish between CorrectiveMaintenance and PreventiveMaintenance ?ImprovingTheDesignOfExistingCode is difficult when you don't have the source. The OpenSource movement is working on that problem.
I've argued for years that all software work is a kind of corrective maintenance. In the sense that there is nearly always a pre-existing way of doing things (manual? mechanical? intuitive?) which we about to replace.
The classical stats was that 60-80% of software work was changing existing code.
SlashDot just posted the figure that only 47 days in the work year are dedicated
to adding new functionality/code.
-- DickBotting
The TgpMethodology is a new approach that tries to tackle the maintenance issue. It is based on IncrementalDevelopment so most of the development is done in a maintenance mode (TgpProcess). However, the Involvement of BusinessProfessionals and using the TgpArchitecture hands tools to avoid some of the problems by a better connection to the business domain and to respond quickly by flexible architecture -- OriInbar