Abstract
The reverse engineering project described in this paper is aimed at documenting a 6.4 million lines of code COBOL/IMS/DB2 system for world-wide car leasing. The ultimate goal is to re-implement that system. The system was originally developed in the 1980s with less than 3 million code lines and has since evolved to its current size. It survived the year 2000 date change and the Euro conversion as well as several major company reorganizations to preserve the continuity of the leasing service. Finally, after 30 years of service it is planned to retire the system. However, the first two attempts to replace it, one by automatically converting it and the other by replacing it with a standard package ended in failure. It is now planned to rewrite the system based on a specification derived from the current code base. That specification includes among other documents a documentation of the processing rules. The extracted rules are intended to act as guide to those writing the new code.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Ball, T., Larus, J.R.: Using paths to measure, explain, and enhance program behavior. Computer 33(7), 57–65 (2000)
Baxter, I., Hendryx, S.: A standards-based approach to extracting business rules. In: OMG’s Architecture Driven Modernization Workshop (2005)
Cosentino, V., Cabot, J., Albert, P., Bauquel, P., Perronnet, J.: Extracting business rules from COBOL: a model-based framework. In: 20th Working Conference on Reverse Engineering (WCRE), pp. 409–416. IEEE (2013)
Earls, A.B., Embury, S.M., Turner, N.H.: A method for the manual extraction of business rules from legacy source code. BT Technol. J. 20(4), 127–145 (2002)
Hajnal, Á., Forgács, I.: A demand-driven approach to slicing legacy COBOL systems. J. Softw.: Evol. Process 24(1), 67–82 (2012)
Harman, M., Hierons, R.: An overview of program slicing. Softw. Focus 2(3), 85–92 (2001)
Huang, H., Tsai, W.-T., Bhattacharya, S., Chen, X.P., Wang, Y., Sun, J.: Business rule extraction from legacy code. In: Proceedings of 20th International Computer Software and Applications Conference: COMPSAC’96, pp. 162–167. IEEE (1996)
Kersten, B., Verhoef, C.: IT portfolio management: a banker’s perspective on it. Cutter IT J. 16(4), 27–33 (2003)
Kwiatkowski, L.M., Verhoef, C.: Recovering management information from source code. Sci. Comput. Program. 78(9), 1368–1406 (2013)
Lehnert, S., Farooq, Q., Riebisch, M.: Rule-based impact analysis for heterogeneous software artifacts. In: 17th European Conference on Software Maintenance and Reengineering, pp. 209–218. IEEE Computer Society (2013)
Meservy, T.O., Zhang, C., Lee, E.T., Dhaliwal, J.: The business rules approach and its effect on software testing. IEEE Softw. 29(4), 60–66 (2011)
Ross, R.G.: Decision Tables and Integrity: Introducing Restrictions (2014). http://www.brcommunity.com/articles.php?id=b767. Accessed 26 May 2019
Sellink, A., Verhoef, C.: Native patterns. In: Proceedings Fifth Working Conference on Reverse Engineering, pp. 89–103. IEEE Computer Society (1998)
Sellink, A., Verhoef, C.: An architecture for automated software maintenance. In: Proceedings Seventh International Workshop on Program Comprehension, pp. 38–48. IEEE (1999)
Sneed, H.M.: Extracting business logic from existing COBOL programs as a basis for redevelopment. In: Proceedings 9th International Workshop on Program Comprehension. IWPC 2001, pp. 167–175. IEEE Computer Society (2001)
Sneed, H.M., Erdos, K.: Extracting business rules from source code. In: Proceedings of the 4th Workshop on Program Comprehension (WPC’96), pp. 240–247. IEEE Computer Society (1996)
Sneed, H.M., Schedl, S., Sneed, S.H.: Linking legacy services to the business process model. In: Proceedings of the IEEE 6th International Workshop on the Maintenance and Evolution of Service-Oriented and Cloud-Based Systems (MESOCA), pp. 17–26. IEEE Computer Society (2012)
Sneed, H.M., Verhoef, C.: Reverse engineering a visual age application. In: Proceedings of the IEEE International Conference on Software Maintenance and Evolution (ICSME), pp. 487–496. IEEE Computer Society (2015)
Strassmann, P.A.: The Politics of Information Management. The Information Economics Press (1994)
Ulrich, W.M.: Knowledge mining: business rule extraction and reuse. Cutter IT J. 12, 21–26 (1999)
Wall, J.: Mining Rules from Code: Reasonable or Lunacy? (2006). http://www.bpminstitute.org/resources/articles/mining-rules-code-reasonable-or-lunacy. Accessed 26 May 2019
Weiser, M.: Program slicing. In: Proceedings of the 5th International Conference on Software Engineering, pp. 439–449. IEEE Computer Society (1981)
Wynne, M., Hellesoy, A., Tooke. S.: The Cucumber Book: Behaviour-Driven Development for Testers and Developers. Pragmatic Bookshelf (2017)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this chapter
Cite this chapter
Sneed, H.M., Verhoef, C. (2020). From COBOL to Business Rules—Extracting Business Rules from Legacy Code. In: Jarzabek, S., Poniszewska-Marańda, A., Madeyski, L. (eds) Integrating Research and Practice in Software Engineering. Studies in Computational Intelligence, vol 851. Springer, Cham. https://doi.org/10.1007/978-3-030-26574-8_14
Download citation
DOI: https://doi.org/10.1007/978-3-030-26574-8_14
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-26573-1
Online ISBN: 978-3-030-26574-8
eBook Packages: Intelligent Technologies and RoboticsIntelligent Technologies and Robotics (R0)