Automated Code Transformations: Dealing with the Aftermath

Dealing with legacy systems has been a challenge for the industry for decades. The pressure to efficiently modernise legacy assets to meet new business needs and minimise associated risks is increasing. Automated code transformation, which is associated with serious (long-known) risks, is a high priority in the industrial environment due to the cost structure, the effort required and the supposed time savings. However, little has been published about the long-term effects of successful migrations. This paper looks at three different cases of automated code transformation at different stages of their lifecycle, highlights the lessons learned and derives a number of recommendations that should be useful for planning and executing future transformations.

[1]  Per Runeson,et al.  Guidelines for conducting and reporting case study research in software engineering , 2009, Empirical Software Engineering.

[2]  Tom DeMarco,et al.  Peopleware: Productive Projects and Teams , 1987 .

[3]  Jurriaan Hage,et al.  Does software modernization deliver what it aimed for? A post modernization analysis of five software modernization case studies , 2015, 2015 IEEE International Conference on Software Maintenance and Evolution (ICSME).

[4]  Bing Wu,et al.  Legacy Information Systems: Issues and Directions , 1999, IEEE Softw..

[5]  Thomas Grechenig,et al.  Incremental reengineering and migration of a 40 year old airport operations system , 2012, 2012 28th IEEE International Conference on Software Maintenance (ICSM).

[6]  Chris Verhoef,et al.  The Realities of Language Conversions , 2000, IEEE Softw..

[7]  Jurriaan Hage,et al.  How do professionals perceive legacy systems and software modernization? , 2014, ICSE.

[8]  Harry M. Sneed,et al.  Risks involved in reengineering projects , 1999, Sixth Working Conference on Reverse Engineering (Cat. No.PR00303).

[9]  Harry M. Sneed,et al.  Planning the Reengineering of Legacy Systems , 1995, IEEE Softw..

[10]  Alessandro De Marco,et al.  COBOL to Java and Newspapers Still Get Delivered , 2018, 2018 IEEE International Conference on Software Maintenance and Evolution (ICSME).

[11]  Václav Rajlich,et al.  Software evolution and maintenance , 2014, FOSE.

[12]  Thomas Wagner,et al.  Challenges in re-Platforming Mixed Language PL/I and COBOL IS to an Open Systems Platform , 2019, 2019 IEEE International Conference on Software Maintenance and Evolution (ICSME).

[13]  Keith H. Bennett,et al.  Software maintenance and evolution: a roadmap , 2000, ICSE '00.

[14]  Vadim Zaytsev,et al.  Qualify First! A Large Scale Modernisation Report , 2019, 2019 IEEE 26th International Conference on Software Analysis, Evolution and Reengineering (SANER).

[15]  Grace A. Lewis,et al.  Modernizing Legacy Systems - Software Technologies, Engineering Processes, and Business Practices , 2003, SEI series in software engineering.

[16]  Harry M. Sneed Encapsulation of legacy software: A technique for reusing legacy software components , 2000, Ann. Softw. Eng..

[17]  Nelson Weiderman,et al.  Why Reengineering Projects Fail. , 1999 .

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

[19]  Harry M. Sneed,et al.  Migrating from COBOL to Java , 2010, 2010 IEEE International Conference on Software Maintenance.

[20]  Arie van Deursen,et al.  Research Issues in the Renovation of Legacy Systems , 1999, FASE.

[21]  Keith H. Bennett,et al.  Legacy Systems: Coping with Success , 1995, IEEE Softw..