Skip to main content
Log in

A method for the manual extraction of business rules from legacy source code

  • Published:
BT Technology Journal

Abstract

One of the main barriers to the successful migration of legacy systems is lack of information about the system to be migrated.With the complexity of modern information systems, it is rarely the case that an organisation has a complete end-to-endunderstanding of its systems, business processes and information. This is particularly true of the business rules enforced by suchsystems, which are often poorly documented (if at all) and incompletely understood by those who own, use and maintain suchsystems. These business rules must be migrated, along with the other system functionality, but this is difficult when they areburied deep within the source code of the system. In this paper, we propose a method for the discovery of business rules throughinspection of the source code of legacy systems. We also describe the results of a comprehensive evaluation exercise undertakenwithin BT, in which the method was applied to a legacy system about to undergo migration. The results of this study indicatedconsiderable success for the method in extracting valid business rules, but also highlighted some weaknesses. Most significantly,the cost of applying the method is a factor of the size and complexity of the system being analysed, and not of the number ofbusiness rules elicited. In order to address this, we propose a cut-down version of the method that can be used to produce a quickestimate of the likely yield of business rules from a program. Together, these two forms of the method aid personnel engaged insystem migration projects in making maximum use of the scarce resources are available for business rule discovery.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Brodie M L and Stonebraker M: ‘Migrating legacy systems: gateways, interfaces and the incremental approach’, Morgan Kaufmann Publishers Inc (1995).

  2. Cross J H II, Chikofsky E J and May C H Jr: ‘Reverse engineering’, Advances in Computers, 35, pp 199—254 (1992).

    Google Scholar 

  3. Blaha M R: ‘Dimensions of database reverse engineering’, in Baxter I D, Quilici A and Verhoef C (Eds): ‘Proceedings of 4th Working Conference on Reverse Engineering’, (WCRE' 97) Amsterdam, IEEE Computer Society Press, pp 176—183 (October 1997).

    Google Scholar 

  4. Hainaut J-L, Henrard J, Hick J-M, Roland D and Englebert V: ‘Database design recovery’, in Constantopoulos P, Mylopoulos J and Vassiliou Y (Eds): ‘Proceedings of 8th International Conference on Advanced Information System Engineering’, Heraklion, Crete, Springer-Verlag, LNCS, 1080, pp 272—300 (May 1996).

  5. Canfora G, De Lucia A, Di Lucca G A and Fasolino A R: ‘Recovering the architectural design for software comprehension’, in Proceedings of 3rd IEEE Workshop on Program Comprehension, Washington DC, IEEE Computer Society Press, pp 30—38 (1994).

  6. van Deursen A and Kuipers T: ‘Identifying objects using cluster and concept analysis’, in Proceedings of the 1999 International Conference on Software Engineering (ICSE'99), Los Angeles, USA, ACM Press, pp 246—255 (May 1998).

    Google Scholar 

  7. Palthepu S, Greer J E and McCalla G I: ‘Cliché recognition in legacy software: a scalable knowledge-based approach’, in Baxter I D, Quilici A and Verhoef C (Eds): ‘Proceedings of 4th Working Conference on Reverse Engineering’, (WCRE' 97) Amsterdam, IEEE Computer Society Press, pp 94—103 (October 1997).

    Google Scholar 

  8. Shao J and Pound C: ‘Extracting business rules from legacy information systems’, BT Technol J, 17, No 4, pp 179—186 (October 1999).

    Google Scholar 

  9. Hay D and Anderson Healy K: ‘Defining business rules — what are they really?’, White Paper, The Business Rules Group, Version 1.3 (2000) http://www.businessrulesgroup.org/first_paper/BRG-whatisBR_ 3ed.pdf

  10. Mintzberg H, Quinn J B and Ghoshal S: ‘The strategy process (European Edition)’, in: ‘British Telecommunications plc: the Transformation of a State-Owned Monopoly’, Prentice HallInternational (1999).

  11. Oftel — http://www.oftel.gov.uk/about/

  12. BT Wholesale — http://www.btwholesale.com/

  13. Ferrante J, Ottenstein K J and Warren J D: ‘The program dependence graph and its use in optimization’, ACM Transactions on Programming Languages and Systems, 9, No 3, pp 319—349 (1987).

    Google Scholar 

  14. Weiser M: ‘Program slicing’, IEEE Transactions on Software Engineering, 10, No 4, pp 352—357 (1984).

    Google Scholar 

  15. Matsuo A Uehara S and Kimura M: A maintenance support system based on high-level control-flow and data dependency’, in Duke R and Kang K-C (Eds): ‘Proceedings of the Asia-Pacific Software Engineering Conference’, (APSEC'95) Brisbane, Australia, IEEE Computer Society Press, pp 390—398 (December 1995).

    Google Scholar 

  16. Huang H, Tsai W T, Bhattacharya S, Chen X P, Wang Y and Sun J: ‘Business rule extraction from legacy code’, in Proceedings of the 20th International Computer Software and Applications Conference (COMPSAC'96), Seoul, South Korea, IEEE Computer Society Press, pp 162—167 (August 1999).

    Google Scholar 

  17. Sneed H and Erdos K: ‘Extracting business rules from source code’, in Cimitile A and Muller H(Eds): ‘Proceedings of 4th Workshop on Program Comprehension’, Berlin, Germany, IEEE Computer Society Press, pp 240—247 (March 1996).

    Google Scholar 

  18. Ruttan P: ‘Recovering business rules to enable legacy transformation’, White Paper, Netron (October 2001) — http://www.netron.com/

Download references

Authors

About this article

Cite this article

Earls, A., Embury, S. & Turner, N. A method for the manual extraction of business rules from legacy source code. BT Technology Journal 20, 127–145 (2002). https://doi.org/10.1023/A:1021311932020

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1021311932020

Keywords

Navigation