Recovering Business Rules from Legacy Source Code for System Modernization

  • Erik Putrycz
  • Anatol W. Kark
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4824)


By using several reverse engineering tools and techniques, it is possible to extract business rules from the legacy source code that are easy to understand by the non-IT experts. These business rules can be used at different stages of system modernization. System maintainers can use the rules to locate in the code parts affected by a change in a rule. Business analysts can use those rules as means to aide understanding of the system at a business level. The extracted rules can serve as source of documentation and possible input for configuring a new system. This paper presents a novel approach for extracting business rules from legacy source code and application of the results at different stages of system modernization.


Reverse engineering Business Rules Information Retrieval System modernization 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Krill, P.: The future’s bright the future’s COBOL (2006)Google Scholar
  2. 2.
    Software, A.G.: Customer survey report: Legacy modernization. Technical report (2007)Google Scholar
  3. 3.
    Bisbal, J., Lawless, D., Wu, B., Grimson, J.: Legacy information systems: issues and directions. Software 16(5), 103–111 (1999)CrossRefGoogle Scholar
  4. 4.
    Koskinen, J., Ahonen, J., Sivula, H., Tilus, T., Lintinen, H., Kankaanpaa, I.: Software modernization decision criteria: An empirical study. In: CSMR 2005. Software Maintenance and Reengineering, 2005. Ninth European Conference, March 21-23, pp. 324–331 (2005)Google Scholar
  5. 5.
    Business Rules Group: What is a business rule? (2007),
  6. 6.
    OMG: Semantics of Business Vocabulary and Business Rules (SBVR) Google Scholar
  7. 7.
    Hendryx, S.: SBVR and MDA: Architecture. Business Rules Journal 6(11) (November 2005)Google Scholar
  8. 8.
    OMG: Production Rule Representation Request For Proposal (2003) Google Scholar
  9. 9.
    Chikofsky II, E.J., C, J.H.: Reverse engineering and design recovery: A taxonomy. IEEE Software, 13–17 (January 1990)Google Scholar
  10. 10.
    Brand, M.G.J., van den, P.K., Verhoef, C.: Reverse engineering and system renovation: an annotated bibliography. ACM Software Engineering Notes 22(1), 42–57 (1997)Google Scholar
  11. 11.
    Edwards, H.M., Munro, M.: RECAST: reverse engineering from COBOL to SSADM specification, 499–508 (April 1993) Google Scholar
  12. 12.
    Gray, R., Bickmore, T., Williams, S.: Reengineering Cobol systems to Ada. Technical report, InVision Software Reengineering, Software Technology Center, Lockheed Palo Alto Laboratories (1995)Google Scholar
  13. 13.
    Arranga, E.: COBOL tools: overview and taxonomy. Software 17(2), 59–69 (2000)CrossRefGoogle Scholar
  14. 14.
    EvolveWare Corporation: S2T legacy documentation tools (2007),
  15. 15.
    EvolveWare Corporation: Evolveware’s S2T technology, a detailed overview (2007),
  16. 16.
    Witte, R., Zhang, Y., Rilling, J.: Empowering software maintainers with semantic web technologies. In: Proceedings of the 4th European Semantic Web Conference (2007)Google Scholar
  17. 17.
    Ko, A., Myers, B., Coblenz, M., Aung, H.: An exploratory study of how developers seek, relate, and collect relevant information during software maintenance tasks. Software Engineering, IEEE Transactions on 32(12), 971–987 (2006)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Erik Putrycz
    • 1
  • Anatol W. Kark
    • 1
  1. 1.Software Engineering Group, National Research CouncilCanada

Personalised recommendations