![Page 1: Coordinating COTS Applications via a Business Event Layer](https://reader035.vdocuments.us/reader035/viewer/2022070416/568150da550346895dbefbbf/html5/thumbnails/1.jpg)
Coordinating COTS Applications via a Business
Event LayerPresented By: Maria Baron
Written By: Lemahieu, Snoeck, Goethals, De Backer, Haesen,
Vandenbulcke and Dedene
![Page 2: Coordinating COTS Applications via a Business Event Layer](https://reader035.vdocuments.us/reader035/viewer/2022070416/568150da550346895dbefbbf/html5/thumbnails/2.jpg)
COTSCommercial off-the-shelf componentsTypically chosen for domain specific featuresEach application covers a particular functional domainHow are COTS components/applications integrated with other applications?
Typical integration based on one to one message exchange
Problems?Abstraction level is too low to efficiently design an integration architecture
![Page 3: Coordinating COTS Applications via a Business Event Layer](https://reader035.vdocuments.us/reader035/viewer/2022070416/568150da550346895dbefbbf/html5/thumbnails/3.jpg)
BECOAuthors propose business event-based coordinationBased on concept of business eventsHigher level units of coordination that enforce consistent processing in all participating applicationsCan be layered on top of existing technologiesStill utilize one to one messaging at its lowest level
![Page 4: Coordinating COTS Applications via a Business Event Layer](https://reader035.vdocuments.us/reader035/viewer/2022070416/568150da550346895dbefbbf/html5/thumbnails/4.jpg)
Telecom ExampleOrganized around 4 business units
Sales & marketing – set prices, complete sales transactions and notifies finance and service provisioning units of ordered products
Service Provisioning – Coordinates the installation of all telecom services ordered and notifies finance unit of completed installation and customer service unit of installed configurations
![Page 5: Coordinating COTS Applications via a Business Event Layer](https://reader035.vdocuments.us/reader035/viewer/2022070416/568150da550346895dbefbbf/html5/thumbnails/5.jpg)
Example continuedOrganized around 4 business units
Finance – handles invoicingCustomer Service – responsible for all after-sales service
![Page 6: Coordinating COTS Applications via a Business Event Layer](https://reader035.vdocuments.us/reader035/viewer/2022070416/568150da550346895dbefbbf/html5/thumbnails/6.jpg)
Information flow in a telecom company
![Page 7: Coordinating COTS Applications via a Business Event Layer](https://reader035.vdocuments.us/reader035/viewer/2022070416/568150da550346895dbefbbf/html5/thumbnails/7.jpg)
Example cont.Each business unit relies on COTS software from different providersEach handles its own functionality well, but the lack of integration and coordination between the standalone products is problematic
![Page 8: Coordinating COTS Applications via a Business Event Layer](https://reader035.vdocuments.us/reader035/viewer/2022070416/568150da550346895dbefbbf/html5/thumbnails/8.jpg)
Potential Issues - ExamplePeople data storage – person may exist in each functional domain’s dataData will be scattered and all applications must be notifiedHow to notify each of the apps?Requires integrated coordinated processing of actions among all COTS applications
![Page 9: Coordinating COTS Applications via a Business Event Layer](https://reader035.vdocuments.us/reader035/viewer/2022070416/568150da550346895dbefbbf/html5/thumbnails/9.jpg)
Integration of Enterprise applications
Typically integrate COTS applications enterprise wide
Mom – message oriented middlewareApplications interact by exchanging messagesOne sender and one receiver
RPCs – remote procedure callsRepresent interactions as procedure calls from one component to anotherOne procedure caller and one procedure callee
![Page 10: Coordinating COTS Applications via a Business Event Layer](https://reader035.vdocuments.us/reader035/viewer/2022070416/568150da550346895dbefbbf/html5/thumbnails/10.jpg)
Integration of Enterprise applications
COTS IntegrationIntegration brokers – evolved MOM products
Enacts specified business processes by managing the desired sequence of message exchangesWeb services using SOAP
Represent one to one communication
![Page 11: Coordinating COTS Applications via a Business Event Layer](https://reader035.vdocuments.us/reader035/viewer/2022070416/568150da550346895dbefbbf/html5/thumbnails/11.jpg)
IssuesAbstraction level doesn’t allow easily for the design of activities that involve coordinated processing in multiple applicationsMay involve a different sequence of events depending upon who initiated the process Cannon abstract process events from the notification patternsEx: telecom company, purchase orderCould use one to one messaging but would be intricate to design and debug
![Page 12: Coordinating COTS Applications via a Business Event Layer](https://reader035.vdocuments.us/reader035/viewer/2022070416/568150da550346895dbefbbf/html5/thumbnails/12.jpg)
Business EventsDefined as a real world phenomenon that requires coordinated processing in one or more application or componentAtomicAll parties involved may enforce business rules and constraints as preconditionsIf all preconditions are satisfied by the event, all participants process itViolations of preconditions should initiate a rollback of some sort
![Page 13: Coordinating COTS Applications via a Business Event Layer](https://reader035.vdocuments.us/reader035/viewer/2022070416/568150da550346895dbefbbf/html5/thumbnails/13.jpg)
Component Event TableEvent based integration of components Columns identify the applications or components to be integratedRows identify business eventsCells denote which application is involved in realizing which eventAllows introduction of a new abstraction layer – business event layer
![Page 14: Coordinating COTS Applications via a Business Event Layer](https://reader035.vdocuments.us/reader035/viewer/2022070416/568150da550346895dbefbbf/html5/thumbnails/14.jpg)
![Page 15: Coordinating COTS Applications via a Business Event Layer](https://reader035.vdocuments.us/reader035/viewer/2022070416/568150da550346895dbefbbf/html5/thumbnails/15.jpg)
Interaction StackBusiness event layer – deals with business events Notification layer – deals with one to one message exchanges or RPCsEvent dispatcher – notifies participating applications by initiating the appropriate message exchanges and coordinates business event processing
![Page 16: Coordinating COTS Applications via a Business Event Layer](https://reader035.vdocuments.us/reader035/viewer/2022070416/568150da550346895dbefbbf/html5/thumbnails/16.jpg)
General Event Dispatching execution scheme
![Page 17: Coordinating COTS Applications via a Business Event Layer](https://reader035.vdocuments.us/reader035/viewer/2022070416/568150da550346895dbefbbf/html5/thumbnails/17.jpg)
Business ProcessesFeasible sequences of business eventsSeparate the underlying notification aspect form the business process sequencing BECO decouples event sequencing
![Page 18: Coordinating COTS Applications via a Business Event Layer](https://reader035.vdocuments.us/reader035/viewer/2022070416/568150da550346895dbefbbf/html5/thumbnails/18.jpg)
![Page 19: Coordinating COTS Applications via a Business Event Layer](https://reader035.vdocuments.us/reader035/viewer/2022070416/568150da550346895dbefbbf/html5/thumbnails/19.jpg)
ConclusionSeparation of concernsHighly flexible environmentAllows for independent modificationCan be extended to B2B event based coordination
![Page 20: Coordinating COTS Applications via a Business Event Layer](https://reader035.vdocuments.us/reader035/viewer/2022070416/568150da550346895dbefbbf/html5/thumbnails/20.jpg)
Questions???????????