Example: Use of BPM to monitor an ESB-centric integration

4,713 views
4,501 views

Published on

Some « pieces of work » got lost between applications which are involved in an implicit business process....

Published in: Technology, News & Politics
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
4,713
On SlideShare
0
From Embeds
0
Number of Embeds
69
Actions
Shares
0
Downloads
144
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Example: Use of BPM to monitor an ESB-centric integration

  1. 1. FOR OMG BPM/SOA COP WORKING SUB-GROUP, 2010-06-02 EXAMPLE: USE OF BPM TO MONITOR AN ESB-CENTRIC INTEGRATION Alexander Samarin Richard Vigniel
  2. 2. The situation <ul><li>Business issue </li></ul><ul><ul><li>Some « pieces of work » got lost between applications which are involved in a business process </li></ul></ul><ul><ul><li>Degree of synchronisation of some applications is low </li></ul></ul><ul><li>Technical issues </li></ul><ul><ul><li>No overall coordination or monitoring over those applications </li></ul></ul><ul><ul><li>The business process is implicit </li></ul></ul><ul><ul><li>Need for the real-time monitoring for IT </li></ul></ul><ul><ul><li>Need for the real-time monitoring for business </li></ul></ul><ul><ul><li>There is no « bigger » architecture </li></ul></ul>2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  3. 3. ESB-centric view – only flow of data Enterprise Service Bus (ESB) Application 1 Application 3 Application 2 2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  4. 4. Process-centric view – both flow of control and flow of data Process Application 1 Application 3 Application 2 Primary importance – the result of working together, but not individual exchanges (like in the football) 2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  5. 5. Context <ul><li>The business goal (short-term) </li></ul><ul><ul><li>Implement monitoring WITHOUT disruptive changes in the infrastructure – simple, quick and cheap </li></ul></ul><ul><li>The techniques </li></ul><ul><ul><li>Make the process explicit </li></ul></ul><ul><ul><li>Discuss monitoring approaches </li></ul></ul><ul><li>Use the architectural approach to </li></ul><ul><ul><li>Mix BPM, SOA, ESB, BAM, BEM, CEP </li></ul></ul><ul><ul><li>Select tools which are good citizens (not expensive, easy to deploy, fit to existing culture, real “worker”, not exotic, etc.) </li></ul></ul>2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  6. 6. In-house understanding of the process <ul><li>Imagine a token moving through this process – any need for loops? </li></ul><ul><li>Merging is implicit </li></ul><ul><li>Too technical </li></ul><ul><li>Actually it is the production line </li></ul><ul><li>Good for e-gov? </li></ul>2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  7. 7. <ul><li>Three parts of the tax declaration </li></ul><ul><ul><li>La décision de taxation ICC/IFD, </li></ul></ul><ul><ul><li>Le ou les factures associées (parfois aucune), </li></ul></ul><ul><ul><li>Le relevé de compte. </li></ul></ul><ul><li>Merging is explicit (SP01 and SP02) </li></ul><ul><li>Only business activities are visible </li></ul>Tax declaration-centric version of the process Click for animation 2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  8. 8. <ul><li>Takeover time between blocks </li></ul><ul><li>SLA of each block </li></ul>What to monitor? 2010-06-02 Example: Use of BPM to monitor an ESB-centric integration SLA SLA SLA SLA SLA SLA Takeover time Takeover time Takeover time
  9. 9. SLA of each block <ul><li>The message event (E02) which should throw an alarm after the timer event (E01) is not activated because of the cancel event (E03) </li></ul>2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  10. 10. Takeover time between blocks <ul><li>The exclusive event gateway (G01) is waiting for the end of transition (E04) or timer (E05). The latter initiate an alarm. </li></ul>2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  11. 11. General recommendations <ul><li>Both block SLA and takeover time can be monitored in different ways </li></ul><ul><li>Block SLA can be monitored by a particular tool itself </li></ul><ul><li>Takeover time should be monitored by a “third” party </li></ul><ul><li>Monitoring should take into considerations dependencies between events – if a tool is broken there is no need to alarm about SLA of process instances which use this tool (similar to NAGIOS functionality) </li></ul>2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  12. 12. Control process in this POC 2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  13. 13. Integration with the ESB <ul><li>Transformation and technical routing of messages by the ESB </li></ul><ul><li>Transmission of message into queues JMS </li></ul>App1 App2 ESB ( technical routing and transformation) 2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  14. 14. Definition of metrics 2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  15. 15. Capture of metrics 2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  16. 16. Format of the message <ul><li><?xml version='1.0' encoding='UTF-8'?> </li></ul><ul><li><soapenv:Envelope xmlns:soapenv=&quot;http://schemas.xmlsoap.org/soap/envelope/&quot; xmlns:tax=&quot;http://www.example.org/TaxationEvent&quot;> </li></ul><ul><li><soapenv:Header> </li></ul><ul><li><addr:To xmlns:addr=&quot;http://www.w3.org/2005/08/addressing&quot;>jms:/processes/POCVaud/ProcessControl/TaxationControlProcess/UNIREG?transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactory&amp;java.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;java.naming.provider.url=tcp://localhost:61616</addr:To> </li></ul><ul><li><addr:Action xmlns:addr=&quot;http://www.w3.org/2005/08/addressing&quot;>http://example.com/ProcessControl/TaxationControlProcess/ForUNIREG/EventStartMessage</addr:Action> </li></ul><ul><li></soapenv:Header> </li></ul><ul><li><soapenv:Body> </li></ul><ul><li> <tax:TaxationEvent> </li></ul><ul><li><tax:NoContribuale>10000455</tax:NoContribuale> </li></ul><ul><li><tax:NoTaxation>1</tax:NoTaxation> </li></ul><ul><li><tax:NoVersion>1</tax:NoVersion> </li></ul><ul><li><tax:AnneeFiscale>2008</tax:AnneeFiscale> </li></ul><ul><li><tax:TypeImpot>IRF</tax:TypeImpot> </li></ul><ul><li></tax:TaxationEvent> </li></ul><ul><li></soapenv:Body> </li></ul><ul><li></soapenv:Envelope> </li></ul>2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  17. 17. Test scenario <ul><li>A java application generates and sends the following messages into JMS queues </li></ul><ul><ul><li>30 messages « Start monitoring » </li></ul></ul><ul><ul><li>28 messages « End of Taxations » </li></ul></ul><ul><ul><li>24 messages « End of Facturations » </li></ul></ul>2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  18. 18. Report – initial view No process instances 2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  19. 19. Messages « Start monitoring» sent 30 instances are instantiated 2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  20. 20. Messages « End of Taxations  » sent 28 instances in the state « tax » Ratio of groupping = 0% 2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  21. 21. Messages « End of Facturation » sent 24 instances terminated Ratio of groupping = 85% (24/28) 2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  22. 22. Report Designer Data Sets Mise en page Propriétés 2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  23. 23. Conclusion <ul><li>Intalio|BAM (BIRT) allowes quick implementation of complex reports </li></ul><ul><li>Deep knowledge of SQL is mandatory </li></ul><ul><li>Drill down feature has not been tested </li></ul><ul><li>Messages have been transformed by the ESB </li></ul><ul><li>Intalio|BPM facilitates the capture of metrics </li></ul><ul><li>BPM does not bring a lot in this example, because the process is simple and passive (or shadow) </li></ul><ul><li>BPM added values comes from complex rules which are explicitely expressed (in comparison with CEP) </li></ul><ul><li>BPM with active processes is naturally integrated with BAM </li></ul>2010-06-02 Example: Use of BPM to monitor an ESB-centric integration
  24. 24. Thank you! <ul><li>Contact information: </li></ul><ul><li>Alexander Samarin </li></ul><ul><li>[email_address] </li></ul>2010-06-02 Example: Use of BPM to monitor an ESB-centric integration

×