SlideShare ist ein Scribd-Unternehmen logo
1 von 32
Downloaden Sie, um offline zu lesen
S-Cube Learning Package

  Process Performance Monitoring in
        Service Compositions


University of Stuttgart (USTUTT), TU Wien (TUW)


         Branimir Wetzstein, USTUTT


                www.s-cube-network.eu
Learning Package Categorization


                       S-Cube


                Adaptable Coordinated
                 Service Compositions


              Adaptable and QoS-aware
                Service Compositions


           Process Performance Monitoring in
                 Service Compositions
Learning Package Overview



 Problem Description
 Process Performance Monitoring in Service Compositions
 Discussion
 Conclusions
Let’s Consider a Scenario (1)

 Assume a reseller who has implemented a business process
  as a service composition
 He interacts with external services of customer, suppliers,
  shipper, bank, etc. in a service choreography
Let’s Consider a Scenario (2)

 The reseller is interested in measuring the process performance of his own
  internal business process
    Process performance metrics (PPMs) based on time, cost, quality, customer
     satisfaction dimensions
       – Order Fulfillment Lead Time, Perfect Order Fulfillment (in time and in full),
         Customer Complaint Rate, …
    QoS metrics, evaluating characteristics of the process execution
     infrastructure, e.g. availability of the service endpoints, …
                                   Listener




         Service                                      Monitor       Dashboard
                                              Event

                                                        Metric
                                                      definitions

                      Reseller

                                              Event                  Metrics
                                                                    Database
                     QoS Monitor
Let’s Consider a Scenario (3)

 The reseller is also interested monitoring across public
  partner processes in the choreography
 Process Tracking:
   – Partners want to track the state of the choreography beyond their own process
   – Example: Customer wants to track its shipment (Amazon-DHL Example)
       - Where is my shipment at the moment?

     Customer                            Reseller                         Shipper

                     Get Order Status
                                                    Get Shipment Status




                                           Event
                                                                           Event



                                           Event



                    Event
                                                               Event
                                         Queues /
                                          Topics
Let’s Consider a Scenario (4)

 The reseller is also interested monitoring across public
  partner processes in the choreography
 Evaluate cross-partner metrics for evaluation of KPIs and
  SLAs
   – E.g., order fulfilment lead time
   –  Gather and correlate events from different processes

                  Customer                           Reseller


                                             Event




                             Event



                                     CEP




                                     Event
Learning Package Overview



 Problem Description
 Process Performance Monitoring in Service
  Compositions
 Discussion
 Conclusions
Event-Based Monitoring of BPEL
Service Orchestrations
 Our monitoring approach for service orchestrations supports:
    – Process Performance Metrics (PPMs) based on process events (BPEL event model)
    – QoS metrics based on QoS events provided by QoS monitors
    – Correlation of Process events and QoS events
    – Metric calculation based on Complex Event Processing (ESPER)


                                  Listener




        Service
                                             Event
                                                     Complex Event   Dashboard
                                                      Processing


                   Process Engine                        Metric
                                                       definitions
                                             Event
                                                                      Metrics
                    QoS Monitor                                      Database
                                             Event



                    Other Event
                     Sources
BPEL Monitoring Mechanisms

 BPEL engines typically support following monitoring mechanisms:
   – Events are published (asynchronously) to message queues and topics which
     external monitors can subscribe to
   – Events are stored persistently in an audit trail (database)
   – A monitoring interface which enables active querying of information on
     deployed processes and running process instances
 Supported events are defined in an Event Model
   – Unfortunately, however, there is NO standard BPEL event metamodel 
     Every BPEL engine provides different types of events
   – Some BPEL engines support also (synchronous) blocking events; the
     execution of the process instance is halted until it is unblocked by an incoming
     message
   – Most BPEL engines enable configuring an event filter for a process model
     (using a deployment descriptor)
      thus only needed events are published at runtime which improves
     performance!
Background:
BPEL 2.0 Event Model
 BPEL 2.0 Event Model contains:
   – State Models
          - Separate state models for instances of following elements:
            Process, Activity, Scope Activity, Loop Activity, Invoke Activity,
            Link, Variable, Partner Link, Correlation Set
          - Transitions between States are denoted by different types of
            Events
   – Event Contents
          - Event attributes, in particular the different IDs which identify the
            corresponding element in the process instance


 Kopp, Oliver; Henke, Sebastian; Karastoyanova, Dimka; Khalaf, Rania; Leymann, Frank ; Sonntag, Mirko;
 Steinmetz, Thomas; Unger, Tobias; Wetzstein, Branimir: An Event Model for WS-BPEL 2.0, Technical Report
 No. 2011/07, University of Stuttgart.
Background:
Example: BPEL Activity State Model
Background:
Event Contents
 An event contains following information:
    – event name
    – creation timestamp
    – IDs which enable assignment of the event to the corresponding BPEL element instance
    – other information, e.g. variable value

 BPEL element              Needed identifiers
 Process Model             •   QName of the process model
                           •   version number of the process model
 Process Instance          •   globally unique instance ID of the process instance

 Activity Instance         •   An XPath expression, which uniquely identifies the construct in the process
                               model
                           •   Globally unique instance ID of the process instance
                           •   Unique instance ID of the innermost scope instance, where the activity is
                               nested in
                           •   unique instance ID of the activity instance
 Link, Variable, Partner   •   unique instance ID of the process instance
 Link, Correlation Set     •   unique instance ID of the scope where the element is declared
 Instances                 •   an XPath expression uniquely identifying the construct in the process model
Correlation of BPEL Events

 Calculation of BPEL process instance metrics can be done based on
  instance IDs set by the BPEL engine
       SELECT   e2.timestamp – e1.timestamp
       FROM     Activity_Executing e1, Activity_Completed e2
       WHERE    e1.pname=„POProcess“ AND
                e1.aname=„Receive Order“ AND
                e2.aname=„Ship Order“ AND
                e1.pid = e2.pid

 When, however, the BPEL process is not the only event source, other
  correlation tokens have to be chosen:

       SELECT   e2.timestamp – e1.timestamp
       FROM     Activity_Executing e1, Variable_Modification e2,
                Order_Shipped e3
       WHERE    e1.pname=„POProcess“ AND
                e1.aname=„Receive Order“ AND
                e2.vname=„Order“ AND
                e1.pid = e2.pid AND
                e2.orderId = e3.orderId
Monitoring of Process Performance
Metrics (PPMs)
 PPMs are metrics defined based on runtime events of
  processes
   – We focus here on runtime events of WS-BPEL service orchestrations,
     but in general our approach supports arbitrary events of information
     systems participating in the business process

 We distinguish between resource events and complex events
   – Resource event definitions specify (based on the BPEL event model)
     which raw events we need from the BPEL engine
   – Complex events are defined (recursively) based on other events and
     are used for PPM calculation
Definition of Resource Events

 A resource event definition specifies the following three elements:
    – Monitored resource: concrete BPEL entity instance + which states (as defined
      in the BPEL event model)
    – Process data: Optionally, one can specify which process data (defined as WS-
      BPEL variable) is to be part of the event. The data is read when the event is
      published.
    – Target message queue or pub/sub topic
       <resourceEventDefinition name="OrderReceivedEvent">
        <monitoredResource
          process="reseller:PurchaseOrderProcess"
          scope="process"
          activity="reseller:ReceivePO"
          state="completed"/>
        <data>
         <processVariable name="order" variable="purchaseOrder"/>
        </data>
        <publish>
         <queue name="PurchaseOrderProcess.ResourceEvents" />
        </publish>
       </resourceEventDefinition>
Definition of Complex Events

 Complex events are specified by correlating and aggregating existing
  events (resource and complex events)
 A complex event definition specifies the following three elements:
    – Consumed events: source event queue(s) and/or topic(s)
    – Event aggregation statement: CEP statement which correlates and
      aggregates the consumed events to a new event
    – Target message queue or pub/sub topic
       <complexEventDefinition name="OrderFulfillmentTimeEvent">
       <consume><queue name="PurchaseOrderProcess.ResourceEvents" /></consume>
       <eventAggregation>
        <statement><![CDATA[
         SELECT abs(b.timestamp - a.timestamp) AS metricValue, "ms" AS unit, a.piid AS piid
         FROM PATTERN [EVERY a = ResourceEvent(name="OrderReceivedEvent")
          -> b = ResourceEvent(name="ReceivedDeliveryNotificationEvent"
            AND piid = a.piid) ]
        ]]><statement>
       </eventAggregation>
       <publish> <topic name="PurchaseOrderProcess.metrics" /> </publish>
       </complexEventDefinition>
Monitoring QoS Metrics

 In our context, QoS can be measured in three different ways:
   – probing by a separate QoS monitor (e.g., probing whether an endpoint
     is available, see example below)
   – instrumentation of the WS-BPEL engine
   – instrumentation of the WS-BPEL process (evaluating QoS parameters
     using PPMs, e.g. response times of WS can be estimated through
     WS-BPEL activity durations)
     <QoSEventDefinition name="ProcessEndpointAvailableEvent">
     <availabilityProbe>
       <endpoint>
        http://localhost:8082/.../poProcess?wsdl
       </endpoint>
       <testFrequencyPerMinute>20</testFrequencyPerMinute>
     </availabilityProbe>
     <publish>
      <queue name="PurchaseOrderProcess.QoSEvents" />
     </publish>
     </QoSEventDefinition>
Correlation of PPMs and QoS Metrics

 If QoS events do not contain corresponding process instance
  identifiers, then correlation with process events is typically
  done based on time periods…

    <complexEventDefinition name="ProcessInstanceAvailableEvent">
    <consume>...</consume>
    <eventAggregation>
     <statement><![CDATA[
      SELECT begin.piid as piid, q.available as available from PATTERN [
       begin=ResourceEvent(name="OrderProcessingStartedEvent") ->
    q=QoSEvent(name="ProcessEndpointAvailableEvent")
       UNTIL end=ResourceEvent(name ="OrderProcessingCompletedEvent" AND piid =
    begin.piid )
     ]]><statement>
    </eventAggregation>
    <publish>
     <topic name="PurchaseOrderProcess.metrics" />
    </publish>
    </complexEventDefinition>




                                                                           © Branimir Wetzstein
Deployment and Monitoring

 Deployment of the monitor model:
    Resource event definitions are deployed to Event Listener in the BPEL Engine
     (Apache ODE), QoS Monitor, and other arbitrary event adapters
    Complex event definitions are deployed to the ESPER CEP Engine




                                   Listener
         Service
                                              Event
                                                      Complex Event   Dashboard
                                                       Processing


                   Process Engine                         Metric
                                                        definitions
                                              Event
                                                                       Metrics
                    QoS Monitor                                       Database
                                              Event



                     Other Event
                      Sources
Cross-Process Monitoring in Service
Choreographies (1)




                                      © Branimir Wetzstein
Cross-Process Monitoring in Service
Choreographies (2)
 For specification of monitoring solutions across partners, a
  single BPEL process is no more enough
   – We now use a service choreography description as basis
   – A service choreography model is an agreement between partners on
     their public processes and message exchanges

 We base our approach on a BPEL4Chor description
   – Each partner exposes an abstract BPEL process
   – A topology document specifies how these abstract processes are
     connected together by message links

 On top of the BPEL4Chor we specify a monitoring agreement
   – Similar to the monitor model specified for one BPEL process
   – An XML-based document specifying which resource events and
     complex events the partners have to provide

                                                           © Branimir Wetzstein
Monitoring Agreement (MA)

 An MA consists of :
   – Resource event definitions based on the BPEL event model and
     abstract processes of the BPEL4Chor model
   – Complex event definitions based on other event defining event
     aggregation statements (in ESPER)

  <monitoringAgreement
   xmlns:chor="http://purchaseOrder/choreography" xmlns:reseller="http://purchaseOrder/reseller">
  <resorceEventDefinitions>
   <resourceEventDefinition name="OrderReceivedEvent">… </resourceEventDefinition>
   ...
  <resorceEventDefinitions>

  <complexEventDefinitions>
   <complexEventDefinition providedBy="reseller“ name="CustomerAOrderReceivedEvent"
     choreography="chor:orderChoreography">…
   </complexEventDefinition>
   ...
  </complexEventDefinitions>
  <monitoringAgreement>


                                                                                  © Branimir Wetzstein
Event Correlation in Choreographies

 In order to be able to perform event correlation for monitored
  resources, corresponding resource identifiers have to be
  included in events
   – For choreography instances, additional choregraphy model and
     instance identifier have to be included into events

 In addition, those two identifiers have to be transported in
  message interactions, e.g., as part of SOAP Header


   <soap:header >
   <chor:choreography xmlns:chor =" http: // iaas / monitoring / choreography ">
     <chor:cid >{http: //.../ choreography } orderChoreography </ chor:cid >
     <chor:ciid >{...} orderChoreography /2009 -11 -02 -12 :05:21:005</ chor:ciid >
    </ chor:choreography >
   ...
   </ soap:header >




                                                                                      © Branimir Wetzstein
Prototype Implementation

 A prototype has been implemented based on…
  – Apache ODE BPEL Engine: A new Event Listener is configured based
    on resource event definitions
  – ESPER CEP Engine




                                                       © Branimir Wetzstein
Learning Package Overview



 Problem Description
 Process Performance Monitoring in Service Compositions
 Discussion
 Conclusions




                                                   © Philipp Leitner
Discussion - Advantages



 The Event-based Monitoring Approach based on a state-of-
  the-art CEP engine has the following advantages:


   – Complex Computations– A state-of-the-art CEP language is more
     powerful than most domain-specific or specialized monitoring
     languages
   – High throughput, low latency – provided by the underlying CEP engine
     implementation
   – Support for arbitrary events – Process events based on BPEL event
     model and some QoS events are directly supported
Discussion - Disadvantages



 … but of course the approach also has some disadvantages.

   – Specification of Monitored Properties – is relatively time-consuming
     and error-prone because of the relatively low-level language
   – Transactionality and Persistence – during event processing is not
     directly supported
Learning Package Overview



 Problem Description
 Process Performance Monitoring in Service Compositions
 Discussion
 Conclusions




                                                   © Philipp Leitner
Summary

 Event-based Monitoring of processes based on BPEL and
  BPEL4Chor Models
 Monitor model specifies:
   1. Resource events which should be provided by BPEL engine (based
      on BPEL event model) or QoS monitor
   2. Complex events which specify higher-level monitored properties
      based on an event processing language (ESPER EPL)

 Monitoring across processes:
   – Choreography model with public process descriptions as basis
   – Extensions for choreography instance identification in message and
     event exchanges needed
Further S-Cube Reading

Wetzstein, Branimir; Leitner, Philipp; Rosenberg, Florian; Dustdar, Schahram; Leymann, Frank: Identifying
Influential Factors of Business Process Performance Using Dependency Analysis. In: Enterprise Information
Systems. Vol. 5(1), Taylor & Francis, 2010.

Wetzstein, Branimir; Karastoyanova, Dimka; Kopp, Oliver; Leymann, Frank; Zwink, Daniel: Cross-
Organizational Process Monitoring based on Service Choreographies. In: Proceedings of the 25th Annual
ACM Symposium on Applied Computing (SAC 2010); Sierre, Switzerland, 21-26 March, 2010.

Kopp, Oliver; Henke, Sebastian; Karastoyanova, Dimka; Khalaf, Rania; Leymann, Frank ; Sonntag, Mirko;
Steinmetz, Thomas; Unger, Tobias; Wetzstein, Branimir: An Event Model for WS-BPEL 2.0, Technical Report
No. 2011/07, University of Stuttgart.

Wetzstein, Leitner, Rosenberg, Brandic, Dustdar, and Leymann. Monitoring and Analyzing Influential Factors
of Business Process Performance. In Proceedings of the 13th IEEE international conference on Enterprise
Distributed Object Computing (EDOC'09). IEEE Press, Piscataway, NJ, USA, 118-127.

Wetzstein, Branimir; Strauch, Steve; Leymann, Frank: Measuring Performance Metrics of WS-BPEL Service
Compositions. In: Proceedings of the Fifth International Conference on Networking and Services (ICNS 2009),
Valencia, Spain, April 20-25, 2009.
Acknowledgements




      The research leading to these results has
      received funding from the European
      Community’s Seventh Framework
      Programme [FP7/2007-2013] under grant
      agreement 215483 (S-Cube).




                                                  © Philipp Leitner

Weitere ähnliche Inhalte

Ähnlich wie Process Performance Monitoring in Service Compositions

Gain insights into your business operations with BPM Analytics
Gain insights into your business operations with BPM AnalyticsGain insights into your business operations with BPM Analytics
Gain insights into your business operations with BPM AnalyticsAllen Chan
 
Hbb 2852 gain insights into your business operations with bpm and kibana
Hbb 2852 gain insights into your business operations with bpm and kibanaHbb 2852 gain insights into your business operations with bpm and kibana
Hbb 2852 gain insights into your business operations with bpm and kibanaAllen Chan
 
Data to Insight in a Flash: Introduction to Real-Time Analytics with WSO2 Com...
Data to Insight in a Flash: Introduction to Real-Time Analytics with WSO2 Com...Data to Insight in a Flash: Introduction to Real-Time Analytics with WSO2 Com...
Data to Insight in a Flash: Introduction to Real-Time Analytics with WSO2 Com...WSO2
 
How to Create Observable Integration Solutions Using WSO2 Enterprise Integrator
How to Create Observable Integration Solutions Using WSO2 Enterprise IntegratorHow to Create Observable Integration Solutions Using WSO2 Enterprise Integrator
How to Create Observable Integration Solutions Using WSO2 Enterprise IntegratorWSO2
 
Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)WSO2
 
Cross Language Process Model Reuse Po Em2009
Cross Language Process Model Reuse Po Em2009Cross Language Process Model Reuse Po Em2009
Cross Language Process Model Reuse Po Em2009mturi
 
FIWARE CEP GE introduction, ICT 2015
FIWARE CEP GE introduction, ICT 2015FIWARE CEP GE introduction, ICT 2015
FIWARE CEP GE introduction, ICT 2015ishkin
 
jBPM5 (Argentina workshop)
jBPM5 (Argentina workshop)jBPM5 (Argentina workshop)
jBPM5 (Argentina workshop)Kris Verlaenen
 
Complex Event Processing
Complex Event ProcessingComplex Event Processing
Complex Event ProcessingJohn Plummer
 
Process Analytics with Oracle BPM Suite 12c and BAM - OGh SIG SOA & BPM, 1st ...
Process Analytics with Oracle BPM Suite 12c and BAM - OGh SIG SOA & BPM, 1st ...Process Analytics with Oracle BPM Suite 12c and BAM - OGh SIG SOA & BPM, 1st ...
Process Analytics with Oracle BPM Suite 12c and BAM - OGh SIG SOA & BPM, 1st ...Lucas Jellema
 
Guido schmutz-jax2011-event-driven soa
Guido schmutz-jax2011-event-driven soaGuido schmutz-jax2011-event-driven soa
Guido schmutz-jax2011-event-driven soaGuido Schmutz
 
Microsoft SQL Server - StreamInsight Overview Presentation
Microsoft SQL Server - StreamInsight Overview PresentationMicrosoft SQL Server - StreamInsight Overview Presentation
Microsoft SQL Server - StreamInsight Overview PresentationMicrosoft Private Cloud
 
Event Stream Processing SAP
Event Stream Processing SAPEvent Stream Processing SAP
Event Stream Processing SAPGaurav Ahluwalia
 
Complex Event Processor 3.0.0 - An overview of upcoming features
Complex Event Processor 3.0.0 - An overview of upcoming features Complex Event Processor 3.0.0 - An overview of upcoming features
Complex Event Processor 3.0.0 - An overview of upcoming features WSO2
 
S4: Distributed Stream Computing Platform
S4: Distributed Stream Computing PlatformS4: Distributed Stream Computing Platform
S4: Distributed Stream Computing PlatformAleksandar Bradic
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented Architecturegulimran
 
WebSphere Business Process Simulationon
WebSphere Business Process SimulationonWebSphere Business Process Simulationon
WebSphere Business Process Simulationonrandikaucsc
 

Ähnlich wie Process Performance Monitoring in Service Compositions (20)

Gain insights into your business operations with BPM Analytics
Gain insights into your business operations with BPM AnalyticsGain insights into your business operations with BPM Analytics
Gain insights into your business operations with BPM Analytics
 
Hbb 2852 gain insights into your business operations with bpm and kibana
Hbb 2852 gain insights into your business operations with bpm and kibanaHbb 2852 gain insights into your business operations with bpm and kibana
Hbb 2852 gain insights into your business operations with bpm and kibana
 
Data to Insight in a Flash: Introduction to Real-Time Analytics with WSO2 Com...
Data to Insight in a Flash: Introduction to Real-Time Analytics with WSO2 Com...Data to Insight in a Flash: Introduction to Real-Time Analytics with WSO2 Com...
Data to Insight in a Flash: Introduction to Real-Time Analytics with WSO2 Com...
 
How to Create Observable Integration Solutions Using WSO2 Enterprise Integrator
How to Create Observable Integration Solutions Using WSO2 Enterprise IntegratorHow to Create Observable Integration Solutions Using WSO2 Enterprise Integrator
How to Create Observable Integration Solutions Using WSO2 Enterprise Integrator
 
Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)
 
SAP workflow events
SAP workflow eventsSAP workflow events
SAP workflow events
 
Intellica evam summary
Intellica evam summaryIntellica evam summary
Intellica evam summary
 
Cross Language Process Model Reuse Po Em2009
Cross Language Process Model Reuse Po Em2009Cross Language Process Model Reuse Po Em2009
Cross Language Process Model Reuse Po Em2009
 
172298
172298172298
172298
 
FIWARE CEP GE introduction, ICT 2015
FIWARE CEP GE introduction, ICT 2015FIWARE CEP GE introduction, ICT 2015
FIWARE CEP GE introduction, ICT 2015
 
jBPM5 (Argentina workshop)
jBPM5 (Argentina workshop)jBPM5 (Argentina workshop)
jBPM5 (Argentina workshop)
 
Complex Event Processing
Complex Event ProcessingComplex Event Processing
Complex Event Processing
 
Process Analytics with Oracle BPM Suite 12c and BAM - OGh SIG SOA & BPM, 1st ...
Process Analytics with Oracle BPM Suite 12c and BAM - OGh SIG SOA & BPM, 1st ...Process Analytics with Oracle BPM Suite 12c and BAM - OGh SIG SOA & BPM, 1st ...
Process Analytics with Oracle BPM Suite 12c and BAM - OGh SIG SOA & BPM, 1st ...
 
Guido schmutz-jax2011-event-driven soa
Guido schmutz-jax2011-event-driven soaGuido schmutz-jax2011-event-driven soa
Guido schmutz-jax2011-event-driven soa
 
Microsoft SQL Server - StreamInsight Overview Presentation
Microsoft SQL Server - StreamInsight Overview PresentationMicrosoft SQL Server - StreamInsight Overview Presentation
Microsoft SQL Server - StreamInsight Overview Presentation
 
Event Stream Processing SAP
Event Stream Processing SAPEvent Stream Processing SAP
Event Stream Processing SAP
 
Complex Event Processor 3.0.0 - An overview of upcoming features
Complex Event Processor 3.0.0 - An overview of upcoming features Complex Event Processor 3.0.0 - An overview of upcoming features
Complex Event Processor 3.0.0 - An overview of upcoming features
 
S4: Distributed Stream Computing Platform
S4: Distributed Stream Computing PlatformS4: Distributed Stream Computing Platform
S4: Distributed Stream Computing Platform
 
Service Oriented Architecture
Service Oriented ArchitectureService Oriented Architecture
Service Oriented Architecture
 
WebSphere Business Process Simulationon
WebSphere Business Process SimulationonWebSphere Business Process Simulationon
WebSphere Business Process Simulationon
 

Mehr von virtual-campus

S-CUBE LP: Analysis Operations on SLAs: Detecting and Explaining Conflicting ...
S-CUBE LP: Analysis Operations on SLAs: Detecting and Explaining Conflicting ...S-CUBE LP: Analysis Operations on SLAs: Detecting and Explaining Conflicting ...
S-CUBE LP: Analysis Operations on SLAs: Detecting and Explaining Conflicting ...virtual-campus
 
S-CUBE LP: Chemical Modeling: Workflow Enactment based on the Chemical Metaphor
S-CUBE LP: Chemical Modeling: Workflow Enactment based on the Chemical MetaphorS-CUBE LP: Chemical Modeling: Workflow Enactment based on the Chemical Metaphor
S-CUBE LP: Chemical Modeling: Workflow Enactment based on the Chemical Metaphorvirtual-campus
 
S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...
S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...
S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...virtual-campus
 
S-CUBE LP: The Chemical Computing model and HOCL Programming
S-CUBE LP: The Chemical Computing model and HOCL ProgrammingS-CUBE LP: The Chemical Computing model and HOCL Programming
S-CUBE LP: The Chemical Computing model and HOCL Programmingvirtual-campus
 
S-CUBE LP: Executing the HOCL: Concept of a Chemical Interpreter
S-CUBE LP: Executing the HOCL: Concept of a Chemical InterpreterS-CUBE LP: Executing the HOCL: Concept of a Chemical Interpreter
S-CUBE LP: Executing the HOCL: Concept of a Chemical Interpretervirtual-campus
 
S-CUBE LP: SLA-based Service Virtualization in distributed, heterogenious env...
S-CUBE LP: SLA-based Service Virtualization in distributed, heterogenious env...S-CUBE LP: SLA-based Service Virtualization in distributed, heterogenious env...
S-CUBE LP: SLA-based Service Virtualization in distributed, heterogenious env...virtual-campus
 
S-CUBE LP: Service Discovery and Task Models
S-CUBE LP: Service Discovery and Task ModelsS-CUBE LP: Service Discovery and Task Models
S-CUBE LP: Service Discovery and Task Modelsvirtual-campus
 
S-CUBE LP: Impact of SBA design on Global Software Development
S-CUBE LP: Impact of SBA design on Global Software DevelopmentS-CUBE LP: Impact of SBA design on Global Software Development
S-CUBE LP: Impact of SBA design on Global Software Developmentvirtual-campus
 
S-CUBE LP: Techniques for design for adaptation
S-CUBE LP: Techniques for design for adaptationS-CUBE LP: Techniques for design for adaptation
S-CUBE LP: Techniques for design for adaptationvirtual-campus
 
S-CUBE LP: Self-healing in Mixed Service-oriented Systems
S-CUBE LP: Self-healing in Mixed Service-oriented SystemsS-CUBE LP: Self-healing in Mixed Service-oriented Systems
S-CUBE LP: Self-healing in Mixed Service-oriented Systemsvirtual-campus
 
S-CUBE LP: Analyzing and Adapting Business Processes based on Ecologically-aw...
S-CUBE LP: Analyzing and Adapting Business Processes based on Ecologically-aw...S-CUBE LP: Analyzing and Adapting Business Processes based on Ecologically-aw...
S-CUBE LP: Analyzing and Adapting Business Processes based on Ecologically-aw...virtual-campus
 
S-CUBE LP: Preventing SLA Violations in Service Compositions Using Aspect-Bas...
S-CUBE LP: Preventing SLA Violations in Service Compositions Using Aspect-Bas...S-CUBE LP: Preventing SLA Violations in Service Compositions Using Aspect-Bas...
S-CUBE LP: Preventing SLA Violations in Service Compositions Using Aspect-Bas...virtual-campus
 
S-CUBE LP: Analyzing Business Process Performance Using KPI Dependency Analysis
S-CUBE LP: Analyzing Business Process Performance Using KPI Dependency AnalysisS-CUBE LP: Analyzing Business Process Performance Using KPI Dependency Analysis
S-CUBE LP: Analyzing Business Process Performance Using KPI Dependency Analysisvirtual-campus
 
S-CUBE LP: Service Level Agreement based Service infrastructures in the conte...
S-CUBE LP: Service Level Agreement based Service infrastructures in the conte...S-CUBE LP: Service Level Agreement based Service infrastructures in the conte...
S-CUBE LP: Service Level Agreement based Service infrastructures in the conte...virtual-campus
 
S-CUBE LP: Runtime Prediction of SLA Violations Based on Service Event Logs
S-CUBE LP: Runtime Prediction of SLA Violations Based on Service Event LogsS-CUBE LP: Runtime Prediction of SLA Violations Based on Service Event Logs
S-CUBE LP: Runtime Prediction of SLA Violations Based on Service Event Logsvirtual-campus
 
S-CUBE LP: Proactive SLA Negotiation
S-CUBE LP: Proactive SLA NegotiationS-CUBE LP: Proactive SLA Negotiation
S-CUBE LP: Proactive SLA Negotiationvirtual-campus
 
S-CUBE LP: A Soft-Constraint Based Approach to QoS-Aware Service Selection
S-CUBE LP: A Soft-Constraint Based Approach to QoS-Aware Service SelectionS-CUBE LP: A Soft-Constraint Based Approach to QoS-Aware Service Selection
S-CUBE LP: A Soft-Constraint Based Approach to QoS-Aware Service Selectionvirtual-campus
 
S-CUBE LP: Variability Modeling and QoS Analysis of Web Services Orchestrations
S-CUBE LP: Variability Modeling and QoS Analysis of Web Services OrchestrationsS-CUBE LP: Variability Modeling and QoS Analysis of Web Services Orchestrations
S-CUBE LP: Variability Modeling and QoS Analysis of Web Services Orchestrationsvirtual-campus
 
S-CUBE LP: Run-time Verification for Preventive Adaptation
S-CUBE LP: Run-time Verification for Preventive AdaptationS-CUBE LP: Run-time Verification for Preventive Adaptation
S-CUBE LP: Run-time Verification for Preventive Adaptationvirtual-campus
 
S-CUBE LP: Online Testing for Proactive Adaptation
S-CUBE LP: Online Testing for Proactive AdaptationS-CUBE LP: Online Testing for Proactive Adaptation
S-CUBE LP: Online Testing for Proactive Adaptationvirtual-campus
 

Mehr von virtual-campus (20)

S-CUBE LP: Analysis Operations on SLAs: Detecting and Explaining Conflicting ...
S-CUBE LP: Analysis Operations on SLAs: Detecting and Explaining Conflicting ...S-CUBE LP: Analysis Operations on SLAs: Detecting and Explaining Conflicting ...
S-CUBE LP: Analysis Operations on SLAs: Detecting and Explaining Conflicting ...
 
S-CUBE LP: Chemical Modeling: Workflow Enactment based on the Chemical Metaphor
S-CUBE LP: Chemical Modeling: Workflow Enactment based on the Chemical MetaphorS-CUBE LP: Chemical Modeling: Workflow Enactment based on the Chemical Metaphor
S-CUBE LP: Chemical Modeling: Workflow Enactment based on the Chemical Metaphor
 
S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...
S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...
S-CUBE LP: Quality of Service-Aware Service Composition: QoS optimization in ...
 
S-CUBE LP: The Chemical Computing model and HOCL Programming
S-CUBE LP: The Chemical Computing model and HOCL ProgrammingS-CUBE LP: The Chemical Computing model and HOCL Programming
S-CUBE LP: The Chemical Computing model and HOCL Programming
 
S-CUBE LP: Executing the HOCL: Concept of a Chemical Interpreter
S-CUBE LP: Executing the HOCL: Concept of a Chemical InterpreterS-CUBE LP: Executing the HOCL: Concept of a Chemical Interpreter
S-CUBE LP: Executing the HOCL: Concept of a Chemical Interpreter
 
S-CUBE LP: SLA-based Service Virtualization in distributed, heterogenious env...
S-CUBE LP: SLA-based Service Virtualization in distributed, heterogenious env...S-CUBE LP: SLA-based Service Virtualization in distributed, heterogenious env...
S-CUBE LP: SLA-based Service Virtualization in distributed, heterogenious env...
 
S-CUBE LP: Service Discovery and Task Models
S-CUBE LP: Service Discovery and Task ModelsS-CUBE LP: Service Discovery and Task Models
S-CUBE LP: Service Discovery and Task Models
 
S-CUBE LP: Impact of SBA design on Global Software Development
S-CUBE LP: Impact of SBA design on Global Software DevelopmentS-CUBE LP: Impact of SBA design on Global Software Development
S-CUBE LP: Impact of SBA design on Global Software Development
 
S-CUBE LP: Techniques for design for adaptation
S-CUBE LP: Techniques for design for adaptationS-CUBE LP: Techniques for design for adaptation
S-CUBE LP: Techniques for design for adaptation
 
S-CUBE LP: Self-healing in Mixed Service-oriented Systems
S-CUBE LP: Self-healing in Mixed Service-oriented SystemsS-CUBE LP: Self-healing in Mixed Service-oriented Systems
S-CUBE LP: Self-healing in Mixed Service-oriented Systems
 
S-CUBE LP: Analyzing and Adapting Business Processes based on Ecologically-aw...
S-CUBE LP: Analyzing and Adapting Business Processes based on Ecologically-aw...S-CUBE LP: Analyzing and Adapting Business Processes based on Ecologically-aw...
S-CUBE LP: Analyzing and Adapting Business Processes based on Ecologically-aw...
 
S-CUBE LP: Preventing SLA Violations in Service Compositions Using Aspect-Bas...
S-CUBE LP: Preventing SLA Violations in Service Compositions Using Aspect-Bas...S-CUBE LP: Preventing SLA Violations in Service Compositions Using Aspect-Bas...
S-CUBE LP: Preventing SLA Violations in Service Compositions Using Aspect-Bas...
 
S-CUBE LP: Analyzing Business Process Performance Using KPI Dependency Analysis
S-CUBE LP: Analyzing Business Process Performance Using KPI Dependency AnalysisS-CUBE LP: Analyzing Business Process Performance Using KPI Dependency Analysis
S-CUBE LP: Analyzing Business Process Performance Using KPI Dependency Analysis
 
S-CUBE LP: Service Level Agreement based Service infrastructures in the conte...
S-CUBE LP: Service Level Agreement based Service infrastructures in the conte...S-CUBE LP: Service Level Agreement based Service infrastructures in the conte...
S-CUBE LP: Service Level Agreement based Service infrastructures in the conte...
 
S-CUBE LP: Runtime Prediction of SLA Violations Based on Service Event Logs
S-CUBE LP: Runtime Prediction of SLA Violations Based on Service Event LogsS-CUBE LP: Runtime Prediction of SLA Violations Based on Service Event Logs
S-CUBE LP: Runtime Prediction of SLA Violations Based on Service Event Logs
 
S-CUBE LP: Proactive SLA Negotiation
S-CUBE LP: Proactive SLA NegotiationS-CUBE LP: Proactive SLA Negotiation
S-CUBE LP: Proactive SLA Negotiation
 
S-CUBE LP: A Soft-Constraint Based Approach to QoS-Aware Service Selection
S-CUBE LP: A Soft-Constraint Based Approach to QoS-Aware Service SelectionS-CUBE LP: A Soft-Constraint Based Approach to QoS-Aware Service Selection
S-CUBE LP: A Soft-Constraint Based Approach to QoS-Aware Service Selection
 
S-CUBE LP: Variability Modeling and QoS Analysis of Web Services Orchestrations
S-CUBE LP: Variability Modeling and QoS Analysis of Web Services OrchestrationsS-CUBE LP: Variability Modeling and QoS Analysis of Web Services Orchestrations
S-CUBE LP: Variability Modeling and QoS Analysis of Web Services Orchestrations
 
S-CUBE LP: Run-time Verification for Preventive Adaptation
S-CUBE LP: Run-time Verification for Preventive AdaptationS-CUBE LP: Run-time Verification for Preventive Adaptation
S-CUBE LP: Run-time Verification for Preventive Adaptation
 
S-CUBE LP: Online Testing for Proactive Adaptation
S-CUBE LP: Online Testing for Proactive AdaptationS-CUBE LP: Online Testing for Proactive Adaptation
S-CUBE LP: Online Testing for Proactive Adaptation
 

Kürzlich hochgeladen

TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
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
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
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
 
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
 
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
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
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
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
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
 

Kürzlich hochgeladen (20)

TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
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
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
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
 
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
 
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
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
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
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
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
 

Process Performance Monitoring in Service Compositions

  • 1. S-Cube Learning Package Process Performance Monitoring in Service Compositions University of Stuttgart (USTUTT), TU Wien (TUW) Branimir Wetzstein, USTUTT www.s-cube-network.eu
  • 2. Learning Package Categorization S-Cube Adaptable Coordinated Service Compositions Adaptable and QoS-aware Service Compositions Process Performance Monitoring in Service Compositions
  • 3. Learning Package Overview  Problem Description  Process Performance Monitoring in Service Compositions  Discussion  Conclusions
  • 4. Let’s Consider a Scenario (1)  Assume a reseller who has implemented a business process as a service composition  He interacts with external services of customer, suppliers, shipper, bank, etc. in a service choreography
  • 5. Let’s Consider a Scenario (2)  The reseller is interested in measuring the process performance of his own internal business process  Process performance metrics (PPMs) based on time, cost, quality, customer satisfaction dimensions – Order Fulfillment Lead Time, Perfect Order Fulfillment (in time and in full), Customer Complaint Rate, …  QoS metrics, evaluating characteristics of the process execution infrastructure, e.g. availability of the service endpoints, … Listener Service Monitor Dashboard Event Metric definitions Reseller Event Metrics Database QoS Monitor
  • 6. Let’s Consider a Scenario (3)  The reseller is also interested monitoring across public partner processes in the choreography  Process Tracking: – Partners want to track the state of the choreography beyond their own process – Example: Customer wants to track its shipment (Amazon-DHL Example) - Where is my shipment at the moment? Customer Reseller Shipper Get Order Status Get Shipment Status Event Event Event Event Event Queues / Topics
  • 7. Let’s Consider a Scenario (4)  The reseller is also interested monitoring across public partner processes in the choreography  Evaluate cross-partner metrics for evaluation of KPIs and SLAs – E.g., order fulfilment lead time –  Gather and correlate events from different processes Customer Reseller Event Event CEP Event
  • 8. Learning Package Overview  Problem Description  Process Performance Monitoring in Service Compositions  Discussion  Conclusions
  • 9. Event-Based Monitoring of BPEL Service Orchestrations  Our monitoring approach for service orchestrations supports: – Process Performance Metrics (PPMs) based on process events (BPEL event model) – QoS metrics based on QoS events provided by QoS monitors – Correlation of Process events and QoS events – Metric calculation based on Complex Event Processing (ESPER) Listener Service Event Complex Event Dashboard Processing Process Engine Metric definitions Event Metrics QoS Monitor Database Event Other Event Sources
  • 10. BPEL Monitoring Mechanisms  BPEL engines typically support following monitoring mechanisms: – Events are published (asynchronously) to message queues and topics which external monitors can subscribe to – Events are stored persistently in an audit trail (database) – A monitoring interface which enables active querying of information on deployed processes and running process instances  Supported events are defined in an Event Model – Unfortunately, however, there is NO standard BPEL event metamodel  Every BPEL engine provides different types of events – Some BPEL engines support also (synchronous) blocking events; the execution of the process instance is halted until it is unblocked by an incoming message – Most BPEL engines enable configuring an event filter for a process model (using a deployment descriptor)  thus only needed events are published at runtime which improves performance!
  • 11. Background: BPEL 2.0 Event Model  BPEL 2.0 Event Model contains: – State Models - Separate state models for instances of following elements: Process, Activity, Scope Activity, Loop Activity, Invoke Activity, Link, Variable, Partner Link, Correlation Set - Transitions between States are denoted by different types of Events – Event Contents - Event attributes, in particular the different IDs which identify the corresponding element in the process instance Kopp, Oliver; Henke, Sebastian; Karastoyanova, Dimka; Khalaf, Rania; Leymann, Frank ; Sonntag, Mirko; Steinmetz, Thomas; Unger, Tobias; Wetzstein, Branimir: An Event Model for WS-BPEL 2.0, Technical Report No. 2011/07, University of Stuttgart.
  • 13. Background: Event Contents  An event contains following information: – event name – creation timestamp – IDs which enable assignment of the event to the corresponding BPEL element instance – other information, e.g. variable value BPEL element Needed identifiers Process Model • QName of the process model • version number of the process model Process Instance • globally unique instance ID of the process instance Activity Instance • An XPath expression, which uniquely identifies the construct in the process model • Globally unique instance ID of the process instance • Unique instance ID of the innermost scope instance, where the activity is nested in • unique instance ID of the activity instance Link, Variable, Partner • unique instance ID of the process instance Link, Correlation Set • unique instance ID of the scope where the element is declared Instances • an XPath expression uniquely identifying the construct in the process model
  • 14. Correlation of BPEL Events  Calculation of BPEL process instance metrics can be done based on instance IDs set by the BPEL engine SELECT e2.timestamp – e1.timestamp FROM Activity_Executing e1, Activity_Completed e2 WHERE e1.pname=„POProcess“ AND e1.aname=„Receive Order“ AND e2.aname=„Ship Order“ AND e1.pid = e2.pid  When, however, the BPEL process is not the only event source, other correlation tokens have to be chosen: SELECT e2.timestamp – e1.timestamp FROM Activity_Executing e1, Variable_Modification e2, Order_Shipped e3 WHERE e1.pname=„POProcess“ AND e1.aname=„Receive Order“ AND e2.vname=„Order“ AND e1.pid = e2.pid AND e2.orderId = e3.orderId
  • 15. Monitoring of Process Performance Metrics (PPMs)  PPMs are metrics defined based on runtime events of processes – We focus here on runtime events of WS-BPEL service orchestrations, but in general our approach supports arbitrary events of information systems participating in the business process  We distinguish between resource events and complex events – Resource event definitions specify (based on the BPEL event model) which raw events we need from the BPEL engine – Complex events are defined (recursively) based on other events and are used for PPM calculation
  • 16. Definition of Resource Events  A resource event definition specifies the following three elements: – Monitored resource: concrete BPEL entity instance + which states (as defined in the BPEL event model) – Process data: Optionally, one can specify which process data (defined as WS- BPEL variable) is to be part of the event. The data is read when the event is published. – Target message queue or pub/sub topic <resourceEventDefinition name="OrderReceivedEvent"> <monitoredResource process="reseller:PurchaseOrderProcess" scope="process" activity="reseller:ReceivePO" state="completed"/> <data> <processVariable name="order" variable="purchaseOrder"/> </data> <publish> <queue name="PurchaseOrderProcess.ResourceEvents" /> </publish> </resourceEventDefinition>
  • 17. Definition of Complex Events  Complex events are specified by correlating and aggregating existing events (resource and complex events)  A complex event definition specifies the following three elements: – Consumed events: source event queue(s) and/or topic(s) – Event aggregation statement: CEP statement which correlates and aggregates the consumed events to a new event – Target message queue or pub/sub topic <complexEventDefinition name="OrderFulfillmentTimeEvent"> <consume><queue name="PurchaseOrderProcess.ResourceEvents" /></consume> <eventAggregation> <statement><![CDATA[ SELECT abs(b.timestamp - a.timestamp) AS metricValue, "ms" AS unit, a.piid AS piid FROM PATTERN [EVERY a = ResourceEvent(name="OrderReceivedEvent") -> b = ResourceEvent(name="ReceivedDeliveryNotificationEvent" AND piid = a.piid) ] ]]><statement> </eventAggregation> <publish> <topic name="PurchaseOrderProcess.metrics" /> </publish> </complexEventDefinition>
  • 18. Monitoring QoS Metrics  In our context, QoS can be measured in three different ways: – probing by a separate QoS monitor (e.g., probing whether an endpoint is available, see example below) – instrumentation of the WS-BPEL engine – instrumentation of the WS-BPEL process (evaluating QoS parameters using PPMs, e.g. response times of WS can be estimated through WS-BPEL activity durations) <QoSEventDefinition name="ProcessEndpointAvailableEvent"> <availabilityProbe> <endpoint> http://localhost:8082/.../poProcess?wsdl </endpoint> <testFrequencyPerMinute>20</testFrequencyPerMinute> </availabilityProbe> <publish> <queue name="PurchaseOrderProcess.QoSEvents" /> </publish> </QoSEventDefinition>
  • 19. Correlation of PPMs and QoS Metrics  If QoS events do not contain corresponding process instance identifiers, then correlation with process events is typically done based on time periods… <complexEventDefinition name="ProcessInstanceAvailableEvent"> <consume>...</consume> <eventAggregation> <statement><![CDATA[ SELECT begin.piid as piid, q.available as available from PATTERN [ begin=ResourceEvent(name="OrderProcessingStartedEvent") -> q=QoSEvent(name="ProcessEndpointAvailableEvent") UNTIL end=ResourceEvent(name ="OrderProcessingCompletedEvent" AND piid = begin.piid ) ]]><statement> </eventAggregation> <publish> <topic name="PurchaseOrderProcess.metrics" /> </publish> </complexEventDefinition> © Branimir Wetzstein
  • 20. Deployment and Monitoring  Deployment of the monitor model:  Resource event definitions are deployed to Event Listener in the BPEL Engine (Apache ODE), QoS Monitor, and other arbitrary event adapters  Complex event definitions are deployed to the ESPER CEP Engine Listener Service Event Complex Event Dashboard Processing Process Engine Metric definitions Event Metrics QoS Monitor Database Event Other Event Sources
  • 21. Cross-Process Monitoring in Service Choreographies (1) © Branimir Wetzstein
  • 22. Cross-Process Monitoring in Service Choreographies (2)  For specification of monitoring solutions across partners, a single BPEL process is no more enough – We now use a service choreography description as basis – A service choreography model is an agreement between partners on their public processes and message exchanges  We base our approach on a BPEL4Chor description – Each partner exposes an abstract BPEL process – A topology document specifies how these abstract processes are connected together by message links  On top of the BPEL4Chor we specify a monitoring agreement – Similar to the monitor model specified for one BPEL process – An XML-based document specifying which resource events and complex events the partners have to provide © Branimir Wetzstein
  • 23. Monitoring Agreement (MA)  An MA consists of : – Resource event definitions based on the BPEL event model and abstract processes of the BPEL4Chor model – Complex event definitions based on other event defining event aggregation statements (in ESPER) <monitoringAgreement xmlns:chor="http://purchaseOrder/choreography" xmlns:reseller="http://purchaseOrder/reseller"> <resorceEventDefinitions> <resourceEventDefinition name="OrderReceivedEvent">… </resourceEventDefinition> ... <resorceEventDefinitions> <complexEventDefinitions> <complexEventDefinition providedBy="reseller“ name="CustomerAOrderReceivedEvent" choreography="chor:orderChoreography">… </complexEventDefinition> ... </complexEventDefinitions> <monitoringAgreement> © Branimir Wetzstein
  • 24. Event Correlation in Choreographies  In order to be able to perform event correlation for monitored resources, corresponding resource identifiers have to be included in events – For choreography instances, additional choregraphy model and instance identifier have to be included into events  In addition, those two identifiers have to be transported in message interactions, e.g., as part of SOAP Header <soap:header > <chor:choreography xmlns:chor =" http: // iaas / monitoring / choreography "> <chor:cid >{http: //.../ choreography } orderChoreography </ chor:cid > <chor:ciid >{...} orderChoreography /2009 -11 -02 -12 :05:21:005</ chor:ciid > </ chor:choreography > ... </ soap:header > © Branimir Wetzstein
  • 25. Prototype Implementation  A prototype has been implemented based on… – Apache ODE BPEL Engine: A new Event Listener is configured based on resource event definitions – ESPER CEP Engine © Branimir Wetzstein
  • 26. Learning Package Overview  Problem Description  Process Performance Monitoring in Service Compositions  Discussion  Conclusions © Philipp Leitner
  • 27. Discussion - Advantages  The Event-based Monitoring Approach based on a state-of- the-art CEP engine has the following advantages: – Complex Computations– A state-of-the-art CEP language is more powerful than most domain-specific or specialized monitoring languages – High throughput, low latency – provided by the underlying CEP engine implementation – Support for arbitrary events – Process events based on BPEL event model and some QoS events are directly supported
  • 28. Discussion - Disadvantages  … but of course the approach also has some disadvantages. – Specification of Monitored Properties – is relatively time-consuming and error-prone because of the relatively low-level language – Transactionality and Persistence – during event processing is not directly supported
  • 29. Learning Package Overview  Problem Description  Process Performance Monitoring in Service Compositions  Discussion  Conclusions © Philipp Leitner
  • 30. Summary  Event-based Monitoring of processes based on BPEL and BPEL4Chor Models  Monitor model specifies: 1. Resource events which should be provided by BPEL engine (based on BPEL event model) or QoS monitor 2. Complex events which specify higher-level monitored properties based on an event processing language (ESPER EPL)  Monitoring across processes: – Choreography model with public process descriptions as basis – Extensions for choreography instance identification in message and event exchanges needed
  • 31. Further S-Cube Reading Wetzstein, Branimir; Leitner, Philipp; Rosenberg, Florian; Dustdar, Schahram; Leymann, Frank: Identifying Influential Factors of Business Process Performance Using Dependency Analysis. In: Enterprise Information Systems. Vol. 5(1), Taylor & Francis, 2010. Wetzstein, Branimir; Karastoyanova, Dimka; Kopp, Oliver; Leymann, Frank; Zwink, Daniel: Cross- Organizational Process Monitoring based on Service Choreographies. In: Proceedings of the 25th Annual ACM Symposium on Applied Computing (SAC 2010); Sierre, Switzerland, 21-26 March, 2010. Kopp, Oliver; Henke, Sebastian; Karastoyanova, Dimka; Khalaf, Rania; Leymann, Frank ; Sonntag, Mirko; Steinmetz, Thomas; Unger, Tobias; Wetzstein, Branimir: An Event Model for WS-BPEL 2.0, Technical Report No. 2011/07, University of Stuttgart. Wetzstein, Leitner, Rosenberg, Brandic, Dustdar, and Leymann. Monitoring and Analyzing Influential Factors of Business Process Performance. In Proceedings of the 13th IEEE international conference on Enterprise Distributed Object Computing (EDOC'09). IEEE Press, Piscataway, NJ, USA, 118-127. Wetzstein, Branimir; Strauch, Steve; Leymann, Frank: Measuring Performance Metrics of WS-BPEL Service Compositions. In: Proceedings of the Fifth International Conference on Networking and Services (ICNS 2009), Valencia, Spain, April 20-25, 2009.
  • 32. Acknowledgements The research leading to these results has received funding from the European Community’s Seventh Framework Programme [FP7/2007-2013] under grant agreement 215483 (S-Cube). © Philipp Leitner