SlideShare una empresa de Scribd logo
1 de 41
Descargar para leer sin conexión
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
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
Problem

3

© 2009 IBM Corporation
Problem

4

© 2009 IBM Corporation
Problem

5

© 2009 IBM Corporation
Problem

 Poor/outdated system documentation

6

© 2009 IBM Corporation
Problem

 Poor/outdated system documentation
 The original developers/business analysts may have left the
organization

7

© 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
8

© 2009 IBM Corporation
Problem

 Understanding and evolving the business policies together with
the corresponding business rules is not trivial

9

© 2009 IBM Corporation
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
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
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
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
Running example


14

Rule embedded in the code:
 if a product is bought, its quantity is decreased by one

© 2009 IBM Corporation
Running example


15

Rule embedded in the code:
 if a product is bought, its quantity is decreased by one

© 2009 IBM Corporation
Running example


16

Rule embedded in the code:
 if a product is bought, its quantity is decreased by one

© 2009 IBM Corporation
Running example


17

Rule embedded in the code:
 if a product is bought, its quantity is decreased by one

© 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, ...)

18

© 2009 IBM Corporation
COBOL Model Discovery

19

© 2009 IBM Corporation
Business Term Identification
 Manually: the user selects the variables
 Automatically: heuristic-based strategy

20

© 2009 IBM Corporation
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
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
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
Business Rule Identification

24

© 2009 IBM Corporation
Business Rule Identification – Rule Discovery


25

Rule Fragment Identification:

© 2009 IBM Corporation
Business Rule Identification – Rule Discovery


26

Rule Fragment Identification:

© 2009 IBM Corporation
Business Rule Identification – Rule Discovery


27

Rule Fragment Identification:

© 2009 IBM Corporation
Business Rule Identification – Rule Discovery


28

Rule Context Identification:

© 2009 IBM Corporation
Business Rule Representation

29

© 2009 IBM Corporation
Business Rule Representation – Vocabulary Extraction
 Optional and manual step

30

© 2009 IBM Corporation
Business Rule Representation – Visualization
 Text-based visualization

31

© 2009 IBM Corporation
Business Rule Representation – Visualization
 Text-based visualization

32

© 2009 IBM Corporation
Business Rule Representation – Visualization
 Graph-based visualization

33

© 2009 IBM Corporation
Business Rule Representation – Visualization
 Graph-based visualization

34

© 2009 IBM Corporation
Business Rule Representation – Visualization
 Graph-based visualization

35

© 2009 IBM Corporation
Early validation
 Does the framework find complete business rules?
 Are the extracted rules understandable?

36

© 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

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
 The framework is able to identify the complete business rules
– But some extracted rules include technical knowledge
38

© 2009 IBM Corporation
Conclusion and future work
 MDE benefits:
– Modular framework
– Internal/external representation of BRs
– Traceability between rules and source code

39

© 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)

40

© 2009 IBM Corporation
Questions

41

© 2009 IBM Corporation

Más contenido relacionado

Destacado

Mainframes and Cobol Migration - Tools based - Arkin Software
Mainframes and Cobol Migration - Tools based - Arkin SoftwareMainframes and Cobol Migration - Tools based - Arkin Software
Mainframes and Cobol Migration - Tools based - Arkin Software
arkinsoftware
 
The fork in the road - the Application Modernization Roadmap for Notes/Domin...
The fork in the road -  the Application Modernization Roadmap for Notes/Domin...The fork in the road -  the Application Modernization Roadmap for Notes/Domin...
The fork in the road - the Application Modernization Roadmap for Notes/Domin...
John Head
 
Legacy Modernization Strategy for Project Managers
Legacy Modernization Strategy for Project ManagersLegacy Modernization Strategy for Project Managers
Legacy Modernization Strategy for Project Managers
Mohammed Kabir MMSc, PMP
 

Destacado (14)

#MFSummit2016 Build: Innovation and the next generation of COBOL applications
#MFSummit2016 Build: Innovation and the next generation of COBOL applications#MFSummit2016 Build: Innovation and the next generation of COBOL applications
#MFSummit2016 Build: Innovation and the next generation of COBOL applications
 
SAE2 Application Modernization Process
SAE2 Application Modernization ProcessSAE2 Application Modernization Process
SAE2 Application Modernization Process
 
Building next gen applications and microservices
Building next gen applications and microservicesBuilding next gen applications and microservices
Building next gen applications and microservices
 
Mainframes and Cobol Migration - Tools based - Arkin Software
Mainframes and Cobol Migration - Tools based - Arkin SoftwareMainframes and Cobol Migration - Tools based - Arkin Software
Mainframes and Cobol Migration - Tools based - Arkin Software
 
Application Modernization meets Cloud and Mobile ... Where to Start?
Application Modernization meets Cloud and Mobile ... Where to Start?Application Modernization meets Cloud and Mobile ... Where to Start?
Application Modernization meets Cloud and Mobile ... Where to Start?
 
Mainframe Application Modernization for Enterprise Developers
Mainframe Application Modernization for Enterprise DevelopersMainframe Application Modernization for Enterprise Developers
Mainframe Application Modernization for Enterprise Developers
 
Time to-migrate-ent-legacy-app-modernisation
Time to-migrate-ent-legacy-app-modernisationTime to-migrate-ent-legacy-app-modernisation
Time to-migrate-ent-legacy-app-modernisation
 
Developing Enterprise Applications for the Cloud, from Monolith to Microservices
Developing Enterprise Applications for the Cloud,from Monolith to MicroservicesDeveloping Enterprise Applications for the Cloud,from Monolith to Microservices
Developing Enterprise Applications for the Cloud, from Monolith to Microservices
 
Service Oriented Approach to Application Modernization sept 2010
Service Oriented Approach to Application Modernization sept 2010Service Oriented Approach to Application Modernization sept 2010
Service Oriented Approach to Application Modernization sept 2010
 
Best Practices in Targeted Legacy Modernization
Best Practices in Targeted Legacy ModernizationBest Practices in Targeted Legacy Modernization
Best Practices in Targeted Legacy Modernization
 
CA Gen Updates: Application Modernization and What's New
CA Gen Updates: Application Modernization and What's NewCA Gen Updates: Application Modernization and What's New
CA Gen Updates: Application Modernization and What's New
 
IBM Digital Experience 2015 - APPLICATION MODERNIZATION IN THE DIGITAL EXPERI...
IBM Digital Experience 2015 - APPLICATION MODERNIZATION IN THE DIGITAL EXPERI...IBM Digital Experience 2015 - APPLICATION MODERNIZATION IN THE DIGITAL EXPERI...
IBM Digital Experience 2015 - APPLICATION MODERNIZATION IN THE DIGITAL EXPERI...
 
The fork in the road - the Application Modernization Roadmap for Notes/Domin...
The fork in the road -  the Application Modernization Roadmap for Notes/Domin...The fork in the road -  the Application Modernization Roadmap for Notes/Domin...
The fork in the road - the Application Modernization Roadmap for Notes/Domin...
 
Legacy Modernization Strategy for Project Managers
Legacy Modernization Strategy for Project ManagersLegacy Modernization Strategy for Project Managers
Legacy Modernization Strategy for Project Managers
 

Similar a Extracting Business Rules from COBOL: A Model-Based Framework

A Model Driven Reverse Engineering framework for extracting business rules ou...
A Model Driven Reverse Engineering framework for extracting business rules ou...A Model Driven Reverse Engineering framework for extracting business rules ou...
A Model Driven Reverse Engineering framework for extracting business rules ou...
RuleML
 
Continuous Deployment for Deep Learning
Continuous Deployment for Deep LearningContinuous Deployment for Deep Learning
Continuous Deployment for Deep Learning
Databricks
 
Relatório Anual IBM 2013 v1
Relatório Anual IBM 2013 v1Relatório Anual IBM 2013 v1
Relatório Anual IBM 2013 v1
Anderson Bassani
 
Impact 2014 - enabling an intelligent enterprise theory and practice
Impact 2014 -  enabling an intelligent enterprise theory and practiceImpact 2014 -  enabling an intelligent enterprise theory and practice
Impact 2014 - enabling an intelligent enterprise theory and practice
Andrew Coleman
 

Similar a Extracting Business Rules from COBOL: A Model-Based Framework (20)

A Model Driven Reverse Engineering framework for extracting business rules ou...
A Model Driven Reverse Engineering framework for extracting business rules ou...A Model Driven Reverse Engineering framework for extracting business rules ou...
A Model Driven Reverse Engineering framework for extracting business rules ou...
 
Continuous Deployment for Deep Learning
Continuous Deployment for Deep LearningContinuous Deployment for Deep Learning
Continuous Deployment for Deep Learning
 
OBI Analytics in IBM
OBI Analytics in IBMOBI Analytics in IBM
OBI Analytics in IBM
 
NRB MAINFRAME DAY 04 - Yann Kindelberger - New generation of application arch...
NRB MAINFRAME DAY 04 - Yann Kindelberger - New generation of application arch...NRB MAINFRAME DAY 04 - Yann Kindelberger - New generation of application arch...
NRB MAINFRAME DAY 04 - Yann Kindelberger - New generation of application arch...
 
TenYearsCPOptimizer
TenYearsCPOptimizerTenYearsCPOptimizer
TenYearsCPOptimizer
 
Academic Discussion Group Workshop 2018 November 10 st 2018 Nimbix CAPI SNAP...
Academic Discussion  Group Workshop 2018 November 10 st 2018 Nimbix CAPI SNAP...Academic Discussion  Group Workshop 2018 November 10 st 2018 Nimbix CAPI SNAP...
Academic Discussion Group Workshop 2018 November 10 st 2018 Nimbix CAPI SNAP...
 
NRB MAINFRAME DAY 05 - Paul Pilotto - How to extract business rules from Lega...
NRB MAINFRAME DAY 05 - Paul Pilotto - How to extract business rules from Lega...NRB MAINFRAME DAY 05 - Paul Pilotto - How to extract business rules from Lega...
NRB MAINFRAME DAY 05 - Paul Pilotto - How to extract business rules from Lega...
 
Optimizing z/OS Batch
Optimizing z/OS BatchOptimizing z/OS Batch
Optimizing z/OS Batch
 
Viably IBM i for ERP
Viably IBM i for ERPViably IBM i for ERP
Viably IBM i for ERP
 
Relatório Anual IBM 2013 v1
Relatório Anual IBM 2013 v1Relatório Anual IBM 2013 v1
Relatório Anual IBM 2013 v1
 
A look into the crystal ball at JBoss BRMS and BPM Suite
A look into the crystal ball at JBoss BRMS and BPM SuiteA look into the crystal ball at JBoss BRMS and BPM Suite
A look into the crystal ball at JBoss BRMS and BPM Suite
 
Lessonslearnedeuro
LessonslearnedeuroLessonslearnedeuro
Lessonslearnedeuro
 
Accelerate your digital transformation with IBM Cloud for CIO Focus Summit
Accelerate your digital transformation with IBM Cloud for CIO Focus SummitAccelerate your digital transformation with IBM Cloud for CIO Focus Summit
Accelerate your digital transformation with IBM Cloud for CIO Focus Summit
 
X-Analysis Application Process Mapping
X-Analysis Application Process MappingX-Analysis Application Process Mapping
X-Analysis Application Process Mapping
 
IBM Cloud Private and IBM Power Systems: Overview and Real-World Scenarios
IBM Cloud Private and IBM Power Systems: Overview and Real-World ScenariosIBM Cloud Private and IBM Power Systems: Overview and Real-World Scenarios
IBM Cloud Private and IBM Power Systems: Overview and Real-World Scenarios
 
Enhanced 360 degree view of customer
Enhanced 360 degree view of customerEnhanced 360 degree view of customer
Enhanced 360 degree view of customer
 
Optimization: from mathematical tools to real applications
Optimization: from mathematical tools to real applicationsOptimization: from mathematical tools to real applications
Optimization: from mathematical tools to real applications
 
Impact 2014 - enabling an intelligent enterprise theory and practice
Impact 2014 -  enabling an intelligent enterprise theory and practiceImpact 2014 -  enabling an intelligent enterprise theory and practice
Impact 2014 - enabling an intelligent enterprise theory and practice
 
Developing Reusable Solutions With IBM Case Manager
Developing Reusable Solutions With IBM Case Manager Developing Reusable Solutions With IBM Case Manager
Developing Reusable Solutions With IBM Case Manager
 
OEM CISCO presentation
OEM CISCO presentationOEM CISCO presentation
OEM CISCO presentation
 

Más de Valerio Cosentino

Gamification oss
Gamification ossGamification oss
Gamification oss
Valerio Cosentino
 

Más de Valerio Cosentino (18)

Tracking counterfeiting on the web with python and ml
Tracking counterfeiting on the web with python and mlTracking counterfeiting on the web with python and ml
Tracking counterfeiting on the web with python and ml
 
GrimoireLab: Measuring the health of your software project with Python
GrimoireLab: Measuring the health of your software project with PythonGrimoireLab: Measuring the health of your software project with Python
GrimoireLab: Measuring the health of your software project with Python
 
Perceval, Graal and Arthur: The Quest for Software Project Data
Perceval, Graal and Arthur: The Quest for Software Project DataPerceval, Graal and Arthur: The Quest for Software Project Data
Perceval, Graal and Arthur: The Quest for Software Project Data
 
Gamification oss
Gamification ossGamification oss
Gamification oss
 
SortingHat: Wizardry on Software Project Members
SortingHat: Wizardry on Software Project MembersSortingHat: Wizardry on Software Project Members
SortingHat: Wizardry on Software Project Members
 
Measuring Software development with GrimoireLab
Measuring Software development with GrimoireLabMeasuring Software development with GrimoireLab
Measuring Software development with GrimoireLab
 
Graal The Quest for Source Code Knowledge
Graal  The Quest for Source Code KnowledgeGraal  The Quest for Source Code Knowledge
Graal The Quest for Source Code Knowledge
 
Measuring Software development with GrimoireLab
Measuring Software development with GrimoireLabMeasuring Software development with GrimoireLab
Measuring Software development with GrimoireLab
 
Crossminer and GrimoireLab
Crossminer and GrimoireLabCrossminer and GrimoireLab
Crossminer and GrimoireLab
 
Perceval: Software Project Data at Your Will
Perceval: Software Project Data at Your WillPerceval: Software Project Data at Your Will
Perceval: Software Project Data at Your Will
 
Extending grimoirelab
Extending grimoirelabExtending grimoirelab
Extending grimoirelab
 
Perceval
PercevalPerceval
Perceval
 
Gamification pres-scme-2017
Gamification pres-scme-2017Gamification pres-scme-2017
Gamification pres-scme-2017
 
A Model-Based Approach for Extracting Business Rules out of Legacy Informatio...
A Model-Based Approach for Extracting Business Rules out of Legacy Informatio...A Model-Based Approach for Extracting Business Rules out of Legacy Informatio...
A Model-Based Approach for Extracting Business Rules out of Legacy Informatio...
 
Gitana: a SQL-based Git Repository Inspector
Gitana: a SQL-based Git Repository InspectorGitana: a SQL-based Git Repository Inspector
Gitana: a SQL-based Git Repository Inspector
 
Assessing the Bus Factor of Git Repositories
Assessing the Bus Factor of Git RepositoriesAssessing the Bus Factor of Git Repositories
Assessing the Bus Factor of Git Repositories
 
A Model-Driven Approach to Generate External DSLs from Object-Oriented APIs
A Model-Driven Approach to Generate External DSLs from Object-Oriented APIsA Model-Driven Approach to Generate External DSLs from Object-Oriented APIs
A Model-Driven Approach to Generate External DSLs from Object-Oriented APIs
 
Extracting UML/OCL Integrity Constraints and Derived Types from Relational Da...
Extracting UML/OCL Integrity Constraints and Derived Types from Relational Da...Extracting UML/OCL Integrity Constraints and Derived Types from Relational Da...
Extracting UML/OCL Integrity Constraints and Derived Types from Relational Da...
 

Último

Nayabad Call Girls ✔ 8005736733 ✔ Hot Model With Sexy Bhabi Ready For Sex At ...
Nayabad Call Girls ✔ 8005736733 ✔ Hot Model With Sexy Bhabi Ready For Sex At ...Nayabad Call Girls ✔ 8005736733 ✔ Hot Model With Sexy Bhabi Ready For Sex At ...
Nayabad Call Girls ✔ 8005736733 ✔ Hot Model With Sexy Bhabi Ready For Sex At ...
aamir
 
Call Girls In Goa 9316020077 Goa Call Girl By Indian Call Girls Goa
Call Girls In Goa  9316020077 Goa  Call Girl By Indian Call Girls GoaCall Girls In Goa  9316020077 Goa  Call Girl By Indian Call Girls Goa
Call Girls In Goa 9316020077 Goa Call Girl By Indian Call Girls Goa
sexy call girls service in goa
 

Último (20)

📞 Contact Number 8617697112 VIP Ganderbal Call Girls
📞 Contact Number 8617697112 VIP Ganderbal Call Girls📞 Contact Number 8617697112 VIP Ganderbal Call Girls
📞 Contact Number 8617697112 VIP Ganderbal Call Girls
 
Sonagachi ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Rea...
Sonagachi ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Rea...Sonagachi ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Rea...
Sonagachi ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Rea...
 
Behala ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Ready ...
Behala ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Ready ...Behala ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Ready ...
Behala ( Call Girls ) Kolkata ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Ready ...
 
Model Call Girls In Pazhavanthangal WhatsApp Booking 7427069034 call girl ser...
Model Call Girls In Pazhavanthangal WhatsApp Booking 7427069034 call girl ser...Model Call Girls In Pazhavanthangal WhatsApp Booking 7427069034 call girl ser...
Model Call Girls In Pazhavanthangal WhatsApp Booking 7427069034 call girl ser...
 
❤Personal Whatsapp Number Keylong Call Girls 8617697112 💦✅.
❤Personal Whatsapp Number Keylong Call Girls 8617697112 💦✅.❤Personal Whatsapp Number Keylong Call Girls 8617697112 💦✅.
❤Personal Whatsapp Number Keylong Call Girls 8617697112 💦✅.
 
𓀤Call On 6297143586 𓀤 Ultadanga Call Girls In All Kolkata 24/7 Provide Call W...
𓀤Call On 6297143586 𓀤 Ultadanga Call Girls In All Kolkata 24/7 Provide Call W...𓀤Call On 6297143586 𓀤 Ultadanga Call Girls In All Kolkata 24/7 Provide Call W...
𓀤Call On 6297143586 𓀤 Ultadanga Call Girls In All Kolkata 24/7 Provide Call W...
 
Call Girls Manjri Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Manjri Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Manjri Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Manjri Call Me 7737669865 Budget Friendly No Advance Booking
 
Call Girls in Barasat | 7001035870 At Low Cost Cash Payment Booking
Call Girls in Barasat | 7001035870 At Low Cost Cash Payment BookingCall Girls in Barasat | 7001035870 At Low Cost Cash Payment Booking
Call Girls in Barasat | 7001035870 At Low Cost Cash Payment Booking
 
2k Shot Call girls Laxmi Nagar Delhi 9205541914
2k Shot Call girls Laxmi Nagar Delhi 92055419142k Shot Call girls Laxmi Nagar Delhi 9205541914
2k Shot Call girls Laxmi Nagar Delhi 9205541914
 
Independent Garulia Escorts ✔ 9332606886✔ Full Night With Room Online Booking...
Independent Garulia Escorts ✔ 9332606886✔ Full Night With Room Online Booking...Independent Garulia Escorts ✔ 9332606886✔ Full Night With Room Online Booking...
Independent Garulia Escorts ✔ 9332606886✔ Full Night With Room Online Booking...
 
Model Call Girls In Ariyalur WhatsApp Booking 7427069034 call girl service 24...
Model Call Girls In Ariyalur WhatsApp Booking 7427069034 call girl service 24...Model Call Girls In Ariyalur WhatsApp Booking 7427069034 call girl service 24...
Model Call Girls In Ariyalur WhatsApp Booking 7427069034 call girl service 24...
 
𓀤Call On 6297143586 𓀤 Sonagachi Call Girls In All Kolkata 24/7 Provide Call W...
𓀤Call On 6297143586 𓀤 Sonagachi Call Girls In All Kolkata 24/7 Provide Call W...𓀤Call On 6297143586 𓀤 Sonagachi Call Girls In All Kolkata 24/7 Provide Call W...
𓀤Call On 6297143586 𓀤 Sonagachi Call Girls In All Kolkata 24/7 Provide Call W...
 
Nayabad Call Girls ✔ 8005736733 ✔ Hot Model With Sexy Bhabi Ready For Sex At ...
Nayabad Call Girls ✔ 8005736733 ✔ Hot Model With Sexy Bhabi Ready For Sex At ...Nayabad Call Girls ✔ 8005736733 ✔ Hot Model With Sexy Bhabi Ready For Sex At ...
Nayabad Call Girls ✔ 8005736733 ✔ Hot Model With Sexy Bhabi Ready For Sex At ...
 
Independent Hatiara Escorts ✔ 9332606886✔ Full Night With Room Online Booking...
Independent Hatiara Escorts ✔ 9332606886✔ Full Night With Room Online Booking...Independent Hatiara Escorts ✔ 9332606886✔ Full Night With Room Online Booking...
Independent Hatiara Escorts ✔ 9332606886✔ Full Night With Room Online Booking...
 
Verified Trusted Call Girls Tambaram Chennai ✔✔7427069034 Independent Chenna...
Verified Trusted Call Girls Tambaram Chennai ✔✔7427069034  Independent Chenna...Verified Trusted Call Girls Tambaram Chennai ✔✔7427069034  Independent Chenna...
Verified Trusted Call Girls Tambaram Chennai ✔✔7427069034 Independent Chenna...
 
Call Girls In Goa 9316020077 Goa Call Girl By Indian Call Girls Goa
Call Girls In Goa  9316020077 Goa  Call Girl By Indian Call Girls GoaCall Girls In Goa  9316020077 Goa  Call Girl By Indian Call Girls Goa
Call Girls In Goa 9316020077 Goa Call Girl By Indian Call Girls Goa
 
Borum Call Girls Service ☎ ️93326-06886 ❤️‍🔥 Enjoy 24/7 Escort Service
Borum Call Girls Service ☎ ️93326-06886 ❤️‍🔥 Enjoy 24/7 Escort ServiceBorum Call Girls Service ☎ ️93326-06886 ❤️‍🔥 Enjoy 24/7 Escort Service
Borum Call Girls Service ☎ ️93326-06886 ❤️‍🔥 Enjoy 24/7 Escort Service
 
Bhimtal ❤CALL GIRL 8617697112 ❤CALL GIRLS IN Bhimtal ESCORT SERVICE❤CALL GIRL
Bhimtal ❤CALL GIRL 8617697112 ❤CALL GIRLS IN Bhimtal ESCORT SERVICE❤CALL GIRLBhimtal ❤CALL GIRL 8617697112 ❤CALL GIRLS IN Bhimtal ESCORT SERVICE❤CALL GIRL
Bhimtal ❤CALL GIRL 8617697112 ❤CALL GIRLS IN Bhimtal ESCORT SERVICE❤CALL GIRL
 
Hotel And Home Service Available Kolkata Call Girls Howrah ✔ 6297143586 ✔Call...
Hotel And Home Service Available Kolkata Call Girls Howrah ✔ 6297143586 ✔Call...Hotel And Home Service Available Kolkata Call Girls Howrah ✔ 6297143586 ✔Call...
Hotel And Home Service Available Kolkata Call Girls Howrah ✔ 6297143586 ✔Call...
 
Almora call girls 📞 8617697112 At Low Cost Cash Payment Booking
Almora call girls 📞 8617697112 At Low Cost Cash Payment BookingAlmora call girls 📞 8617697112 At Low Cost Cash Payment Booking
Almora call girls 📞 8617697112 At Low Cost Cash Payment Booking
 

Extracting Business Rules from COBOL: A Model-Based Framework

  • 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. 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. Problem 3 © 2009 IBM Corporation
  • 4. Problem 4 © 2009 IBM Corporation
  • 5. Problem 5 © 2009 IBM Corporation
  • 6. Problem  Poor/outdated system documentation 6 © 2009 IBM Corporation
  • 7. Problem  Poor/outdated system documentation  The original developers/business analysts may have left the organization 7 © 2009 IBM Corporation
  • 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. Problem  Understanding and evolving the business policies together with the corresponding business rules is not trivial 9 © 2009 IBM Corporation
  • 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. 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. 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. 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. Running example  14 Rule embedded in the code:  if a product is bought, its quantity is decreased by one © 2009 IBM Corporation
  • 15. Running example  15 Rule embedded in the code:  if a product is bought, its quantity is decreased by one © 2009 IBM Corporation
  • 16. Running example  16 Rule embedded in the code:  if a product is bought, its quantity is decreased by one © 2009 IBM Corporation
  • 17. Running example  17 Rule embedded in the code:  if a product is bought, its quantity is decreased by one © 2009 IBM Corporation
  • 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. COBOL Model Discovery 19 © 2009 IBM Corporation
  • 20. Business Term Identification  Manually: the user selects the variables  Automatically: heuristic-based strategy 20 © 2009 IBM Corporation
  • 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. 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. 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. Business Rule Identification 24 © 2009 IBM Corporation
  • 25. Business Rule Identification – Rule Discovery  25 Rule Fragment Identification: © 2009 IBM Corporation
  • 26. Business Rule Identification – Rule Discovery  26 Rule Fragment Identification: © 2009 IBM Corporation
  • 27. Business Rule Identification – Rule Discovery  27 Rule Fragment Identification: © 2009 IBM Corporation
  • 28. Business Rule Identification – Rule Discovery  28 Rule Context Identification: © 2009 IBM Corporation
  • 29. Business Rule Representation 29 © 2009 IBM Corporation
  • 30. Business Rule Representation – Vocabulary Extraction  Optional and manual step 30 © 2009 IBM Corporation
  • 31. Business Rule Representation – Visualization  Text-based visualization 31 © 2009 IBM Corporation
  • 32. Business Rule Representation – Visualization  Text-based visualization 32 © 2009 IBM Corporation
  • 33. Business Rule Representation – Visualization  Graph-based visualization 33 © 2009 IBM Corporation
  • 34. Business Rule Representation – Visualization  Graph-based visualization 34 © 2009 IBM Corporation
  • 35. Business Rule Representation – Visualization  Graph-based visualization 35 © 2009 IBM Corporation
  • 36. Early validation  Does the framework find complete business rules?  Are the extracted rules understandable? 36 © 2009 IBM Corporation
  • 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. 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. Conclusion and future work  MDE benefits: – Modular framework – Internal/external representation of BRs – Traceability between rules and source code 39 © 2009 IBM Corporation
  • 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