SlideShare une entreprise Scribd logo
1  sur  41
Télécharger pour lire hors ligne
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

Contenu connexe

Tendances

How to avoid the Commodity Trap
How to avoid the Commodity TrapHow to avoid the Commodity Trap
How to avoid the Commodity Trap
Roel van Lanen
 
Rome Infrastructure Color
Rome Infrastructure ColorRome Infrastructure Color
Rome Infrastructure Color
rlynes
 
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
 

Tendances (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
 

En vedette

Vbisigk
VbisigkVbisigk
Vbisigk
ISIG
 
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
ISIG
 
Developpement mobile vs open source
Developpement mobile vs open sourceDeveloppement mobile vs open source
Developpement mobile vs open source
Korteby Farouk
 
SysML adoption in France
SysML adoption in FranceSysML adoption in France
SysML adoption in France
Pascal Roques
 
La & edm in practice
La & edm in practiceLa & edm in practice
La & edm in practice
bharati k
 
Prfc rhapsody simulation_1.0
Prfc rhapsody simulation_1.0Prfc rhapsody simulation_1.0
Prfc rhapsody simulation_1.0
Pascal Roques
 

En vedette (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
 

Similaire à 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 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
 

Similaire à 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
 

Plus de Jordi Cabot

Plus de 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
 

Dernier

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Dernier (20)

EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 

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