SlideShare une entreprise Scribd logo
1  sur  31
Business Process 
Management with 
mobile routes 
Charif Mahmoudi and Fabrice Mourlin 
LACL (CNRS FRE 2673) 
University of Paris EST – France 
AICCSA 2014 
International Conference on Computer Systems and 
Applications 
November 10-13, 2014, Doha, Qatar 
charif.mahmoudi@u-pec.fr 
fabrice.mourlin@u-pec.fr
2 
Outline 
• General context 3 
• Enterprise Applications 5 
• Orchestration specification 8 
• Model-Driven approach 11 
• Model transformations 15 
• Architecture 17 
• Results 18 
• Conclusion 19
3 
General context 
• Labs: L.A.C.L. Labs Algorithm Complexity Logics 
– Team: P.C.S. Parallel and Communicating System, 
– Manager: Prof. C. Dima 
• Work group: Mobile Communicating System 
• Members: Fabrice Mourlin 
– Cyril Dumont (PhD) 
– Charif Mahmoudi (PhD Student) 
– Guy-lahlou Djiken (PhD Student)(co-supervised by Prof. Fotso) 
– Stiven Anten (PhD Student) 
• Industrial Projects: 
– MobileSim: numeric computing based on mobile agents 
system with ESI-Group 
– MobilePlanner: distributed planning manager with Agent/OS.
4 
State of the art 
Research area 
• Service composition 
• WS-CDL. PELTZ, Chris. Web services orchestration and choreography. Computer, 2003, vol. 36, no 10, 
p. 46-52. 
• BPEL4WS JURIC, Matjaz B., MATHEW, Benny, et SARANG, Poornachandra G. Business Process 
Execution Language for Web Services: An Architect and Developer's Guide to Orchestrating Web 
Services Using BPEL4WS. Packt Publishing, 2006. 
• Patterns in service composition 
• EIP:. HOHPE, Gregor et WOOLF, Bobby. Enterprise integration patterns. In : 9th 
Conference on Pattern Language of Programs. 2002. p. 1-9. 
• Apache Camel: IBSEN, Claus et ANSTEY, Jonathan. Camel in action. Manning Publications Co., 
2010. 
• Our contribution 
• MAHMOUDI, Charif et MOURLIN, Fabrice. Adaptivity of Business Process. In : ICONS 2013, The Eighth 
International Conference on Systems. 2013. p. 19-26. 
• MAHMOUDI, Charif et MOURLIN, Fabrice. Orchestration Definition from Business Specification. In : 
ICSEA 2012, The Seventh International Conference on Software Engineering Advances. 2012. p. 197- 
204.
Business Agent 
• Agent characteristics 
– Autonomy – is master of its decisions. 
– Reactivity – perceive the changes in its environment 
– Proactivity – determine the actions to achieve its objective 
– Social – communicate with other agents 
• Business Agent 
– Composition of business services 
• Autonomy based on 
– OSGi 
– Mesos 
– Marathon 
• Reactivity based on ESB 
• Proactivity based on BP 
• Social based on orchestration 
5
6 
Why do we need Web 
Service ? 
• Analytic concept 
– Independence of concern – WS contains only a local or 
remote call to a business basic task. 
• Design concept 
– Business delegate – WS is an application of design 
pattern: task is encapsulated into a class. 
• Programming concept 
– Framework – each web language has several 
frameworks for WS implementation, 
– Time development – short lifecycle, it exposes a local 
task on network. 
WS : Web Service
Business Process 
management 
• Reduce 
– human error 
– miscommunication 
• Focus stakeholders 
– requirements 
– their roles 
• Orchestration 
– the entity that manages 
CC : eunomia-process.com 
complex cross domain 
business processes 7
8 
Why do we need 
Orchestration? 
• Web services coordination 
– Workflow description - an agent does not know the 
others and their communication protocol into a B.P. 
• Software transaction 
– Business process – it is implemented by an algorithm 
based on a set of web service calls into a transaction. 
– Local or not – a transaction can be local or distributed 
over network 
• Business activity monitoring 
– Business tracking – B.P. evaluation is not atomic, its 
current state can be observable, 
– Volume – B.P. monitoring can stress impacts between 
each other. 
BP:Business Process
BPMN BP Modelling Notation 
9 
Orchestration specification 
• W3C (glossary) 
– “The pattern of interactions that must respect a 
Web service agent to achieve its purpose.". 
• An expert describes business logics into a 
main description : 
• BPMN (graphical representation) 
• BPML (textual representation) 
• “CODE”(interpretable representation of Business Process)
10 
Orchestration 
example 
• BP can define investment management in a Financial 
organization 
• BP can express inscription process at an international 
conference 
• BP also provides audit process on stock management into 
a manufactory
Orchestration features 
11
Orchestration 
Framework 
• Why do we need integration? 
– Your apps are build using different tech 
stacks 
– Critical for your business to integrate 
• Why Integration Framework? 
– Framework do the heavy lifting 
– Focus on business problem 
– Not "reinventing the wheel" 
12
Which BPM Framework ? 
13
What is Apache Camel 
• Quote from the web site 
– http://camel.apache.org 
14 
Apache Camel is a powerful 
Open Source Integration 
Framework based on known 
Enterprise Integration Patterns
EIP Orchestration 
using Apache Camel 
• EIP specifications 
• not initially dedicated to orchestration, 
• could be used as tools allowing orchestration 
– Transformer or Aggregator pattern. 
• based on the "pipe and filter" architecture 
15
Apache Camel 
Filter Pattern 
From A Filter message send to B 
16
Apache Camel 
Filter Pattern 
17 
from(A) filter(predicate) to(B)
Apache Camel 
Filter Pattern 
18 
from(A) .filter(isValid) .to(B)
Apache Camel 
Filter Pattern 
19 
from(A).filter(isValid).to(B);
Apache Camel 
Filter Route 
20 
isValid = xpath("/flight/dest = ‘Doha’"); 
from(A).filter(isValid).to(B);
Apache Camel 
Filter Route 
21 
Endpoint A = endpoint(“cxf:bean:url1"); 
Endpoint B = endpoint(“cxf:bean:url1"); 
Predicate isValid = xpath("/flight/dest = ‘Doha’"); 
from(A).filter(isValid).to(B);
Apache Camel 
Filter Route 
22 
public void configure() throws Exception { 
Endpoint A = endpoint(“cxf:bean:url1"); 
Endpoint B = endpoint(“cxf:bean:url2"); 
Predicate isValid = xpath("/flight/dest = ‘Doha’"); 
from(A).filter(isValid).to(B); 
}
Apache Camel 
Filter Route - Java DSL 
23 
import org.apache.camel.builder.RouteBuilder; 
public class FilterRoute extends RouteBuilder { 
public void configure() throws Exception { 
Endpoint A = endpoint(“cxf:bean:url1"); 
Endpoint B = endpoint(“cxf:bean:url2"); 
Predicate isValid = xpath("/flight/dest = ‘Doha’"); 
from(A).filter(isWidget).to(B); 
} 
}
Apache Camel 
Filter Route - Java DSL 
24 
import org.apache.camel.builder.RouteBuilder; 
public class FilterRoute extends RouteBuilder { 
public void configure() throws Exception { 
from("cxf:bean:url1") 
.filter().xpath("/flight/dest = ‘Doha’") 
.to("cxf:bean:url2"); 
} 
}
25 
Formal 
representation 
https://github.com/charifmahmoudi/pitocamel
26 
Generated pragmatic 
representation
27 
Architecture 
BP route job 
Marathon 
scheduler 
ZooKeeper quorum 
Allocation 
module 
Mesos 
master 
Remote 
Docker 
repository 
Mesos slave Mesos slave 
Docker executor 
Service 
“url1” 
Mesos 
master 
Mesos 
master 
Docker executor 
Remote 
Docker 
repository 
Route 
on Karaf 
Service 
“url2” 
Route 
Route on Karaf 
migration
28 
Case Study 
POST /get_businessDetail 
HTTP/1.1 
Host: www.JetLines.com 
Content-Type: text/xml; charset="utf-8" 
Content-Length: 454 
SOAPAction: "get_businessDetail" 
<?xml version="1.0" encoding="UTF-8" ?> 
<Envelope xmlns="http://schemas/xmlsoap.org/soap/envelope/"> 
<Body> 
<get_businessDetail generic="2.0" xmlns="urn:uddi-org:api_v2"> 
<businessKey="C90D844D-772ADH-4130-9DD3-5303449070C2"> 
</businessKey> 
</get_businessDetail> 
</Body> 
</Envelope>
29 
Results 
TABLE I. TIME MEASURE FOR THE ASYNCHRONOUS WEB SERVICE CALLS 
Web service Total Count Average Min Max 
AsyncJetLines 231 1 231 231 231 
AsyncEasyLines 302 1 302 302 302 
TABLE II. TIME MEASURE FOR THE ASYNCHRONOUS WEB SERVICE CALLS WITH MOBILE ROUTE 
Web service Total Count Average Min Max 
AsyncJetLines 455 1 455 455 455 
AsyncEasyLines 682 1 682 682 682
30 
Conclusion 
• Business features: 
– Business logic 
• Flexibility and reusability of services 
• Declarative deployment target 
– Rethinking Business Processes definition 
• cluster schedulers 
• private clouds 
• build, package and deploy services 
• Technical features: 
– Mesos/Marathon/Docker architecture 
• Cluster management 
• Failure detection 
• Failover mechanism
31 
Future tasks 
• Software transaction 
– Often, BP is a global transaction containing set of web 
services. 
Only atomic transaction are considered today 
– We want to define business transaction and undoable 
mechanism 
• Security management 
– Often, BP needs secure control based on global 
strategy 
– We want to realize secure BP where controls are done 
through a distributed approach 
Each host can have its own security process valuator

Contenu connexe

En vedette

En vedette (13)

AMIA2013-ZH-Family-v15
AMIA2013-ZH-Family-v15AMIA2013-ZH-Family-v15
AMIA2013-ZH-Family-v15
 
Intro to Flow States
Intro to Flow StatesIntro to Flow States
Intro to Flow States
 
C politico
C politicoC politico
C politico
 
Format & Design
Format & DesignFormat & Design
Format & Design
 
An Introduction to TACI
An Introduction to TACIAn Introduction to TACI
An Introduction to TACI
 
AMIA2013-ZH-Family-v15
AMIA2013-ZH-Family-v15AMIA2013-ZH-Family-v15
AMIA2013-ZH-Family-v15
 
Observing and Assessing Flow
Observing and Assessing FlowObserving and Assessing Flow
Observing and Assessing Flow
 
Research presentation
Research presentationResearch presentation
Research presentation
 
zhe_amia14_v7
zhe_amia14_v7zhe_amia14_v7
zhe_amia14_v7
 
Arduino day 2015 @Archimedea
Arduino day 2015 @ArchimedeaArduino day 2015 @Archimedea
Arduino day 2015 @Archimedea
 
zhe_CRI2015_drug_v2
zhe_CRI2015_drug_v2zhe_CRI2015_drug_v2
zhe_CRI2015_drug_v2
 
Numan Noor
Numan NoorNuman Noor
Numan Noor
 
SFS
SFSSFS
SFS
 

Similaire à Presentation : Business Process Management with mobile routes

MuleSoft London Community October 2017 - Hybrid and SAP Integration
MuleSoft London Community October 2017 - Hybrid and SAP IntegrationMuleSoft London Community October 2017 - Hybrid and SAP Integration
MuleSoft London Community October 2017 - Hybrid and SAP IntegrationPace Integration
 
Breaking the Monolith
Breaking the MonolithBreaking the Monolith
Breaking the MonolithVMware Tanzu
 
A Software Factory Integrating Rational & WebSphere Tools
A Software Factory Integrating Rational & WebSphere ToolsA Software Factory Integrating Rational & WebSphere Tools
A Software Factory Integrating Rational & WebSphere Toolsghodgkinson
 
Webinar september 2013
Webinar september 2013Webinar september 2013
Webinar september 2013Marc Gille
 
The REMICS model-driven process for migrating legacy applications to the cloud
The REMICS model-driven process for migrating legacy applications to the cloudThe REMICS model-driven process for migrating legacy applications to the cloud
The REMICS model-driven process for migrating legacy applications to the cloudMarcos Almeida
 
PureApp Hybrid Cloud - Mark Willemse ING Presentation 11th September 2014
PureApp Hybrid Cloud - Mark Willemse ING Presentation 11th September 2014PureApp Hybrid Cloud - Mark Willemse ING Presentation 11th September 2014
PureApp Hybrid Cloud - Mark Willemse ING Presentation 11th September 2014IBM Systems UKI
 
Cloud native microservices for systems and applications ieee rev2
Cloud native microservices for systems and applications ieee rev2Cloud native microservices for systems and applications ieee rev2
Cloud native microservices for systems and applications ieee rev2Prem Sankar Gopannan
 
OpenStack + Cloud Foundry for the OpenStack Boston Meetup
OpenStack + Cloud Foundry for the OpenStack Boston MeetupOpenStack + Cloud Foundry for the OpenStack Boston Meetup
OpenStack + Cloud Foundry for the OpenStack Boston Meetupragss
 
Better application architecture with #microservices and #BPM (as APaaS)
Better application architecture with #microservices and #BPM (as APaaS)Better application architecture with #microservices and #BPM (as APaaS)
Better application architecture with #microservices and #BPM (as APaaS)Alexander SAMARIN
 
Which Application Modernization Pattern Is Right For You?
Which Application Modernization Pattern Is Right For You?Which Application Modernization Pattern Is Right For You?
Which Application Modernization Pattern Is Right For You?Apigee | Google Cloud
 
Fitman webinar 2015 06 Collaborative Business Process Management (CBPM)
Fitman webinar 2015 06 Collaborative Business Process Management (CBPM)Fitman webinar 2015 06 Collaborative Business Process Management (CBPM)
Fitman webinar 2015 06 Collaborative Business Process Management (CBPM)FITMAN FI
 
Software Factories in the Real World: How an IBM WebSphere Integration Factor...
Software Factories in the Real World: How an IBM WebSphere Integration Factor...Software Factories in the Real World: How an IBM WebSphere Integration Factor...
Software Factories in the Real World: How an IBM WebSphere Integration Factor...ghodgkinson
 
Perth MeetUp November 2023
Perth MeetUp November 2023 Perth MeetUp November 2023
Perth MeetUp November 2023 Michael Price
 
Deployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform EnvironmentsDeployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform EnvironmentsIBM UrbanCode Products
 
Where can you use serverless?  How does it relate to APIs, integration and mi...
Where can you use serverless?  How does it relate to APIs, integration and mi...Where can you use serverless?  How does it relate to APIs, integration and mi...
Where can you use serverless?  How does it relate to APIs, integration and mi...Kim Clark
 
Nyc mule soft_meetup_13_march_2021
Nyc mule soft_meetup_13_march_2021Nyc mule soft_meetup_13_march_2021
Nyc mule soft_meetup_13_march_2021NeerajKumar1965
 
Cwin16 tls-a micro-service deployment - v1.0
Cwin16 tls-a micro-service deployment - v1.0Cwin16 tls-a micro-service deployment - v1.0
Cwin16 tls-a micro-service deployment - v1.0Capgemini
 
.NET Cloud-Native Bootcamp- Los Angeles
.NET Cloud-Native Bootcamp- Los Angeles.NET Cloud-Native Bootcamp- Los Angeles
.NET Cloud-Native Bootcamp- Los AngelesVMware Tanzu
 
Anypoint Tools and MuleSoft Automation (DRAFT).pptx
Anypoint Tools and MuleSoft Automation (DRAFT).pptxAnypoint Tools and MuleSoft Automation (DRAFT).pptx
Anypoint Tools and MuleSoft Automation (DRAFT).pptxAkshata Sawant
 

Similaire à Presentation : Business Process Management with mobile routes (20)

MuleSoft London Community October 2017 - Hybrid and SAP Integration
MuleSoft London Community October 2017 - Hybrid and SAP IntegrationMuleSoft London Community October 2017 - Hybrid and SAP Integration
MuleSoft London Community October 2017 - Hybrid and SAP Integration
 
Breaking the Monolith
Breaking the MonolithBreaking the Monolith
Breaking the Monolith
 
A Software Factory Integrating Rational & WebSphere Tools
A Software Factory Integrating Rational & WebSphere ToolsA Software Factory Integrating Rational & WebSphere Tools
A Software Factory Integrating Rational & WebSphere Tools
 
Webinar september 2013
Webinar september 2013Webinar september 2013
Webinar september 2013
 
The REMICS model-driven process for migrating legacy applications to the cloud
The REMICS model-driven process for migrating legacy applications to the cloudThe REMICS model-driven process for migrating legacy applications to the cloud
The REMICS model-driven process for migrating legacy applications to the cloud
 
PureApp Hybrid Cloud - Mark Willemse ING Presentation 11th September 2014
PureApp Hybrid Cloud - Mark Willemse ING Presentation 11th September 2014PureApp Hybrid Cloud - Mark Willemse ING Presentation 11th September 2014
PureApp Hybrid Cloud - Mark Willemse ING Presentation 11th September 2014
 
Cloud native microservices for systems and applications ieee rev2
Cloud native microservices for systems and applications ieee rev2Cloud native microservices for systems and applications ieee rev2
Cloud native microservices for systems and applications ieee rev2
 
OpenStack + Cloud Foundry for the OpenStack Boston Meetup
OpenStack + Cloud Foundry for the OpenStack Boston MeetupOpenStack + Cloud Foundry for the OpenStack Boston Meetup
OpenStack + Cloud Foundry for the OpenStack Boston Meetup
 
Better application architecture with #microservices and #BPM (as APaaS)
Better application architecture with #microservices and #BPM (as APaaS)Better application architecture with #microservices and #BPM (as APaaS)
Better application architecture with #microservices and #BPM (as APaaS)
 
Which Application Modernization Pattern Is Right For You?
Which Application Modernization Pattern Is Right For You?Which Application Modernization Pattern Is Right For You?
Which Application Modernization Pattern Is Right For You?
 
Fitman webinar 2015 06 Collaborative Business Process Management (CBPM)
Fitman webinar 2015 06 Collaborative Business Process Management (CBPM)Fitman webinar 2015 06 Collaborative Business Process Management (CBPM)
Fitman webinar 2015 06 Collaborative Business Process Management (CBPM)
 
My OPNFV journey
My OPNFV journeyMy OPNFV journey
My OPNFV journey
 
Software Factories in the Real World: How an IBM WebSphere Integration Factor...
Software Factories in the Real World: How an IBM WebSphere Integration Factor...Software Factories in the Real World: How an IBM WebSphere Integration Factor...
Software Factories in the Real World: How an IBM WebSphere Integration Factor...
 
Perth MeetUp November 2023
Perth MeetUp November 2023 Perth MeetUp November 2023
Perth MeetUp November 2023
 
Deployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform EnvironmentsDeployment Automation for Hybrid Cloud and Multi-Platform Environments
Deployment Automation for Hybrid Cloud and Multi-Platform Environments
 
Where can you use serverless?  How does it relate to APIs, integration and mi...
Where can you use serverless?  How does it relate to APIs, integration and mi...Where can you use serverless?  How does it relate to APIs, integration and mi...
Where can you use serverless?  How does it relate to APIs, integration and mi...
 
Nyc mule soft_meetup_13_march_2021
Nyc mule soft_meetup_13_march_2021Nyc mule soft_meetup_13_march_2021
Nyc mule soft_meetup_13_march_2021
 
Cwin16 tls-a micro-service deployment - v1.0
Cwin16 tls-a micro-service deployment - v1.0Cwin16 tls-a micro-service deployment - v1.0
Cwin16 tls-a micro-service deployment - v1.0
 
.NET Cloud-Native Bootcamp- Los Angeles
.NET Cloud-Native Bootcamp- Los Angeles.NET Cloud-Native Bootcamp- Los Angeles
.NET Cloud-Native Bootcamp- Los Angeles
 
Anypoint Tools and MuleSoft Automation (DRAFT).pptx
Anypoint Tools and MuleSoft Automation (DRAFT).pptxAnypoint Tools and MuleSoft Automation (DRAFT).pptx
Anypoint Tools and MuleSoft Automation (DRAFT).pptx
 

Dernier

JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...Bert Jan Schrijver
 
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jGraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jNeo4j
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfRTS corp
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingShane Coughlan
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
Strategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsStrategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsJean Silva
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shardsChristopher Curtin
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxAndreas Kunz
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldRoberto Pérez Alcolea
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identityteam-WIBU
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxRTS corp
 
Patterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencePatterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencessuser9e7c64
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics
 
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...OnePlan Solutions
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slidesvaideheekore1
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?Alexandre Beguel
 

Dernier (20)

JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
 
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jGraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
Strategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsStrategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero results
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository world
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
 
Patterns for automating API delivery. API conference
Patterns for automating API delivery. API conferencePatterns for automating API delivery. API conference
Patterns for automating API delivery. API conference
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
 
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
Revolutionizing the Digital Transformation Office - Leveraging OnePlan’s AI a...
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slides
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?
 

Presentation : Business Process Management with mobile routes

  • 1. Business Process Management with mobile routes Charif Mahmoudi and Fabrice Mourlin LACL (CNRS FRE 2673) University of Paris EST – France AICCSA 2014 International Conference on Computer Systems and Applications November 10-13, 2014, Doha, Qatar charif.mahmoudi@u-pec.fr fabrice.mourlin@u-pec.fr
  • 2. 2 Outline • General context 3 • Enterprise Applications 5 • Orchestration specification 8 • Model-Driven approach 11 • Model transformations 15 • Architecture 17 • Results 18 • Conclusion 19
  • 3. 3 General context • Labs: L.A.C.L. Labs Algorithm Complexity Logics – Team: P.C.S. Parallel and Communicating System, – Manager: Prof. C. Dima • Work group: Mobile Communicating System • Members: Fabrice Mourlin – Cyril Dumont (PhD) – Charif Mahmoudi (PhD Student) – Guy-lahlou Djiken (PhD Student)(co-supervised by Prof. Fotso) – Stiven Anten (PhD Student) • Industrial Projects: – MobileSim: numeric computing based on mobile agents system with ESI-Group – MobilePlanner: distributed planning manager with Agent/OS.
  • 4. 4 State of the art Research area • Service composition • WS-CDL. PELTZ, Chris. Web services orchestration and choreography. Computer, 2003, vol. 36, no 10, p. 46-52. • BPEL4WS JURIC, Matjaz B., MATHEW, Benny, et SARANG, Poornachandra G. Business Process Execution Language for Web Services: An Architect and Developer's Guide to Orchestrating Web Services Using BPEL4WS. Packt Publishing, 2006. • Patterns in service composition • EIP:. HOHPE, Gregor et WOOLF, Bobby. Enterprise integration patterns. In : 9th Conference on Pattern Language of Programs. 2002. p. 1-9. • Apache Camel: IBSEN, Claus et ANSTEY, Jonathan. Camel in action. Manning Publications Co., 2010. • Our contribution • MAHMOUDI, Charif et MOURLIN, Fabrice. Adaptivity of Business Process. In : ICONS 2013, The Eighth International Conference on Systems. 2013. p. 19-26. • MAHMOUDI, Charif et MOURLIN, Fabrice. Orchestration Definition from Business Specification. In : ICSEA 2012, The Seventh International Conference on Software Engineering Advances. 2012. p. 197- 204.
  • 5. Business Agent • Agent characteristics – Autonomy – is master of its decisions. – Reactivity – perceive the changes in its environment – Proactivity – determine the actions to achieve its objective – Social – communicate with other agents • Business Agent – Composition of business services • Autonomy based on – OSGi – Mesos – Marathon • Reactivity based on ESB • Proactivity based on BP • Social based on orchestration 5
  • 6. 6 Why do we need Web Service ? • Analytic concept – Independence of concern – WS contains only a local or remote call to a business basic task. • Design concept – Business delegate – WS is an application of design pattern: task is encapsulated into a class. • Programming concept – Framework – each web language has several frameworks for WS implementation, – Time development – short lifecycle, it exposes a local task on network. WS : Web Service
  • 7. Business Process management • Reduce – human error – miscommunication • Focus stakeholders – requirements – their roles • Orchestration – the entity that manages CC : eunomia-process.com complex cross domain business processes 7
  • 8. 8 Why do we need Orchestration? • Web services coordination – Workflow description - an agent does not know the others and their communication protocol into a B.P. • Software transaction – Business process – it is implemented by an algorithm based on a set of web service calls into a transaction. – Local or not – a transaction can be local or distributed over network • Business activity monitoring – Business tracking – B.P. evaluation is not atomic, its current state can be observable, – Volume – B.P. monitoring can stress impacts between each other. BP:Business Process
  • 9. BPMN BP Modelling Notation 9 Orchestration specification • W3C (glossary) – “The pattern of interactions that must respect a Web service agent to achieve its purpose.". • An expert describes business logics into a main description : • BPMN (graphical representation) • BPML (textual representation) • “CODE”(interpretable representation of Business Process)
  • 10. 10 Orchestration example • BP can define investment management in a Financial organization • BP can express inscription process at an international conference • BP also provides audit process on stock management into a manufactory
  • 12. Orchestration Framework • Why do we need integration? – Your apps are build using different tech stacks – Critical for your business to integrate • Why Integration Framework? – Framework do the heavy lifting – Focus on business problem – Not "reinventing the wheel" 12
  • 14. What is Apache Camel • Quote from the web site – http://camel.apache.org 14 Apache Camel is a powerful Open Source Integration Framework based on known Enterprise Integration Patterns
  • 15. EIP Orchestration using Apache Camel • EIP specifications • not initially dedicated to orchestration, • could be used as tools allowing orchestration – Transformer or Aggregator pattern. • based on the "pipe and filter" architecture 15
  • 16. Apache Camel Filter Pattern From A Filter message send to B 16
  • 17. Apache Camel Filter Pattern 17 from(A) filter(predicate) to(B)
  • 18. Apache Camel Filter Pattern 18 from(A) .filter(isValid) .to(B)
  • 19. Apache Camel Filter Pattern 19 from(A).filter(isValid).to(B);
  • 20. Apache Camel Filter Route 20 isValid = xpath("/flight/dest = ‘Doha’"); from(A).filter(isValid).to(B);
  • 21. Apache Camel Filter Route 21 Endpoint A = endpoint(“cxf:bean:url1"); Endpoint B = endpoint(“cxf:bean:url1"); Predicate isValid = xpath("/flight/dest = ‘Doha’"); from(A).filter(isValid).to(B);
  • 22. Apache Camel Filter Route 22 public void configure() throws Exception { Endpoint A = endpoint(“cxf:bean:url1"); Endpoint B = endpoint(“cxf:bean:url2"); Predicate isValid = xpath("/flight/dest = ‘Doha’"); from(A).filter(isValid).to(B); }
  • 23. Apache Camel Filter Route - Java DSL 23 import org.apache.camel.builder.RouteBuilder; public class FilterRoute extends RouteBuilder { public void configure() throws Exception { Endpoint A = endpoint(“cxf:bean:url1"); Endpoint B = endpoint(“cxf:bean:url2"); Predicate isValid = xpath("/flight/dest = ‘Doha’"); from(A).filter(isWidget).to(B); } }
  • 24. Apache Camel Filter Route - Java DSL 24 import org.apache.camel.builder.RouteBuilder; public class FilterRoute extends RouteBuilder { public void configure() throws Exception { from("cxf:bean:url1") .filter().xpath("/flight/dest = ‘Doha’") .to("cxf:bean:url2"); } }
  • 25. 25 Formal representation https://github.com/charifmahmoudi/pitocamel
  • 26. 26 Generated pragmatic representation
  • 27. 27 Architecture BP route job Marathon scheduler ZooKeeper quorum Allocation module Mesos master Remote Docker repository Mesos slave Mesos slave Docker executor Service “url1” Mesos master Mesos master Docker executor Remote Docker repository Route on Karaf Service “url2” Route Route on Karaf migration
  • 28. 28 Case Study POST /get_businessDetail HTTP/1.1 Host: www.JetLines.com Content-Type: text/xml; charset="utf-8" Content-Length: 454 SOAPAction: "get_businessDetail" <?xml version="1.0" encoding="UTF-8" ?> <Envelope xmlns="http://schemas/xmlsoap.org/soap/envelope/"> <Body> <get_businessDetail generic="2.0" xmlns="urn:uddi-org:api_v2"> <businessKey="C90D844D-772ADH-4130-9DD3-5303449070C2"> </businessKey> </get_businessDetail> </Body> </Envelope>
  • 29. 29 Results TABLE I. TIME MEASURE FOR THE ASYNCHRONOUS WEB SERVICE CALLS Web service Total Count Average Min Max AsyncJetLines 231 1 231 231 231 AsyncEasyLines 302 1 302 302 302 TABLE II. TIME MEASURE FOR THE ASYNCHRONOUS WEB SERVICE CALLS WITH MOBILE ROUTE Web service Total Count Average Min Max AsyncJetLines 455 1 455 455 455 AsyncEasyLines 682 1 682 682 682
  • 30. 30 Conclusion • Business features: – Business logic • Flexibility and reusability of services • Declarative deployment target – Rethinking Business Processes definition • cluster schedulers • private clouds • build, package and deploy services • Technical features: – Mesos/Marathon/Docker architecture • Cluster management • Failure detection • Failover mechanism
  • 31. 31 Future tasks • Software transaction – Often, BP is a global transaction containing set of web services. Only atomic transaction are considered today – We want to define business transaction and undoable mechanism • Security management – Often, BP needs secure control based on global strategy – We want to realize secure BP where controls are done through a distributed approach Each host can have its own security process valuator