Revisiting Legacy Software System Modernization

Total Page:16

File Type:pdf, Size:1020Kb

Revisiting Legacy Software System Modernization UTRECHT UNIVERSITY Revisiting Legacy Software System Modernization By Ravi Khadka A thesis submitted in partial fulfillment for the degree of Doctor in the Faculty of Science Department of Information and Computing Sciences April 2016 SIKS Dissertation Series No. 2016-14 The research reported in this thesis has been carried out under the auspices of SIKS, the Dutch Research School for Information and Knowledge Systems. Cover photo: Ravi Khadka@Fort Lunet III, Houtensepad 150, 3524 SB Utrecht Cover design: Jayraj Bhatta/Arun Pratihast ISBN/EAN: 978-90-393-6512-0 © 2016, Ravi Khadka. All rights reserved. Revisiting Legacy Software System Modernization Modernisering van Legacy Systemen Herbeschouwd (met een samenvatting in het Nederlands) Proefschrift ter verkrijging van de graad van doctor aan de Universiteit Utrecht op gezag van de rector magnificus, prof.dr. G.J. van der Zwaan, ingevolge het besluit van het college voor promoties in het openbaar te verdedigen op woensdag 13 april 2016 des middags te 12.45 uur door Ravi Khadka geboren op 30 augustus 1984 te Jharuwarasi-2, Lalitpur, Nepal Prof.dr. S. Brinkkemper Promotoren: Prof.dr. J.T. Jeuring Dr. R.L. Jansen Copromotoren: Dr. J. Hage This research was financially supported by the Dutch Joint Academic and Commercial Quality Research and Development (JACQUARD) program on Software Engineering Research under ServiciFi project. Preface This PhD endeavor started back when I was doing my masters. I doubt if I would have ever taken this research path had I not met BN Sapkota. Your guidance and numerous reviews of my papers that you've done over the years do deserve a sincere thanks. Slinger, Jurriaan, Sjaak, and Johan- thank you for providing me this opportunity and supporting me over the years. We shared a lot of good memories- running out of travel budget, acceptance of papers- particularly ICSE paper, playing volleyball so on so forth. Slinger, thank you for your confidence in me. In particular at the last stage of my research, you believed on my decision and let me pursue my direction. Jurriaan, you've been the best reviewer of all our papers and my dissertation. This dissertation is a result of close collaboration with industry. Heartily thanks to Rob Douwes, Geer P. Haas, and Edwin van Dis for supporting this research. The industrial insights that our ServiciFi research team received from collaborating with industry are of key values to the research community and without any doubt to my dissertation. Michiel & Amir, due to you guys I count the four years as one of the cherished moments- be it those handful of paper acceptances and bunch of rejections or those all off-track discussions- 9gag & phdcomics. I am happy to count you guys as a part of this journey. Jaap, Kevin, Ivon, Wienand, Marijn, Cristobal, Erik, Garm, Jurriaan, Naser, Eko, Rogier, Oskari, Alexander, Sean, Anna, thanks for your company. Thanks to all the staff members of OenI group for your input, particularly, Fabiano & Remko- I will not forget your contributions in some of my papers. I am grateful to my masters students whom I (in-)directly supervised. Gijs, Andrie, Belfrit, Bart, Thijs, and Prajan- thank you for your wonderful work and for intense discussions we had. Georgiana, Angeliki, and Dr. Maria- without your statistical expertise, I would never be an ISCE-ier. Tracy- I am grateful for your immediate availability to proof-read my papers and even this dissertation. Thanks to Dai, Qianjie, Yu, Bing/Bo, and Quy. I treasure the moments that I've shared with you guys as housemates. Within this research period, I've lived with Michael & Lisa. Feb 10, 2014 was \the day the music died"- Michael, your songs and memories we've shared are everlasting. To all my Nepali friends here in the Netherlands- Ajit/Rubbi, Ashim, Arun/Puja, Barsha, Chandra/Sujata, Ekraj, Gau- rab/Meng, Govinda, Khagendra/Bhagwati, Mohan, Prajwal/Ruby, Prajan/Priyanka, Rabindra/Renu, Rameshwor/Gehini, Reena, and Sunil- thanks for creating a home away from home. Yiouli, Nicole, Michalis- thanks for your Greek hospitality. Finally, I wholeheartedly thank my family and friends back home for your unconditional support. Especially, to my mother and father- your continuous love and encouragement has finally paid off. I owe my thanks to my brothers/sister-in-laws, I can't image this dissertation would have been complete without your supports. Ananta/Bhaba, Sajjan/Srinkhala, and Him- thank you all for your (in-)direct contribution to this work. As of now, when I think of this journey- what an adventure it is! Submission deadlines, paper ac- cepts & rejects, conference visits & side trips, never ending Dutch course with Ricky (Kiwi), 2015 Nepal earthquake and your generous support. Simply, this dissertation is not just only about my research but a memorable snapshot of my life. Thank you all. Contents 1 Introduction . .1 1.1 Research Context . .4 1.2 Scientific Relevance . .9 1.3 Research Approach . 11 1.4 Outline of Thesis and Publications . 22 I Developing a Legacy System Modernization Process 2 A Method Engineering based Legacy to SOA Migration Process . 29 2.1 Introduction . 30 2.2 Background . 31 2.3 The ServiciFi Method . 35 2.4 Evaluation . 39 2.5 Conclusion . 44 3 Legacy to SOA Evolution: A Systematic Literature Review . 47 3.1 Introduction . 48 3.2 Research Method . 49 3.3 Evaluation Framework for Legacy to SOA Evolution . 52 3.4 Overview of the Primary Studies . 56 3.5 Result . 57 3.6 Discussion . 62 3.7 Conclusion and Future Research . 67 4 A structured legacy to SOA migration process and its evaluation in practice . 71 4.1 Introduction . 72 4.2 The Structured Process . 73 4.3 Evaluation . 79 4.4 Analysis and Discussion . 82 vii 4.5 Conclusion . 86 II Legacy System Modernization in Practice 5 Migrating a large scale legacy application to SOA: Challenges and Lessons Learned . 89 5.1 Introduction . 90 5.2 Related work . 90 5.3 Research Background . 91 5.4 The Migration Process . 93 5.5 Lesson Learned . 100 5.6 Conclusion . 101 6 How Do Professionals Perceive Legacy Systems and Software Modernization? . 103 6.1 Introduction . 104 6.2 Study Design . 104 6.3 Findings . 106 6.4 Discussion . 115 6.5 Related Work . 118 6.6 Concluding Remarks . 120 7 Post Migration Analysis of Legacy System Modernization . 123 7.1 Introduction . 124 7.2 Related Work . 125 7.3 Case Study Design . 126 7.4 Case Studies . 127 7.5 Findings . 135 7.6 Validity . 138 7.7 Conclusion . 139 III Conclusion 8 Conclusions and Outlook . 143 8.1 Revisiting Research Questions . 144 8.2 Contributions and Implications . 150 8.3 Limitations and Future Works . 151 IV Finale Bibliography . 157 List of Figures . 175 List of Tables . 177 Publication List . 179 Summary . 181 Nederlands Samenvatting . 183 SIKS Dissertation Series . 185 ix x Chapter 1 Introduction Enterprise information systems are indispensable backbones for enterprises. Enterprises have become dependent on information systems for the day to day running of their business, in the sense that they may go bankrupt because of prolonged system failures. Enterprise systems are defined as implementation and customization of software packages that enable the integration of transaction-oriented data and business processes throughout an organization [185]. Such systems enable an enterprise to integrate their data used throughout the entire organization by a seamless integration of the information flowing through the company such as financial and accounting information, human resource information, supply chain information, and customer information [73]. Many information systems have been operating within enterprises for decades, and consequently they are entrenched in the enterprises. The rich feature sets of information systems result in many different departments becoming dependent on them, and thereby making them irreplaceable. Further- more, through many customizations, the information systems have been adapted to fit the needs of the enterprise, further strengthening the system's foothold in the organization. It is not surprising that information systems have been heavily adapted because of the needs of the enterprise and hence include significant organizational knowledge as business logic to perform daily operations [185, 196]. As information systems acquire a history of heavy customizations and adaptations according to the different demands and purposes of the enterprises over time, often the information systems become entrenched within the enterprise, and as a result conflict with the constant changes that enterprises undergo. Enterprises are challenged by business drivers such as adopting new business requirements, changes in legislation, escalating customer expectations and as well as IT drivers such as changes in the technology infrastructure and platform [280]. Changes due to new business requirements are driven by mergers and acquisitions, reorganizations, adopting new business opportunities, and cross enterprise collaborations. For instance, various banks including ING, ABN AMRO, Lloyds announced job cuts.
Recommended publications
  • Revisiting Legacy Software System Modernization
    UTRECHT UNIVERSITY Revisiting Legacy Software System Modernization By Ravi Khadka A thesis submitted in partial fulfillment for the degree of Doctor in the Faculty of Science Department of Information and Computing Sciences April 2016 SIKS Dissertation Series No. 2016-14 The research reported in this thesis has been carried out under the auspices of SIKS, the Dutch Research School for Information and Knowledge Systems. Cover photo: Ravi Khadka@Fort Lunet III, Houtensepad 150, 3524 SB Utrecht Cover design: Jayraj Bhatta/Arun Pratihast ISBN/EAN: 978-90-393-6512-0 © 2016, Ravi Khadka. All rights reserved. Revisiting Legacy Software System Modernization Modernisering van Legacy Systemen Herbeschouwd (met een samenvatting in het Nederlands) Proefschrift ter verkrijging van de graad van doctor aan de Universiteit Utrecht op gezag van de rector magnificus, prof.dr. G.J. van der Zwaan, ingevolge het besluit van het college voor promoties in het openbaar te verdedigen op woensdag 13 april 2016 des middags te 12.45 uur door Ravi Khadka geboren op 30 augustus 1984 te Jharuwarasi-2, Lalitpur, Nepal Prof.dr. S. Brinkkemper Promotoren: Prof.dr. J.T. Jeuring Dr. R.L. Jansen Copromotoren: Dr. J. Hage This research was financially supported by the Dutch Joint Academic and Commercial Quality Research and Development (JACQUARD) program on Software Engineering Research under ServiciFi project. Preface This PhD endeavor started back when I was doing my masters. I doubt if I would have ever taken this research path had I not met BN Sapkota. Your guidance and numerous reviews of my papers that you've done over the years do deserve a sincere thanks.
    [Show full text]
  • Joint Proceedings of MDSM 2011 and SQM 2011
    Andreas Fuhr, Wilhelm Hasselbring, Volker Riediger (Eds.) and Magiel Bruntink, Kostas Kontogiannis (Eds.) Joint Proceedings of the First International Workshop on Model-Driven Software Migration (MDSM 2011) and the Fifth International Workshop on Software Quality and Maintainability (SQM 2011) March 1, 2011 in Oldenburg, Germany Satellite Events of the 15th European Conference on Software Maintenance and Reengineering (CSMR 2011) March 1-4, 2011 Copyright c 2011 for the individual papers by the papers’ authors. Copying permitted only for private and academic purposes. This volume is published and copyrighted by its editors. Editors’ addresses: Andreas Fuhr, Volker Riediger Wilhelm Hasselbring University of Koblenz-Landau University of Kiel Institute for Software Technology Workgroup Software Engineering Universitätsstr. 1, 56070 Koblenz, Germany Christian-Albrechts-Platz 4, 24118 Kiel, Germany {afuhr | riediger}@uni-koblenz.de [email protected] Magiel Bruntink Kostas Kontogiannis Software Improvement Group National Technical University of Athens Amstelplein 1, 1070 NC Amsterdam, The Netherlands School of Electrical and Computer Engineering [email protected] Greece [email protected] Published on CEUR Workshop Proceedings, ISSN: 1613-0073, Vol. 708 online at http://ceur-ws.org/Vol-708 Joint Proceedings of MDSM 2011 and SQM 2011 Contents Proceedings of MDSM 2011 2 Preface Paper Session 1 4 Model-Driven Migration of Scientific Legacy Systems to Service-Oriented Architectures Jon Oldevik, Gøran K. Olsen, Ute Brönner, Nils
    [Show full text]
  • Application Modernization: Approaches, Problems and Evaluation
    Application modernization: Approaches, problems and evaluation Simon Nilsson September 9, 2015 Master’s Thesis in Computing Science, 30 credits Supervisor at CS-UmU: Mikael R¨annar Examiner: Henrik Bj¨orklund Ume˚aUniversity Department of Computing Science SE-901 87 UMEA˚ SWEDEN Abstract Applications have a life cycle that after a while can prove more difficult to maintain than redo. Remember when web pages were static and developed to a specific size? Accessing them today with a phone or a tablet forces users to scroll all over the page to view the full content. Modernization is when a legacy system gets redone and put into a more modern application space. Understanding the strengths and weaknesses of each modernization tech- nique is paramount to select the correct solution and the overall success of a modernization e↵ort. This thesis describes what to take into consideration when planning a moderniza- tion. Why should organizations consider modernization? What are the costs? What can be done to achieve better and efficient modernization for the next generation and how do they decide the correct time to modernize? To answer these questions a practical study was done using a legacy system written in Java and modernizing it to the ASP .NET framework. An interview with the client ordering the modernization was conducted to understand the reasoning an organization has regarding modernization. Results showed that modernizing can and will often be a great way to expand business capabilities but the major limitation is the finance. Here lies a problem due to the challenging nature of knowing the return of investment regarding modernization and calculating risk vs.
    [Show full text]
  • 2.4 Legacy System Modernization
    THE UNIVERSITY OF NEW SOUTH WALES Building a Systematic Legacy System Modernization Approach Meena Jha School of Computer Science and Engineering University of New South Wales, Sydney 2052, Australia A thesis submitted in fulfillment of the requirements for the degree of Doctor of Philosophy February, 2014 1 ABSTRACT A systematic legacy system modernizing approach represents a new approach for modernizing legacy systems. Systematic legacy system modernization has software reuse as an integral part of modernization. We have developed a modernization approach which uses software architecture reconstruction to find reusable components within the legacy system. The practice of software development and modernization continues to shift towards the reuse of components from legacy systems to handle the complexities of software development. Modernization of a legacy system requires reuse of software artefacts from legacy system to conserve the business rules and improve the system’s quality attributes. Software reuse is an integral part of our systematic legacy modernization approach. Software should be considered as an asset and reuse of these assets is essential to increase the return on the development costs. Software reuse ranges from reuse of ideas to algorithms to any documents that are created during the software development life cycle. Software reuse has many potential benefits which include increased software quality, and decreased software development cost and time. Demands for lower software production and maintenance costs, faster delivery of systems and increased quality can only be met by widespread and systematic software reuse. In spite of all these benefits software reuse adoption is not widespread in the software development communities. Software reuse cannot possibly become an engineering discipline so long as issues and concerns have not been clearly understood and dealt with.
    [Show full text]