SlideShare une entreprise Scribd logo
1  sur  51
What’s Happening?
    Part Two

             ODTUG Kaleidoscope 2010
                  Thursday, 30th June


                  Lucas Jellema
          AMIS, The Netherlands
2. Event Patterns, ADF, BAM
•   Discussion Forum Pattern
•   Turn event into Human Task via Mediator
•   Missing Event Detection
•   ADF BC publishing onto the EDN
    – ADF consuming events
• Business Activity Monitoring
“EDN == OTN”
       Discussion Forum Pattern
• Asking a question – of no one in particular
  – Publish the question
  – Hope for an answer
  – From any one at all (or multiple responders
  – Be notified of the response when it is available
• Instead of sending an email to a specific
  individual
  – Who may not know the answer or be away on
    vacation or whose email address you do not have
Discussion Forum Pattern for
        Composite applications
• Service A publishes a request
   – In the form of an event
   – With Correlation initiated (based on a GUID in the event
     payload)
• The event can be consumed by multiple composites,
  such as Service B
• Service B publishes a response with the GUID in the
  payload
• Service A receives the response and continues
  processing
Define the EDN Event Types
• PatientDataRequestEvent and
  PatientDataResponseEvent
Publish Event & Initiate Correlation
Set up correlation
            in a BPEL process
• Create Correlation Set
• Create Property in Set
• Create Property Aliases
  for every message
  (inbound or outbound)
  involved in correlation
When an EDN Event should trigger
         a human task
• We can create a Mediator or BPEL process
  that consumes the event
• And then instantiates the Human Task
  – For example: Failed Temperature Sensor
Demo
• Create test event using ‘generate XML
  document from XSD’
• For detector cluster …
(test) Event turned
 into Human Task
Missing Event Detection
• Patient arrived – but never left
• Bags went into the airport luggage handling
  system – never to come out again
• There should be a signal at least once every
  hour, but it has been quiet for five fours now
• There have been no cars coming out of the
  tunnel for the last 10 minutes
• The visitor to the White House went into the
  secure zone- but has failed to come out again
How do you detect something that
         is not there?
• Missing events are … missing
  – So how are they detected?
• Typical pattern for Complex Event Processing
  – And also supported in BAM
• In general one would need to know what to
  expect when, check at that time and find that
  either the event is there or it is not….
• What can we do in the SOA Suite?
(somewhat clunky)
    implementation in SOA Suite
• BPEL process subscribes to the expected event
  – Through correlation on the payload
• BPEL process is instantiated knowing when
  the event should be arriving
• BPEL processes contains a pick activity
  – Waiting until the deadline
  – Waiting for the event to arrive
• When the deadline arrives (and the event
  does not) the whistle is blown
ADF and EDN
ADF Faces Web Application
     PatientAdministration




               Application Module
                 PatientsService

                   View Object
                   PatientsVw

       ADF         Entity Object
   Business           Patient
Components



                    PATIENTS
ADF Application for Patient
           Administration
• One Business Event defined at St. Matthews is
  the ‘Patient has moved’ event
• Any application, process or service that (first)
  registers or detects that event should publish it
• The Patient Administration application is one
  point of origination for this business event
  – And therefore should publish it to the EDN
• ADF Business Components has an easy
  integration with EDN
ADF Faces Web Application
     PatientAdministration




               Application Module
                 PatientsService

                   View Object                       SOA Suite
                   PatientsVw
                                                 E
       ADF         Entity Object                 D
   Business           Patient                    N
Components

                                    PatientHas
                                      Moved
                    PATIENTS
Configure ADF BC Entity Objects
The Business Event definition
Consume Event in SOA Suite
And…. Action!!
Demo
• ADF PatientAdministration Application
  – Used to manipulate a patient’s address
• EDN events fired by the ADF Application
  – And consumed by the
    ‘ConsumePatientHasMoved’ composite
    application
ADF consuming EDN events
Steps:
• EDN events published on JMS
• ADF Faces application has registered as
  listener on the JMS queue
  – An application scope bean collects events in
    ‘active data collection’
• ADF Faces page contains Active Table based
  on the ‘active data collection’
  – New EDN events are pushed to the ADF Faces UI
Introducing
      Business Activity Monitoring
• Operational Business Intelligence
• Data fed in from many sources:
    – RFID sensors, BPEL, Database Triggers, RSS, ODI
• Real Time insight
• Dashboard
• Live updates
• Looking for threshold crossing, exceptions, trends,
  missing events
• Display visually and turn into alerts & notifications
Introducing
Business Activity Monitoring
                             ADF
                          Application
Live & Real Time dashboard in
    regular ADF Web Application
• Active Data Service (‘server push’) will pick
  changes in the
  BAM Data Control
  – Underlying BAM
    ADC Data Object
• And push them to
  the chart (or table)
  in the ADF page
BAM reporting on operations in
         the SOA Suite
• SOA Composite applications can report to BAM
  in multiple ways
  – Using the BAM Adapter
  – From BPEL using the BAM Sensor action
  – From BPEL using the Monitors
  – Or: invoking a BAM WebService or using JMS
• Signals from Composite applications are
  applied to Data Objects in Active Data Cache
  – Leading to dashboard updates & alerts fired
DEMO: BAM & SOA Suite
• Create BAM Data Object: Patient
  – Attributes Name, Age, Country
• Create Report on top of Data Object
  – Bar Chart with # per country
  – Gauge with average age?
• Add BAM Adapter Service to SOA Composite
  application PatientCreator
  – Feed data from SOA Composite to BAM Data
    Object
PatientAppointmentService
          feeding into BAM
• BAM Data Object PatientAppointment
• SOA Composite doing create and update on
  Patient Appointments
• BAM Dashboard reports on:
  – Number of new appointments over time
  – 3d bar chart # appointments per status
  – Gauge for # of unscheduled appointments
  – Age distribution under patients
  – Priority Assignments
Data Object PatientAppointment
Add BAM Adapter
Configure BAM Adapter Service
Feeding Status Updates to BAM
BAM Alert Rules
• Specify Conditions on Data Objects
  – In terms of attributes, functions and operators
• Specify how frequently the rule should be
  verified against the Data Objects
• Specify the action to be taken when violated
BAM missing event detection
• Appointment goes unscheduled for over 72
  hours
• Steps:
  – Add a calculated attribute schedulingDeadline:
    initialReceptionData + 72 hours
  – Create a rule: schedulingDeadline > now()
  – Alert action: send email when rule is violated
     • When scheduling has not taken place within the
       allotted timeframe
Appointment Unscheduled
BPEL Monitor
• BPEL process can be decorated with monitors
  that report into BAM
BPEL Monitoring
• Activate monitoring on the BPEL process




• Create and configure the monitors
  – Counter
  – Interval
  – Business Indicator
BPEL Monitors: Counter
BPEL Monitors: Counter
BPEL Monitors: Business Indicator
Summary
• Discussion Forum pattern – use events for
  anonymous two-way communication
• Missing Event Detection
• ADF BC publishing events onto EDN
• Business Activity Monitoring – visual real time
  insight – fed from SOA Suite, JMS, ODI, …
  – BAM Adapter
  – BPEL Monitor

Contenu connexe

Tendances

6.Live Framework 和Mesh Services
6.Live Framework 和Mesh Services6.Live Framework 和Mesh Services
6.Live Framework 和Mesh Services
GaryYoung
 

Tendances (20)

How to choose the right Integration Framework - Apache Camel (JBoss, Talend),...
How to choose the right Integration Framework - Apache Camel (JBoss, Talend),...How to choose the right Integration Framework - Apache Camel (JBoss, Talend),...
How to choose the right Integration Framework - Apache Camel (JBoss, Talend),...
 
Cloud Computing: Changing the software business
Cloud Computing: Changing the software businessCloud Computing: Changing the software business
Cloud Computing: Changing the software business
 
GigaSpaces CCF 4 Xap
GigaSpaces CCF 4 XapGigaSpaces CCF 4 Xap
GigaSpaces CCF 4 Xap
 
Eda on the azure services platform
Eda on the azure services platformEda on the azure services platform
Eda on the azure services platform
 
Event sourcing
Event sourcingEvent sourcing
Event sourcing
 
Mobility & security Microsoft SPE5 By Bipeen Sinha
Mobility & security Microsoft SPE5 By Bipeen SinhaMobility & security Microsoft SPE5 By Bipeen Sinha
Mobility & security Microsoft SPE5 By Bipeen Sinha
 
Deploying your Application to SQLRally
Deploying your Application to SQLRallyDeploying your Application to SQLRally
Deploying your Application to SQLRally
 
Introduction to Microservices
Introduction to MicroservicesIntroduction to Microservices
Introduction to Microservices
 
Latest Updates to Azure Integration Services
Latest Updates to Azure Integration ServicesLatest Updates to Azure Integration Services
Latest Updates to Azure Integration Services
 
OFM AIA FP Implementation View and Case Study
OFM AIA FP Implementation View and Case StudyOFM AIA FP Implementation View and Case Study
OFM AIA FP Implementation View and Case Study
 
Event driven architecture
Event driven architectureEvent driven architecture
Event driven architecture
 
Event Driven Architecture
Event Driven ArchitectureEvent Driven Architecture
Event Driven Architecture
 
Microsoft Azure for Small and Medium Businesses
Microsoft Azure for Small and Medium Businesses Microsoft Azure for Small and Medium Businesses
Microsoft Azure for Small and Medium Businesses
 
Azure Compute, Networking and Storage Overview
Azure Compute, Networking and Storage OverviewAzure Compute, Networking and Storage Overview
Azure Compute, Networking and Storage Overview
 
Azure hands on lab
Azure hands on labAzure hands on lab
Azure hands on lab
 
Microsoft Database Options
Microsoft Database OptionsMicrosoft Database Options
Microsoft Database Options
 
Notification Service 2005
Notification Service 2005Notification Service 2005
Notification Service 2005
 
6.Live Framework 和Mesh Services
6.Live Framework 和Mesh Services6.Live Framework 和Mesh Services
6.Live Framework 和Mesh Services
 
Google App Engine ppt
Google App Engine  pptGoogle App Engine  ppt
Google App Engine ppt
 
Patterns of Cloud Applications Using Microsoft Azure Services Platform
Patterns of Cloud Applications Using Microsoft Azure Services PlatformPatterns of Cloud Applications Using Microsoft Azure Services Platform
Patterns of Cloud Applications Using Microsoft Azure Services Platform
 

En vedette

Presentation
PresentationPresentation
Presentation
appsleak
 
Ali Uzair Lalani resume pdf
Ali Uzair Lalani resume pdfAli Uzair Lalani resume pdf
Ali Uzair Lalani resume pdf
Ali Uzair
 

En vedette (9)

Linux full command_reference
Linux full command_referenceLinux full command_reference
Linux full command_reference
 
Presentation
PresentationPresentation
Presentation
 
Adding Rules to Improve Flexibility and Effectively Manage Complex Events
Adding Rules to Improve Flexibility and Effectively Manage Complex EventsAdding Rules to Improve Flexibility and Effectively Manage Complex Events
Adding Rules to Improve Flexibility and Effectively Manage Complex Events
 
Ali Uzair Lalani resume pdf
Ali Uzair Lalani resume pdfAli Uzair Lalani resume pdf
Ali Uzair Lalani resume pdf
 
Огляд 2016 цілі 2017 в1
Огляд 2016  цілі 2017 в1Огляд 2016  цілі 2017 в1
Огляд 2016 цілі 2017 в1
 
Are you ready for Exchange 2016
Are you ready for Exchange 2016Are you ready for Exchange 2016
Are you ready for Exchange 2016
 
Oracle SOA Suite 12.2.1 new features
Oracle SOA Suite 12.2.1 new featuresOracle SOA Suite 12.2.1 new features
Oracle SOA Suite 12.2.1 new features
 
Marketing Workshop - SEO, Social Media, 2017 trends
Marketing Workshop - SEO, Social Media, 2017 trendsMarketing Workshop - SEO, Social Media, 2017 trends
Marketing Workshop - SEO, Social Media, 2017 trends
 
App-to-App communication
App-to-App communicationApp-to-App communication
App-to-App communication
 

Similaire à It's happening - on Event Driven SOA, Part Two (EDN patterns, ADF BC integration BAM) - ODTUG Kaleidoscope 2010

Event Driven Architectures
Event Driven ArchitecturesEvent Driven Architectures
Event Driven Architectures
Avinash Ramineni
 
Mandas Deb S O Aand E D A Benefits And Best Practices V1
Mandas  Deb   S O Aand E D A  Benefits And Best Practices V1Mandas  Deb   S O Aand E D A  Benefits And Best Practices V1
Mandas Deb S O Aand E D A Benefits And Best Practices V1
SOA Symposium
 
Project Systems
Project SystemsProject Systems
Project Systems
chalah
 

Similaire à It's happening - on Event Driven SOA, Part Two (EDN patterns, ADF BC integration BAM) - ODTUG Kaleidoscope 2010 (20)

Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)Event-Driven Architecture (EDA)
Event-Driven Architecture (EDA)
 
Event Driven Architectures
Event Driven ArchitecturesEvent Driven Architectures
Event Driven Architectures
 
Event Driven Architectures - Phoenix Java Users Group 2013
Event Driven Architectures - Phoenix Java Users Group 2013Event Driven Architectures - Phoenix Java Users Group 2013
Event Driven Architectures - Phoenix Java Users Group 2013
 
Mandas Deb S O Aand E D A Benefits And Best Practices V1
Mandas  Deb   S O Aand E D A  Benefits And Best Practices V1Mandas  Deb   S O Aand E D A  Benefits And Best Practices V1
Mandas Deb S O Aand E D A Benefits And Best Practices V1
 
SAP workflow events
SAP workflow eventsSAP workflow events
SAP workflow events
 
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
 
Optimizing Your SOA with Event Processing
Optimizing Your SOA with Event ProcessingOptimizing Your SOA with Event Processing
Optimizing Your SOA with Event Processing
 
Introducing Ironstream Support for ServiceNow Event Management
Introducing Ironstream Support for ServiceNow Event Management Introducing Ironstream Support for ServiceNow Event Management
Introducing Ironstream Support for ServiceNow Event Management
 
Event Sourcing, Stream Processing and Serverless (Ben Stopford, Confluent) K...
Event Sourcing, Stream Processing and Serverless (Ben Stopford, Confluent)  K...Event Sourcing, Stream Processing and Serverless (Ben Stopford, Confluent)  K...
Event Sourcing, Stream Processing and Serverless (Ben Stopford, Confluent) K...
 
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
Event Sourcing, Stream Processing and Serverless (Benjamin Stopford, Confluen...
 
Azure Event Grid: Glue for the Internet
Azure Event Grid: Glue for the InternetAzure Event Grid: Glue for the Internet
Azure Event Grid: Glue for the Internet
 
Intellica evam summary
Intellica evam summaryIntellica evam summary
Intellica evam summary
 
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
 
Telecom OSS/BSS - Automation
Telecom OSS/BSS - Automation Telecom OSS/BSS - Automation
Telecom OSS/BSS - Automation
 
Event Driven Architecture – Enabling Microservices
Event Driven Architecture – Enabling MicroservicesEvent Driven Architecture – Enabling Microservices
Event Driven Architecture – Enabling Microservices
 
Pascua Yaqui Tribe App in a day and dashboard in day
Pascua Yaqui Tribe App in a day and dashboard in dayPascua Yaqui Tribe App in a day and dashboard in day
Pascua Yaqui Tribe App in a day and dashboard in day
 
UiPath Meetup Service now + mainframe and legacy final
UiPath Meetup Service now + mainframe and legacy finalUiPath Meetup Service now + mainframe and legacy final
UiPath Meetup Service now + mainframe and legacy final
 
ADF and JavaScript - AMIS SIG, July 2017
ADF and JavaScript - AMIS SIG, July 2017ADF and JavaScript - AMIS SIG, July 2017
ADF and JavaScript - AMIS SIG, July 2017
 
Project Systems
Project SystemsProject Systems
Project Systems
 
Stream Processing and Complex Event Processing together with Kafka, Flink and...
Stream Processing and Complex Event Processing together with Kafka, Flink and...Stream Processing and Complex Event Processing together with Kafka, Flink and...
Stream Processing and Complex Event Processing together with Kafka, Flink and...
 

Plus de Lucas Jellema

Introduction to web application development with Vue (for absolute beginners)...
Introduction to web application development with Vue (for absolute beginners)...Introduction to web application development with Vue (for absolute beginners)...
Introduction to web application development with Vue (for absolute beginners)...
Lucas Jellema
 
Help me move away from Oracle - or not?! (Oracle Community Tour EMEA - LVOUG...
Help me move away from Oracle - or not?!  (Oracle Community Tour EMEA - LVOUG...Help me move away from Oracle - or not?!  (Oracle Community Tour EMEA - LVOUG...
Help me move away from Oracle - or not?! (Oracle Community Tour EMEA - LVOUG...
Lucas Jellema
 
Who Wants to Become an IT Architect-A Look at the Bigger Picture - DigitalXch...
Who Wants to Become an IT Architect-A Look at the Bigger Picture - DigitalXch...Who Wants to Become an IT Architect-A Look at the Bigger Picture - DigitalXch...
Who Wants to Become an IT Architect-A Look at the Bigger Picture - DigitalXch...
Lucas Jellema
 
Introducing Dapr.io - the open source personal assistant to microservices and...
Introducing Dapr.io - the open source personal assistant to microservices and...Introducing Dapr.io - the open source personal assistant to microservices and...
Introducing Dapr.io - the open source personal assistant to microservices and...
Lucas Jellema
 
How and Why you can and should Participate in Open Source Projects (AMIS, Sof...
How and Why you can and should Participate in Open Source Projects (AMIS, Sof...How and Why you can and should Participate in Open Source Projects (AMIS, Sof...
How and Why you can and should Participate in Open Source Projects (AMIS, Sof...
Lucas Jellema
 
Microservices, Apache Kafka, Node, Dapr and more - Part Two (Fontys Hogeschoo...
Microservices, Apache Kafka, Node, Dapr and more - Part Two (Fontys Hogeschoo...Microservices, Apache Kafka, Node, Dapr and more - Part Two (Fontys Hogeschoo...
Microservices, Apache Kafka, Node, Dapr and more - Part Two (Fontys Hogeschoo...
Lucas Jellema
 
Cloud Native Application Development - build fast, low TCO, scalable & agile ...
Cloud Native Application Development - build fast, low TCO, scalable & agile ...Cloud Native Application Development - build fast, low TCO, scalable & agile ...
Cloud Native Application Development - build fast, low TCO, scalable & agile ...
Lucas Jellema
 

Plus de Lucas Jellema (20)

Introduction to web application development with Vue (for absolute beginners)...
Introduction to web application development with Vue (for absolute beginners)...Introduction to web application development with Vue (for absolute beginners)...
Introduction to web application development with Vue (for absolute beginners)...
 
Making the Shift Left - Bringing Ops to Dev before bringing applications to p...
Making the Shift Left - Bringing Ops to Dev before bringing applications to p...Making the Shift Left - Bringing Ops to Dev before bringing applications to p...
Making the Shift Left - Bringing Ops to Dev before bringing applications to p...
 
Lightweight coding in powerful Cloud Development Environments (DigitalXchange...
Lightweight coding in powerful Cloud Development Environments (DigitalXchange...Lightweight coding in powerful Cloud Development Environments (DigitalXchange...
Lightweight coding in powerful Cloud Development Environments (DigitalXchange...
 
Apache Superset - open source data exploration and visualization (Conclusion ...
Apache Superset - open source data exploration and visualization (Conclusion ...Apache Superset - open source data exploration and visualization (Conclusion ...
Apache Superset - open source data exploration and visualization (Conclusion ...
 
CONNECTING THE REAL WORLD TO ENTERPRISE IT – HOW IoT DRIVES OUR ENERGY TRANSI...
CONNECTING THE REAL WORLD TO ENTERPRISE IT – HOW IoT DRIVES OUR ENERGY TRANSI...CONNECTING THE REAL WORLD TO ENTERPRISE IT – HOW IoT DRIVES OUR ENERGY TRANSI...
CONNECTING THE REAL WORLD TO ENTERPRISE IT – HOW IoT DRIVES OUR ENERGY TRANSI...
 
Help me move away from Oracle - or not?! (Oracle Community Tour EMEA - LVOUG...
Help me move away from Oracle - or not?!  (Oracle Community Tour EMEA - LVOUG...Help me move away from Oracle - or not?!  (Oracle Community Tour EMEA - LVOUG...
Help me move away from Oracle - or not?! (Oracle Community Tour EMEA - LVOUG...
 
Op je vingers tellen... tot 1000!
Op je vingers tellen... tot 1000!Op je vingers tellen... tot 1000!
Op je vingers tellen... tot 1000!
 
IoT - from prototype to enterprise platform (DigitalXchange 2022)
IoT - from prototype to enterprise platform (DigitalXchange 2022)IoT - from prototype to enterprise platform (DigitalXchange 2022)
IoT - from prototype to enterprise platform (DigitalXchange 2022)
 
Who Wants to Become an IT Architect-A Look at the Bigger Picture - DigitalXch...
Who Wants to Become an IT Architect-A Look at the Bigger Picture - DigitalXch...Who Wants to Become an IT Architect-A Look at the Bigger Picture - DigitalXch...
Who Wants to Become an IT Architect-A Look at the Bigger Picture - DigitalXch...
 
Steampipe - use SQL to retrieve data from cloud, platforms and files (Code Ca...
Steampipe - use SQL to retrieve data from cloud, platforms and files (Code Ca...Steampipe - use SQL to retrieve data from cloud, platforms and files (Code Ca...
Steampipe - use SQL to retrieve data from cloud, platforms and files (Code Ca...
 
Automation of Software Engineering with OCI DevOps Build and Deployment Pipel...
Automation of Software Engineering with OCI DevOps Build and Deployment Pipel...Automation of Software Engineering with OCI DevOps Build and Deployment Pipel...
Automation of Software Engineering with OCI DevOps Build and Deployment Pipel...
 
Introducing Dapr.io - the open source personal assistant to microservices and...
Introducing Dapr.io - the open source personal assistant to microservices and...Introducing Dapr.io - the open source personal assistant to microservices and...
Introducing Dapr.io - the open source personal assistant to microservices and...
 
How and Why you can and should Participate in Open Source Projects (AMIS, Sof...
How and Why you can and should Participate in Open Source Projects (AMIS, Sof...How and Why you can and should Participate in Open Source Projects (AMIS, Sof...
How and Why you can and should Participate in Open Source Projects (AMIS, Sof...
 
Microservices, Apache Kafka, Node, Dapr and more - Part Two (Fontys Hogeschoo...
Microservices, Apache Kafka, Node, Dapr and more - Part Two (Fontys Hogeschoo...Microservices, Apache Kafka, Node, Dapr and more - Part Two (Fontys Hogeschoo...
Microservices, Apache Kafka, Node, Dapr and more - Part Two (Fontys Hogeschoo...
 
Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)
Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)
Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)
 
6Reinventing Oracle Systems in a Cloudy World (RMOUG Trainingdays, February 2...
6Reinventing Oracle Systems in a Cloudy World (RMOUG Trainingdays, February 2...6Reinventing Oracle Systems in a Cloudy World (RMOUG Trainingdays, February 2...
6Reinventing Oracle Systems in a Cloudy World (RMOUG Trainingdays, February 2...
 
Help me move away from Oracle! (RMOUG Training Days 2022, February 2022)
Help me move away from Oracle! (RMOUG Training Days 2022, February 2022)Help me move away from Oracle! (RMOUG Training Days 2022, February 2022)
Help me move away from Oracle! (RMOUG Training Days 2022, February 2022)
 
Tech Talks 101 - DevOps (jan 2022)
Tech Talks 101 - DevOps (jan 2022)Tech Talks 101 - DevOps (jan 2022)
Tech Talks 101 - DevOps (jan 2022)
 
Conclusion Code Cafe - Microcks for Mocking and Testing Async APIs (January 2...
Conclusion Code Cafe - Microcks for Mocking and Testing Async APIs (January 2...Conclusion Code Cafe - Microcks for Mocking and Testing Async APIs (January 2...
Conclusion Code Cafe - Microcks for Mocking and Testing Async APIs (January 2...
 
Cloud Native Application Development - build fast, low TCO, scalable & agile ...
Cloud Native Application Development - build fast, low TCO, scalable & agile ...Cloud Native Application Development - build fast, low TCO, scalable & agile ...
Cloud Native Application Development - build fast, low TCO, scalable & agile ...
 

Dernier

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Dernier (20)

ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 

It's happening - on Event Driven SOA, Part Two (EDN patterns, ADF BC integration BAM) - ODTUG Kaleidoscope 2010

  • 1. What’s Happening? Part Two ODTUG Kaleidoscope 2010 Thursday, 30th June Lucas Jellema AMIS, The Netherlands
  • 2. 2. Event Patterns, ADF, BAM • Discussion Forum Pattern • Turn event into Human Task via Mediator • Missing Event Detection • ADF BC publishing onto the EDN – ADF consuming events • Business Activity Monitoring
  • 3. “EDN == OTN” Discussion Forum Pattern • Asking a question – of no one in particular – Publish the question – Hope for an answer – From any one at all (or multiple responders – Be notified of the response when it is available • Instead of sending an email to a specific individual – Who may not know the answer or be away on vacation or whose email address you do not have
  • 4. Discussion Forum Pattern for Composite applications • Service A publishes a request – In the form of an event – With Correlation initiated (based on a GUID in the event payload) • The event can be consumed by multiple composites, such as Service B • Service B publishes a response with the GUID in the payload • Service A receives the response and continues processing
  • 5.
  • 6.
  • 7. Define the EDN Event Types • PatientDataRequestEvent and PatientDataResponseEvent
  • 8. Publish Event & Initiate Correlation
  • 9. Set up correlation in a BPEL process • Create Correlation Set • Create Property in Set • Create Property Aliases for every message (inbound or outbound) involved in correlation
  • 10.
  • 11. When an EDN Event should trigger a human task • We can create a Mediator or BPEL process that consumes the event • And then instantiates the Human Task – For example: Failed Temperature Sensor
  • 12.
  • 13.
  • 14. Demo • Create test event using ‘generate XML document from XSD’ • For detector cluster …
  • 15. (test) Event turned into Human Task
  • 16. Missing Event Detection • Patient arrived – but never left • Bags went into the airport luggage handling system – never to come out again • There should be a signal at least once every hour, but it has been quiet for five fours now • There have been no cars coming out of the tunnel for the last 10 minutes • The visitor to the White House went into the secure zone- but has failed to come out again
  • 17. How do you detect something that is not there? • Missing events are … missing – So how are they detected? • Typical pattern for Complex Event Processing – And also supported in BAM • In general one would need to know what to expect when, check at that time and find that either the event is there or it is not…. • What can we do in the SOA Suite?
  • 18. (somewhat clunky) implementation in SOA Suite • BPEL process subscribes to the expected event – Through correlation on the payload • BPEL process is instantiated knowing when the event should be arriving • BPEL processes contains a pick activity – Waiting until the deadline – Waiting for the event to arrive • When the deadline arrives (and the event does not) the whistle is blown
  • 20. ADF Faces Web Application PatientAdministration Application Module PatientsService View Object PatientsVw ADF Entity Object Business Patient Components PATIENTS
  • 21. ADF Application for Patient Administration • One Business Event defined at St. Matthews is the ‘Patient has moved’ event • Any application, process or service that (first) registers or detects that event should publish it • The Patient Administration application is one point of origination for this business event – And therefore should publish it to the EDN • ADF Business Components has an easy integration with EDN
  • 22. ADF Faces Web Application PatientAdministration Application Module PatientsService View Object SOA Suite PatientsVw E ADF Entity Object D Business Patient N Components PatientHas Moved PATIENTS
  • 23. Configure ADF BC Entity Objects
  • 24. The Business Event definition
  • 25. Consume Event in SOA Suite
  • 27. Demo • ADF PatientAdministration Application – Used to manipulate a patient’s address • EDN events fired by the ADF Application – And consumed by the ‘ConsumePatientHasMoved’ composite application
  • 28. ADF consuming EDN events Steps: • EDN events published on JMS • ADF Faces application has registered as listener on the JMS queue – An application scope bean collects events in ‘active data collection’ • ADF Faces page contains Active Table based on the ‘active data collection’ – New EDN events are pushed to the ADF Faces UI
  • 29. Introducing Business Activity Monitoring • Operational Business Intelligence • Data fed in from many sources: – RFID sensors, BPEL, Database Triggers, RSS, ODI • Real Time insight • Dashboard • Live updates • Looking for threshold crossing, exceptions, trends, missing events • Display visually and turn into alerts & notifications
  • 31. Live & Real Time dashboard in regular ADF Web Application • Active Data Service (‘server push’) will pick changes in the BAM Data Control – Underlying BAM ADC Data Object • And push them to the chart (or table) in the ADF page
  • 32. BAM reporting on operations in the SOA Suite • SOA Composite applications can report to BAM in multiple ways – Using the BAM Adapter – From BPEL using the BAM Sensor action – From BPEL using the Monitors – Or: invoking a BAM WebService or using JMS • Signals from Composite applications are applied to Data Objects in Active Data Cache – Leading to dashboard updates & alerts fired
  • 33. DEMO: BAM & SOA Suite • Create BAM Data Object: Patient – Attributes Name, Age, Country • Create Report on top of Data Object – Bar Chart with # per country – Gauge with average age? • Add BAM Adapter Service to SOA Composite application PatientCreator – Feed data from SOA Composite to BAM Data Object
  • 34. PatientAppointmentService feeding into BAM • BAM Data Object PatientAppointment • SOA Composite doing create and update on Patient Appointments • BAM Dashboard reports on: – Number of new appointments over time – 3d bar chart # appointments per status – Gauge for # of unscheduled appointments – Age distribution under patients – Priority Assignments
  • 39.
  • 40.
  • 41.
  • 42. BAM Alert Rules • Specify Conditions on Data Objects – In terms of attributes, functions and operators • Specify how frequently the rule should be verified against the Data Objects • Specify the action to be taken when violated
  • 43. BAM missing event detection • Appointment goes unscheduled for over 72 hours • Steps: – Add a calculated attribute schedulingDeadline: initialReceptionData + 72 hours – Create a rule: schedulingDeadline > now() – Alert action: send email when rule is violated • When scheduling has not taken place within the allotted timeframe
  • 45. BPEL Monitor • BPEL process can be decorated with monitors that report into BAM
  • 46. BPEL Monitoring • Activate monitoring on the BPEL process • Create and configure the monitors – Counter – Interval – Business Indicator
  • 50.
  • 51. Summary • Discussion Forum pattern – use events for anonymous two-way communication • Missing Event Detection • ADF BC publishing events onto EDN • Business Activity Monitoring – visual real time insight – fed from SOA Suite, JMS, ODI, … – BAM Adapter – BPEL Monitor