This article proposes that software maintainers would benefit from specialized education and training with regard to software maintenance. A clear distinction is drawn between the tasks involved in software development and those involved in software maintenance. It is shown that neither the average computer science undergraduate degree program, nor experience in software development fully prepare a programmer for the particular challenges faced in software maintenance. The traditional and evolving coverage of software maintenance in U.S. graduate and undergraduate computer science and software engineering degree programs is discussed. A set of proposals is given for introducing undergraduate computer science students to the field of software maintenance. An alternate approach is recommended for introducing experienced development programmers to software maintenance.
Read full abstract