ABSTRACT
Computer science is a discipline which has swiftly evolved since its inception in the 1950s. This has invariably meant that new courses introduced into a curriculum are often of the bleeding-edge sort: genetic algorithms, parallel processing, mobile-based applications. Programming languages too have changed as progress ensues. Yet little is discussed of the darker side of computer science - the huge repositories of what some term legacy software running our financial, scientific and engineering systems. This paper looks at the introduction of a course which teaches legacy languages and the process of re-engineering with the aim to instill a reverence for the role legacy software plays in the modern world.
- K. Bennett. Legacy systems: coping with stress. IEEE Software, 12(1):19--23, 1995. Google ScholarDigital Library
- L. Deimel and J. Naveda. Reading computer programs: Instructors guide and exercises. http://repository.cmu.edu/sei/245/, 1990. Accessed: 2014-01-07.Google Scholar
- E. Dijkstra. On the green language submitted to the dod. ACM SIGPLAN Notices, 13(10):16--21, 1978.Google Scholar
- E. Dijkstra. How do we tell truths that might hurt? ACM SIGPLAN Notices, 17(5):13--15, 1982. Google ScholarDigital Library
- D. du Preez. Banks will stick with cobol because java has performance issues, claims quality guru bill curtis. http://www.computerworlduk.com/news/applications/3452537/banks-will-stick-with-cobol-because-java-has-performance-issues-claims-quality-guru-bill-curtis/, 2013. Accessed: 2014-02-01.Google Scholar
- J. Howe, S. Baden, T. Grimmett, and K. Nomura. Modernization of legacy application software. In 4th Int. Workshop on Applied Parallel Computing, pages 255--262, 1998. Google ScholarDigital Library
- R. Kizior, D. Carr, and P. Halpern. Does cobol have a future? In Proc. of the Information Systems Education Conference, page 126, 2000.Google Scholar
- D. Knuth. The calculation of easter. Communications of the ACM, 5(4):209--210, 1962. Google ScholarDigital Library
- W. Main. Computer calculation of fire danger. http://nrs.fs.fed.us/pubs/rn/rn_nc079.pdf, 1969. Accessed: 2012-07-01.Google Scholar
- Microfocus. Cobol infographic. http://www.microfocus.com/assets/cobol-infographic_tcm6--206787.pdf. Accessed: 2013--10--12.Google Scholar
- R. Mitchell. Brain drain: Where cobol systems go from here? http://www.computerworld.com/s/article/9227263/The_Cobol_Brain_Drain, 2012. Accessed: 2014-02-01.Google Scholar
- D. L. Parnas. Software aging. In IEEE Int. Conf. on Software Engineering, pages 279--287, 1994. Google ScholarDigital Library
- J. Sammet. Programming languages: History and future. Communications of the ACM, 15(7):601--610, 1972. Google ScholarDigital Library
- B. Schneiderman. The relationship between cobol and computer science. Annals of the History of Computing, 7(4):348--352, 1985.Google ScholarCross Ref
- H. Sneed. Wrapping legacy software for reuse in a soa. Multikonferenz Wirtschaftsinformatik, 2:345--360, 2006.Google Scholar
- H. Sneed. Migrating from cobol to java. In IEEE Conf. on Software Maintenance, pages 1--7, 2010. Google ScholarDigital Library
- H. Sneed and E. Nya'ry. Salvaging an ancient legacy system at the german foreign office. In IEEE Conf. on Software Maintenance, pages 434--436, 1999. Google ScholarDigital Library
- R. Sward. The rise, fall and persistence of ada. InSIGAda 2010, pages 71--74, 2010. Google ScholarDigital Library
- A. van Deursen. The leap year problem. The Year 2000 Journal, 2(4):65--70, 1998.Google Scholar
- N. Wirth. Algorithms + Data Structures = Programs. Prentice Hall, EnglewoodCliffs, N.J., 1975. Google ScholarDigital Library
Index Terms
- A Descent into the Maelstrom: Teaching Legacy Programming and Re-engineering
Recommendations
Wrapping Legacy COBOL Programs behind an XML-Interface
WCRE '01: Proceedings of the Eighth Working Conference on Reverse Engineering (WCRE'01)This paper describes the tools and techniques for encapsulating host COBOL programs with an XML-interface. The legacy programs are divided into three classes - online programs, batch programs and subprograms. For each program type, a different wrapping ...
Obtaining a COBOL grammar from legacy code for reengineering purposes
Algebraic'97: Proceedings of the 2nd international conference on Theory and Practice of Algebraic SpecificationsWe argue that maintenance and reengineering tools need to have a thorough knowledge of the language that the code is written in. More specifically, for the family of COBOL languages we present a general method to define COBOL dialects that are based on ...
Towards reengineering in reuse reengineering processes
ICSM '95: Proceedings of the International Conference on Software MaintenanceReuse of existing software has been regarded in recent years as a feasible solution to software quality and productivity improvement problems. Various reference paradigms for setting up a reuse reengineering process have been proposed. With reference to ...
Comments