Legacy systems, software maintenance and computing curricula

A large number of organisations still rely on computer information systems that were originally developed many years ago. The maintenance of these legacy systems represents a substantial proportion of an organisation's information technology effort. Even with new approaches such as software re-engineering, there is still a need for software maintenance. Despite this need it is a topic that is generally overlooked in university curricula and most graduates in information systems, computer science and software engineering are not adequately prepared for this task. The paper discusses the various aspects of software maintenance and the skills required to maintain systems successfully. Finally, it proposes topics that should be included in university curricula if graduates are to be provided with the skills and knowledge necessary to maintain systems, be they, legacy, re-engineered or modern.<<ETX>>

[1]  Robert L. Glass,et al.  Software Maintenance Guidebook , 1981 .

[2]  R. Barlow,et al.  Optimum Preventive Maintenance Policies , 1960 .

[3]  Keith H. Bennett,et al.  Automated support of software maintenance , 1991 .

[4]  Frank W. Calliss An outline for a software maintenance course , 1992, Proceedings Conference on Software Maintenance 1992.

[5]  E. B. Swanson,et al.  Software maintenance management , 1980 .

[6]  Jane Chu Prey,et al.  Undergraduate computer science education: a new curriculum philosophy & overview , 1994, SIGCSE '94.

[7]  Narasimhaiah Gorla,et al.  Techniques for application software maintenance , 1991 .

[8]  Edsger W. Dijkstra,et al.  Letters to the editor: go to statement considered harmful , 1968, CACM.

[9]  Atul Prakash,et al.  Software Engineering: Problems and Perspectives , 1984, Computer.

[10]  Rudy Hirschheim,et al.  Information systems curriculum: a basis for course design , 1986 .

[11]  D. Vera Edelstein Report on the IEEE STD 1219–1993—standard for software maintenance , 1993, SOEN.

[12]  Thomas A. Corbi,et al.  Program Understanding: Challenge for the 1990s , 1989, IBM Syst. J..

[13]  Peter J. Denning,et al.  Computing as a discipline , 1989, Computer.

[14]  David A. Gustafson,et al.  Classifying software maintenance , 1988, Proceedings. Conference on Software Maintenance, 1988..

[15]  Stephen S. Yau,et al.  Ripple effect analysis of software maintenance , 1978, COMPSAC.

[16]  James H. Cross,et al.  Reverse engineering and design recovery: a taxonomy , 1990, IEEE Software.

[17]  Rudy Hirschheim,et al.  Information Systems Education: Recommendations and Implementation , 1987 .

[18]  Richard C. Waters Program Translation via Abstraction and Reimplementation , 1988, IEEE Trans. Software Eng..

[19]  Norman E. Gibbs,et al.  The education programme of the Software Engineering Institute, Carnegie Mellon University , 1989, Softw. Eng. J..

[20]  Kenneth Steiglitz,et al.  The Expression of Algorithms by Charts , 1972, JACM.

[21]  D. J. Robson,et al.  An approach to software maintenance education , 1989, Softw. Eng. J..

[22]  Paul G. Bassett Brittle Software: A Programming Paradox , 1987 .