From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems
-
Upload
jordi-cabot -
Category
Technology
-
view
1.799 -
download
0
Transcript of From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems
![Page 1: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/1.jpg)
1
© 2009 IBM Corporation
Extracting Business Rules from COBOL:A Model-Based Framework
Valerio Cosentino - IBM, AtlanMod, INRIA & EMN, Nantes - [email protected] Cabot - AtlanMod, INRIA & EMN, Nantes - [email protected] Albert – IBM - [email protected] Bauquel – IBM - [email protected] Perronnet – IBM - [email protected]
WCRE 2013, Koblenz, Germany – 14-17 October
![Page 2: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/2.jpg)
2 © 2009 IBM Corporation
Outline
Introduction– Problem– Running example
Framework overview– Model Discovery– Business Term Identification– Business Rule Identification– Business Rule Representation
Early validation Conclusion & future work
![Page 3: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/3.jpg)
3 © 2009 IBM Corporation
Problem
![Page 4: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/4.jpg)
4 © 2009 IBM Corporation
Problem
![Page 5: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/5.jpg)
5 © 2009 IBM Corporation
Problem
![Page 6: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/6.jpg)
6 © 2009 IBM Corporation
Problem
Poor/outdated system documentation
![Page 7: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/7.jpg)
7 © 2009 IBM Corporation
Problem
Poor/outdated system documentation The original developers/business analysts may have left the
organization
![Page 8: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/8.jpg)
8 © 2009 IBM Corporation
Problem
Poor/outdated system documentation The original developers/business analysts may have left the
organization Business rules spread in the source code
![Page 9: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/9.jpg)
9 © 2009 IBM Corporation
Problem
Understanding and evolving the business policies together with the corresponding business rules is not trivial
![Page 10: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/10.jpg)
10 © 2009 IBM Corporation
Problem
Understanding and evolving the business policies together with the corresponding business rules is not trivial
Specially true for legacy systems
![Page 11: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/11.jpg)
11 © 2009 IBM Corporation
COBOL
Largely used:– 200 billion lines of code in existence– 70%-75% of business and transaction systems– 90% of global financial transactions
![Page 12: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/12.jpg)
12 © 2009 IBM Corporation
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
![Page 13: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/13.jpg)
13 © 2009 IBM Corporation
Running exampleBag
Money
Is open
Need 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
![Page 14: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/14.jpg)
14 © 2009 IBM Corporation
Running example Rule embedded in the code:
if a product is bought, its quantity is decreased by one
![Page 15: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/15.jpg)
15 © 2009 IBM Corporation
Running example Rule embedded in the code:
if a product is bought, its quantity is decreased by one
![Page 16: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/16.jpg)
16 © 2009 IBM Corporation
Running example Rule embedded in the code:
if a product is bought, its quantity is decreased by one
![Page 17: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/17.jpg)
17 © 2009 IBM Corporation
Running example Rule embedded in the code:
if a product is bought, its quantity is decreased by one
![Page 18: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/18.jpg)
18 © 2009 IBM Corporation
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, ...)
![Page 19: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/19.jpg)
19 © 2009 IBM Corporation
COBOL Model Discovery
![Page 20: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/20.jpg)
20 © 2009 IBM Corporation
Business Term Identification
Manually: the user selects the variables Automatically: heuristic-based strategy
![Page 21: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/21.jpg)
21 © 2009 IBM Corporation
Business Term Identification
Manually: the user selects the variables Automatically: heuristic-based strategy
1) Statements are separated in groups:– Conditional– Computational– ...
![Page 22: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/22.jpg)
22 © 2009 IBM Corporation
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
![Page 23: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/23.jpg)
23 © 2009 IBM Corporation
Business Term Identification
Manually: the user selects the variables Automatically: heuristic-based strategy
– all target variables in computational statements– all variables in conditional statements– ...
![Page 24: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/24.jpg)
24 © 2009 IBM Corporation
Business Rule Identification
![Page 25: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/25.jpg)
25 © 2009 IBM Corporation
Business Rule Identification – Rule Discovery Rule Fragment Identification:
![Page 26: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/26.jpg)
26 © 2009 IBM Corporation
Business Rule Identification – Rule Discovery Rule Fragment Identification:
![Page 27: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/27.jpg)
27 © 2009 IBM Corporation
Business Rule Identification – Rule Discovery Rule Fragment Identification:
![Page 28: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/28.jpg)
28 © 2009 IBM Corporation
Business Rule Identification – Rule Discovery Rule Context Identification:
![Page 29: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/29.jpg)
29 © 2009 IBM Corporation
Business Rule Representation
![Page 30: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/30.jpg)
30 © 2009 IBM Corporation
Business Rule Representation – Vocabulary Extraction
Optional and manual step
![Page 31: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/31.jpg)
31 © 2009 IBM Corporation
Business Rule Representation – Visualization
Text-based visualization
![Page 32: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/32.jpg)
32 © 2009 IBM Corporation
Business Rule Representation – Visualization
Text-based visualization
![Page 33: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/33.jpg)
33 © 2009 IBM Corporation
Business Rule Representation – Visualization
Graph-based visualization
![Page 34: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/34.jpg)
34 © 2009 IBM Corporation
Business Rule Representation – Visualization
Graph-based visualization
![Page 35: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/35.jpg)
35 © 2009 IBM Corporation
Business Rule Representation – Visualization
Graph-based visualization
![Page 36: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/36.jpg)
36 © 2009 IBM Corporation
Early validation
Does the framework find complete business rules? Are the extracted rules understandable?
![Page 37: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/37.jpg)
37 © 2009 IBM Corporation
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
![Page 38: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/38.jpg)
38 © 2009 IBM Corporation
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
![Page 39: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/39.jpg)
39 © 2009 IBM Corporation
Conclusion and future work
MDE benefits:– Modular framework– Internal/external representation of BRs– Traceability between rules and source code
![Page 40: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/40.jpg)
40 © 2009 IBM Corporation
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)
![Page 41: From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems](https://reader034.fdocuments.net/reader034/viewer/2022052618/554f4784b4c905b9508b4626/html5/thumbnails/41.jpg)
41 © 2009 IBM Corporation
Questions