SlideShare ist ein Scribd-Unternehmen logo
1 von 41
Downloaden Sie, um offline zu lesen
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

Weitere ähnliche Inhalte

Was ist angesagt?

Paris Java User Group : Enabling Agile Business and IT Collaboration
Paris Java User Group : Enabling Agile Business  and IT CollaborationParis Java User Group : Enabling Agile Business  and IT Collaboration
Paris Java User Group : Enabling Agile Business and IT CollaborationDan Selman
 
What's new in notes domino 901 feature pack 9
What's new in notes domino 901 feature pack 9What's new in notes domino 901 feature pack 9
What's new in notes domino 901 feature pack 9sreeJk
 
How to avoid the Commodity Trap
How to avoid the Commodity TrapHow to avoid the Commodity Trap
How to avoid the Commodity TrapRoel van Lanen
 
Rome Infrastructure Color
Rome Infrastructure ColorRome Infrastructure Color
Rome Infrastructure Colorrlynes
 
Move up to POWER7 and IBM i 7, IBM Power Event
Move up to POWER7 and IBM i 7, IBM Power EventMove up to POWER7 and IBM i 7, IBM Power Event
Move up to POWER7 and IBM i 7, IBM Power EventIBM Danmark
 
IBM zUniversity 2004 : ILOG JRules on IBM eServer zSeries
IBM zUniversity 2004 : ILOG JRules on IBM eServer zSeriesIBM zUniversity 2004 : ILOG JRules on IBM eServer zSeries
IBM zUniversity 2004 : ILOG JRules on IBM eServer zSeriesDan Selman
 
IBM zEC12 zAware and Flash Express
IBM zEC12 zAware and Flash ExpressIBM zEC12 zAware and Flash Express
IBM zEC12 zAware and Flash ExpressMike Smith
 
Maximo Mary's Microphone interview with Paula Hollywood
Maximo Mary's Microphone interview with Paula HollywoodMaximo Mary's Microphone interview with Paula Hollywood
Maximo Mary's Microphone interview with Paula HollywoodMary Gorczynski
 
Improving Software Delivery with Software Defined Environments (IBM Interconn...
Improving Software Delivery with Software Defined Environments (IBM Interconn...Improving Software Delivery with Software Defined Environments (IBM Interconn...
Improving Software Delivery with Software Defined Environments (IBM Interconn...Michael Elder
 
We4IT LCTY 2013 - captain mobility - whats new ibm notes traveler and mobile ...
We4IT LCTY 2013 - captain mobility - whats new ibm notes traveler and mobile ...We4IT LCTY 2013 - captain mobility - whats new ibm notes traveler and mobile ...
We4IT LCTY 2013 - captain mobility - whats new ibm notes traveler and mobile ...We4IT Group
 
Convergências, Integração e Desempenho no IBM System z Enterprise
Convergências, Integração e Desempenho no IBM System z Enterprise Convergências, Integração e Desempenho no IBM System z Enterprise
Convergências, Integração e Desempenho no IBM System z Enterprise Impacta Eventos
 

Was ist angesagt? (12)

Paris Java User Group : Enabling Agile Business and IT Collaboration
Paris Java User Group : Enabling Agile Business  and IT CollaborationParis Java User Group : Enabling Agile Business  and IT Collaboration
Paris Java User Group : Enabling Agile Business and IT Collaboration
 
What's new in notes domino 901 feature pack 9
What's new in notes domino 901 feature pack 9What's new in notes domino 901 feature pack 9
What's new in notes domino 901 feature pack 9
 
How to avoid the Commodity Trap
How to avoid the Commodity TrapHow to avoid the Commodity Trap
How to avoid the Commodity Trap
 
Rome Infrastructure Color
Rome Infrastructure ColorRome Infrastructure Color
Rome Infrastructure Color
 
Move up to POWER7 and IBM i 7, IBM Power Event
Move up to POWER7 and IBM i 7, IBM Power EventMove up to POWER7 and IBM i 7, IBM Power Event
Move up to POWER7 and IBM i 7, IBM Power Event
 
IBM zUniversity 2004 : ILOG JRules on IBM eServer zSeries
IBM zUniversity 2004 : ILOG JRules on IBM eServer zSeriesIBM zUniversity 2004 : ILOG JRules on IBM eServer zSeries
IBM zUniversity 2004 : ILOG JRules on IBM eServer zSeries
 
IBM zEC12 zAware and Flash Express
IBM zEC12 zAware and Flash ExpressIBM zEC12 zAware and Flash Express
IBM zEC12 zAware and Flash Express
 
Maximo Mary's Microphone interview with Paula Hollywood
Maximo Mary's Microphone interview with Paula HollywoodMaximo Mary's Microphone interview with Paula Hollywood
Maximo Mary's Microphone interview with Paula Hollywood
 
What is the latest from the IBM OMEGAMON portfolio?
What is the latest from the IBM OMEGAMON portfolio?What is the latest from the IBM OMEGAMON portfolio?
What is the latest from the IBM OMEGAMON portfolio?
 
Improving Software Delivery with Software Defined Environments (IBM Interconn...
Improving Software Delivery with Software Defined Environments (IBM Interconn...Improving Software Delivery with Software Defined Environments (IBM Interconn...
Improving Software Delivery with Software Defined Environments (IBM Interconn...
 
We4IT LCTY 2013 - captain mobility - whats new ibm notes traveler and mobile ...
We4IT LCTY 2013 - captain mobility - whats new ibm notes traveler and mobile ...We4IT LCTY 2013 - captain mobility - whats new ibm notes traveler and mobile ...
We4IT LCTY 2013 - captain mobility - whats new ibm notes traveler and mobile ...
 
Convergências, Integração e Desempenho no IBM System z Enterprise
Convergências, Integração e Desempenho no IBM System z Enterprise Convergências, Integração e Desempenho no IBM System z Enterprise
Convergências, Integração e Desempenho no IBM System z Enterprise
 

Andere mochten auch

Under the Hood: Model-Based Development in the Automotive Industry by Darren ...
Under the Hood: Model-Based Development in the Automotive Industry by Darren ...Under the Hood: Model-Based Development in the Automotive Industry by Darren ...
Under the Hood: Model-Based Development in the Automotive Industry by Darren ...Jordi Cabot
 
Modeling Safe Interface Interactions in Web Applications (ER´09)
Modeling Safe Interface Interactions in Web Applications (ER´09)Modeling Safe Interface Interactions in Web Applications (ER´09)
Modeling Safe Interface Interactions in Web Applications (ER´09)Jordi Cabot
 
Programming in UML: An Introduction to fUML and Alf
Programming in UML: An Introduction to fUML and AlfProgramming in UML: An Introduction to fUML and Alf
Programming in UML: An Introduction to fUML and AlfEd Seidewitz
 
OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...
OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...
OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...OCCIware
 
Vbisigk
VbisigkVbisigk
VbisigkISIG
 
Environnement de développement de bases de données
Environnement de développement de bases de donnéesEnvironnement de développement de bases de données
Environnement de développement de bases de donnéesISIG
 
Developpement mobile vs open source
Developpement mobile vs open sourceDeveloppement mobile vs open source
Developpement mobile vs open sourceKorteby Farouk
 
The Importance of Opposites
The Importance of OppositesThe Importance of Opposites
The Importance of OppositesEdward Willink
 
SysML adoption in France
SysML adoption in FranceSysML adoption in France
SysML adoption in FrancePascal Roques
 
La & edm in practice
La & edm in practiceLa & edm in practice
La & edm in practicebharati k
 
Be serious with sirius your journey from first experimentation to large deplo...
Be serious with sirius your journey from first experimentation to large deplo...Be serious with sirius your journey from first experimentation to large deplo...
Be serious with sirius your journey from first experimentation to large deplo...Etienne Juliot
 
Local Optimizations in Eclipse QVTc and QVTr using the Micro-Mapping Model of...
Local Optimizations in Eclipse QVTc and QVTr using the Micro-Mapping Model of...Local Optimizations in Eclipse QVTc and QVTr using the Micro-Mapping Model of...
Local Optimizations in Eclipse QVTc and QVTr using the Micro-Mapping Model of...Edward Willink
 
Frame latency evaluation: when simulation and analysis alone are not enough
Frame latency evaluation: when simulation and analysis alone are not enoughFrame latency evaluation: when simulation and analysis alone are not enough
Frame latency evaluation: when simulation and analysis alone are not enoughRealTime-at-Work (RTaW)
 
النشاط العلمي - الكهرباء
النشاط العلمي  -   الكهرباءالنشاط العلمي  -   الكهرباء
النشاط العلمي - الكهرباءErradi Mohamed
 
Yet Another Three QVT Languages
Yet Another Three QVT LanguagesYet Another Three QVT Languages
Yet Another Three QVT LanguagesEdward Willink
 
Prfc rhapsody simulation_1.0
Prfc rhapsody simulation_1.0Prfc rhapsody simulation_1.0
Prfc rhapsody simulation_1.0Pascal Roques
 
Collaboration and Governance of Open Source Projects
Collaboration and Governance of Open Source ProjectsCollaboration and Governance of Open Source Projects
Collaboration and Governance of Open Source ProjectsJordi Cabot
 

Andere mochten auch (20)

Under the Hood: Model-Based Development in the Automotive Industry by Darren ...
Under the Hood: Model-Based Development in the Automotive Industry by Darren ...Under the Hood: Model-Based Development in the Automotive Industry by Darren ...
Under the Hood: Model-Based Development in the Automotive Industry by Darren ...
 
Modeling Safe Interface Interactions in Web Applications (ER´09)
Modeling Safe Interface Interactions in Web Applications (ER´09)Modeling Safe Interface Interactions in Web Applications (ER´09)
Modeling Safe Interface Interactions in Web Applications (ER´09)
 
Programming in UML: An Introduction to fUML and Alf
Programming in UML: An Introduction to fUML and AlfProgramming in UML: An Introduction to fUML and Alf
Programming in UML: An Introduction to fUML and Alf
 
Aligning OCL and UML
Aligning OCL and UMLAligning OCL and UML
Aligning OCL and UML
 
OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...
OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...
OCCIware, an extensible, standard-based XaaS consumer platform to manage ever...
 
Vbisigk
VbisigkVbisigk
Vbisigk
 
Environnement de développement de bases de données
Environnement de développement de bases de donnéesEnvironnement de développement de bases de données
Environnement de développement de bases de données
 
UMLX and QVT and ATL
UMLX and QVT and ATLUMLX and QVT and ATL
UMLX and QVT and ATL
 
Developpement mobile vs open source
Developpement mobile vs open sourceDeveloppement mobile vs open source
Developpement mobile vs open source
 
The Importance of Opposites
The Importance of OppositesThe Importance of Opposites
The Importance of Opposites
 
SysML adoption in France
SysML adoption in FranceSysML adoption in France
SysML adoption in France
 
La & edm in practice
La & edm in practiceLa & edm in practice
La & edm in practice
 
Be serious with sirius your journey from first experimentation to large deplo...
Be serious with sirius your journey from first experimentation to large deplo...Be serious with sirius your journey from first experimentation to large deplo...
Be serious with sirius your journey from first experimentation to large deplo...
 
Local Optimizations in Eclipse QVTc and QVTr using the Micro-Mapping Model of...
Local Optimizations in Eclipse QVTc and QVTr using the Micro-Mapping Model of...Local Optimizations in Eclipse QVTc and QVTr using the Micro-Mapping Model of...
Local Optimizations in Eclipse QVTc and QVTr using the Micro-Mapping Model of...
 
Mix
MixMix
Mix
 
Frame latency evaluation: when simulation and analysis alone are not enough
Frame latency evaluation: when simulation and analysis alone are not enoughFrame latency evaluation: when simulation and analysis alone are not enough
Frame latency evaluation: when simulation and analysis alone are not enough
 
النشاط العلمي - الكهرباء
النشاط العلمي  -   الكهرباءالنشاط العلمي  -   الكهرباء
النشاط العلمي - الكهرباء
 
Yet Another Three QVT Languages
Yet Another Three QVT LanguagesYet Another Three QVT Languages
Yet Another Three QVT Languages
 
Prfc rhapsody simulation_1.0
Prfc rhapsody simulation_1.0Prfc rhapsody simulation_1.0
Prfc rhapsody simulation_1.0
 
Collaboration and Governance of Open Source Projects
Collaboration and Governance of Open Source ProjectsCollaboration and Governance of Open Source Projects
Collaboration and Governance of Open Source Projects
 

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

Continuous Deployment for Deep Learning
Continuous Deployment for Deep LearningContinuous Deployment for Deep Learning
Continuous Deployment for Deep LearningDatabricks
 
OBI Analytics in IBM
OBI Analytics in IBMOBI Analytics in IBM
OBI Analytics in IBMpoore120
 
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...NRB
 
TenYearsCPOptimizer
TenYearsCPOptimizerTenYearsCPOptimizer
TenYearsCPOptimizerPaulShawIBM
 
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...Ganesan Narayanasamy
 
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...NRB
 
Optimizing z/OS Batch
Optimizing z/OS BatchOptimizing z/OS Batch
Optimizing z/OS BatchMartin Packer
 
Viably IBM i for ERP
Viably IBM i for ERPViably IBM i for ERP
Viably IBM i for ERPHelpSystems
 
Relatório Anual IBM 2013 v1
Relatório Anual IBM 2013 v1Relatório Anual IBM 2013 v1
Relatório Anual IBM 2013 v1Anderson Bassani
 
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 SuiteEric D. Schabell
 
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 SummitMark Osborn
 
X-Analysis Application Process Mapping
X-Analysis Application Process MappingX-Analysis Application Process Mapping
X-Analysis Application Process MappingFresche Solutions
 
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 ScenariosJoe Cropper
 
Enhanced 360 degree view of customer
Enhanced 360 degree view of customerEnhanced 360 degree view of customer
Enhanced 360 degree view of customerTrisha Dutta
 
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 applicationsPhilippe Laborie
 
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 practiceAndrew Coleman
 
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 Pyramid Solutions, Inc.
 
S200743 storage-announcements-ist2020-v2001a
S200743 storage-announcements-ist2020-v2001aS200743 storage-announcements-ist2020-v2001a
S200743 storage-announcements-ist2020-v2001aTony Pearson
 

Ähnlich wie From COBOL to Models: an MDE framework to extract business logic out of legacy COBOL systems (20)

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
 
S200743 storage-announcements-ist2020-v2001a
S200743 storage-announcements-ist2020-v2001aS200743 storage-announcements-ist2020-v2001a
S200743 storage-announcements-ist2020-v2001a
 

Mehr von Jordi Cabot

AI and Software consultants: friends or foes?
AI and Software consultants: friends or foes?AI and Software consultants: friends or foes?
AI and Software consultants: friends or foes?Jordi Cabot
 
Model-driven engineering for Industrial IoT architectures
Model-driven engineering for Industrial IoT architecturesModel-driven engineering for Industrial IoT architectures
Model-driven engineering for Industrial IoT architecturesJordi Cabot
 
Smart modeling of smart software
Smart modeling of smart softwareSmart modeling of smart software
Smart modeling of smart softwareJordi Cabot
 
Modeling should be an independent scientific discipline
Modeling should be an independent scientific disciplineModeling should be an independent scientific discipline
Modeling should be an independent scientific disciplineJordi Cabot
 
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...Jordi Cabot
 
How to sustain a tool building community-driven effort
How to sustain a tool building community-driven effortHow to sustain a tool building community-driven effort
How to sustain a tool building community-driven effortJordi Cabot
 
All Researchers Should Become Entrepreneurs
All Researchers Should Become EntrepreneursAll Researchers Should Become Entrepreneurs
All Researchers Should Become EntrepreneursJordi Cabot
 
The Software Challenges of Building Smart Chatbots - ICSE'21
The Software Challenges of Building Smart Chatbots - ICSE'21The Software Challenges of Building Smart Chatbots - ICSE'21
The Software Challenges of Building Smart Chatbots - ICSE'21Jordi Cabot
 
Low-code vs Model-Driven Engineering
Low-code vs Model-Driven EngineeringLow-code vs Model-Driven Engineering
Low-code vs Model-Driven EngineeringJordi Cabot
 
Lessons learned from building a commercial bot development platform
Lessons learned from building a commercial bot development platformLessons learned from building a commercial bot development platform
Lessons learned from building a commercial bot development platformJordi Cabot
 
Future Trends on Software and Systems Modeling
Future Trends on Software and Systems ModelingFuture Trends on Software and Systems Modeling
Future Trends on Software and Systems ModelingJordi Cabot
 
Ingeniería del Software dirigida por modelos -Versión para incrédulos
Ingeniería del Software dirigida por modelos -Versión para incrédulosIngeniería del Software dirigida por modelos -Versión para incrédulos
Ingeniería del Software dirigida por modelos -Versión para incrédulosJordi Cabot
 
Chatbot Tutorial - Create your first bot with Xatkit
Chatbot Tutorial - Create your first bot with Xatkit Chatbot Tutorial - Create your first bot with Xatkit
Chatbot Tutorial - Create your first bot with Xatkit Jordi Cabot
 
Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...
Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...
Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...Jordi Cabot
 
An LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model TransformationsAn LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model TransformationsJordi Cabot
 
WAPIml: Towards a Modeling Infrastructure for Web APIs
WAPIml: Towards a Modeling Infrastructure for Web APIsWAPIml: Towards a Modeling Infrastructure for Web APIs
WAPIml: Towards a Modeling Infrastructure for Web APIsJordi Cabot
 
Is there a future for Model Transformation Languages?
Is there a future for Model Transformation Languages?Is there a future for Model Transformation Languages?
Is there a future for Model Transformation Languages?Jordi Cabot
 
Software Modeling and Artificial Intelligence: friends or foes?
Software Modeling and Artificial Intelligence: friends or foes?Software Modeling and Artificial Intelligence: friends or foes?
Software Modeling and Artificial Intelligence: friends or foes?Jordi Cabot
 
Temporal EMF: A temporal metamodeling platform
Temporal EMF: A temporal metamodeling platformTemporal EMF: A temporal metamodeling platform
Temporal EMF: A temporal metamodeling platformJordi Cabot
 
UMLtoNoSQL : From UML domain models to NoSQL Databases
UMLtoNoSQL : From UML domain models to NoSQL DatabasesUMLtoNoSQL : From UML domain models to NoSQL Databases
UMLtoNoSQL : From UML domain models to NoSQL DatabasesJordi Cabot
 

Mehr von Jordi Cabot (20)

AI and Software consultants: friends or foes?
AI and Software consultants: friends or foes?AI and Software consultants: friends or foes?
AI and Software consultants: friends or foes?
 
Model-driven engineering for Industrial IoT architectures
Model-driven engineering for Industrial IoT architecturesModel-driven engineering for Industrial IoT architectures
Model-driven engineering for Industrial IoT architectures
 
Smart modeling of smart software
Smart modeling of smart softwareSmart modeling of smart software
Smart modeling of smart software
 
Modeling should be an independent scientific discipline
Modeling should be an independent scientific disciplineModeling should be an independent scientific discipline
Modeling should be an independent scientific discipline
 
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
¿Quién va a desarrollar las Apps del futuro? (aviso: no serán los programador...
 
How to sustain a tool building community-driven effort
How to sustain a tool building community-driven effortHow to sustain a tool building community-driven effort
How to sustain a tool building community-driven effort
 
All Researchers Should Become Entrepreneurs
All Researchers Should Become EntrepreneursAll Researchers Should Become Entrepreneurs
All Researchers Should Become Entrepreneurs
 
The Software Challenges of Building Smart Chatbots - ICSE'21
The Software Challenges of Building Smart Chatbots - ICSE'21The Software Challenges of Building Smart Chatbots - ICSE'21
The Software Challenges of Building Smart Chatbots - ICSE'21
 
Low-code vs Model-Driven Engineering
Low-code vs Model-Driven EngineeringLow-code vs Model-Driven Engineering
Low-code vs Model-Driven Engineering
 
Lessons learned from building a commercial bot development platform
Lessons learned from building a commercial bot development platformLessons learned from building a commercial bot development platform
Lessons learned from building a commercial bot development platform
 
Future Trends on Software and Systems Modeling
Future Trends on Software and Systems ModelingFuture Trends on Software and Systems Modeling
Future Trends on Software and Systems Modeling
 
Ingeniería del Software dirigida por modelos -Versión para incrédulos
Ingeniería del Software dirigida por modelos -Versión para incrédulosIngeniería del Software dirigida por modelos -Versión para incrédulos
Ingeniería del Software dirigida por modelos -Versión para incrédulos
 
Chatbot Tutorial - Create your first bot with Xatkit
Chatbot Tutorial - Create your first bot with Xatkit Chatbot Tutorial - Create your first bot with Xatkit
Chatbot Tutorial - Create your first bot with Xatkit
 
Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...
Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...
Création facile de chatbots - Créez votre chatbot en 20 minutes avec une plat...
 
An LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model TransformationsAn LSTM-Based Neural Network Architecture for Model Transformations
An LSTM-Based Neural Network Architecture for Model Transformations
 
WAPIml: Towards a Modeling Infrastructure for Web APIs
WAPIml: Towards a Modeling Infrastructure for Web APIsWAPIml: Towards a Modeling Infrastructure for Web APIs
WAPIml: Towards a Modeling Infrastructure for Web APIs
 
Is there a future for Model Transformation Languages?
Is there a future for Model Transformation Languages?Is there a future for Model Transformation Languages?
Is there a future for Model Transformation Languages?
 
Software Modeling and Artificial Intelligence: friends or foes?
Software Modeling and Artificial Intelligence: friends or foes?Software Modeling and Artificial Intelligence: friends or foes?
Software Modeling and Artificial Intelligence: friends or foes?
 
Temporal EMF: A temporal metamodeling platform
Temporal EMF: A temporal metamodeling platformTemporal EMF: A temporal metamodeling platform
Temporal EMF: A temporal metamodeling platform
 
UMLtoNoSQL : From UML domain models to NoSQL Databases
UMLtoNoSQL : From UML domain models to NoSQL DatabasesUMLtoNoSQL : From UML domain models to NoSQL Databases
UMLtoNoSQL : From UML domain models to NoSQL Databases
 

Kürzlich hochgeladen

Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...panagenda
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 

Kürzlich hochgeladen (20)

Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
Why device, WIFI, and ISP insights are crucial to supporting remote Microsoft...
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 

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

  • 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