From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems

3,570 views

Published on

Learn more abouot model-driven engineering and software engineering on: http://modeling-languages.com

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,570
On SlideShare
0
From Embeds
0
Number of Embeds
909
Actions
Shares
0
Downloads
51
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems

  1. 1. Valerio Cosentino - IBM, AtlanMod, INRIA & EMN, Nantes - valerio.cosentino@fr.ibm.com Jordi Cabot - AtlanMod, INRIA & EMN, Nantes - jordi.cabot@mines-nantes.fr Patrick Albert – IBM - albertpa@fr.ibm.com Philippe Bauquel – IBM - bauquel.p@fr.ibm.com Jacques Perronnet – IBM - jacques_perronnet@fr.ibm.com Extracting Business Rules from COBOL: A Model-Based Framework 1 WCRE 2013, Koblenz, Germany – 14-17 October © 2009 IBM Corporation
  2. 2. Outline  Introduction – Problem – Running example  Framework overview – Model Discovery – Business Term Identification – Business Rule Identification – Business Rule Representation  Early validation  Conclusion & future work 2 © 2009 IBM Corporation
  3. 3. Problem 3 © 2009 IBM Corporation
  4. 4. Problem 4 © 2009 IBM Corporation
  5. 5. Problem 5 © 2009 IBM Corporation
  6. 6. Problem  Poor/outdated system documentation 6 © 2009 IBM Corporation
  7. 7. Problem  Poor/outdated system documentation  The original developers/business analysts may have left the organization 7 © 2009 IBM Corporation
  8. 8. Problem  Poor/outdated system documentation  The original developers/business analysts may have left the organization  Business rules spread in the source code 8 © 2009 IBM Corporation
  9. 9. Problem  Understanding and evolving the business policies together with the corresponding business rules is not trivial 9 © 2009 IBM Corporation
  10. 10. Problem  Understanding and evolving the business policies together with the corresponding business rules is not trivial  Specially true for legacy systems 10 © 2009 IBM Corporation
  11. 11. COBOL  Largely used: – 200 billion lines of code in existence – 70%-75% of business and transaction systems – 90% of global financial transactions 11 © 2009 IBM Corporation
  12. 12. COBOL  Largely used: – 200 billion lines of code in existence – 70%-75% of business and transaction systems – 90% of global financial transactions  Shortage of COBOL developers: – Study on 357 Information Technology professionals – 46% says they already notice a shortage – 50% says the average age is > 45 – 22% says the age is > 55 12 © 2009 IBM Corporation
  13. 13. Running example Need Bag Money  13 Is open Quantity Price Business rules in the program: –If the shop is open, then the customer can buy products –If a product P is needed, then the customer buys P –If the client has enough money, then he can buy products –If the client has enough room in his bag, he can buy products –If a product is available, then it may be bought –If a product is bought, its quantity is decreased by one © 2009 IBM Corporation
  14. 14. Running example  14 Rule embedded in the code:  if a product is bought, its quantity is decreased by one © 2009 IBM Corporation
  15. 15. Running example  15 Rule embedded in the code:  if a product is bought, its quantity is decreased by one © 2009 IBM Corporation
  16. 16. Running example  16 Rule embedded in the code:  if a product is bought, its quantity is decreased by one © 2009 IBM Corporation
  17. 17. Running example  17 Rule embedded in the code:  if a product is bought, its quantity is decreased by one © 2009 IBM Corporation
  18. 18. Framework overview  Model Driven Engineering: – Modular framework – Internal/external representation of BRs – Traceability between rules and source code – Mature tools available for model manipulations, visualizations and transformations (e.g., ATL, Xtext, ...) 18 © 2009 IBM Corporation
  19. 19. COBOL Model Discovery 19 © 2009 IBM Corporation
  20. 20. Business Term Identification  Manually: the user selects the variables  Automatically: heuristic-based strategy 20 © 2009 IBM Corporation
  21. 21. Business Term Identification  Manually: the user selects the variables  Automatically: heuristic-based strategy 1) Statements are separated in groups: – Conditional – Computational – ... 21 © 2009 IBM Corporation
  22. 22. Business Term Identification  Manually: the user selects the variables  Automatically: heuristic-based strategy 1) Statements are separated in groups: – Conditional – Computational – ... 2) Variables in statements are classified in: – Condition – Index – Source – Target 22 © 2009 IBM Corporation
  23. 23. Business Term Identification  Manually: the user selects the variables  Automatically: heuristic-based strategy – all target variables in computational statements – all variables in conditional statements – ... 23 © 2009 IBM Corporation
  24. 24. Business Rule Identification 24 © 2009 IBM Corporation
  25. 25. Business Rule Identification – Rule Discovery  25 Rule Fragment Identification: © 2009 IBM Corporation
  26. 26. Business Rule Identification – Rule Discovery  26 Rule Fragment Identification: © 2009 IBM Corporation
  27. 27. Business Rule Identification – Rule Discovery  27 Rule Fragment Identification: © 2009 IBM Corporation
  28. 28. Business Rule Identification – Rule Discovery  28 Rule Context Identification: © 2009 IBM Corporation
  29. 29. Business Rule Representation 29 © 2009 IBM Corporation
  30. 30. Business Rule Representation – Vocabulary Extraction  Optional and manual step 30 © 2009 IBM Corporation
  31. 31. Business Rule Representation – Visualization  Text-based visualization 31 © 2009 IBM Corporation
  32. 32. Business Rule Representation – Visualization  Text-based visualization 32 © 2009 IBM Corporation
  33. 33. Business Rule Representation – Visualization  Graph-based visualization 33 © 2009 IBM Corporation
  34. 34. Business Rule Representation – Visualization  Graph-based visualization 34 © 2009 IBM Corporation
  35. 35. Business Rule Representation – Visualization  Graph-based visualization 35 © 2009 IBM Corporation
  36. 36. Early validation  Does the framework find complete business rules?  Are the extracted rules understandable? 36 © 2009 IBM Corporation
  37. 37. Early validation  Does the framework find complete business rules?  Are the extracted rules understandable?  Analysis of an IBM COBOL application: – 14 programs – 130 variables – 6500 lines of code  4 internal IBM COBOL experts: – They knew the application – They analysed the business rules generated by our framework 37 © 2009 IBM Corporation
  38. 38. Early validation  Does the framework find complete business rules?  Are the extracted rules understandable?  Analysis of an IBM COBOL application: – 14 programs – 130 variables – 6500 lines of code  4 internal IBM COBOL experts: – They knew the application – They analysed the business rules generated by our framework  The framework is able to identify the complete business rules – But some extracted rules include technical knowledge 38 © 2009 IBM Corporation
  39. 39. Conclusion and future work  MDE benefits: – Modular framework – Internal/external representation of BRs – Traceability between rules and source code 39 © 2009 IBM Corporation
  40. 40. Conclusion and future work  MDE benefits: – Modular framework – Internal/external representation of BRs – Traceability between rules and source code  Future work: – Complete the early validation on a real system – Extract and unify the rules buried in other layers (presentation, data, logic) 40 © 2009 IBM Corporation
  41. 41. Questions 41 © 2009 IBM Corporation

×