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