erp course: enterprise application integration readings: chapter 3 from gustavo alonso et al peter...
TRANSCRIPT
![Page 1: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/1.jpg)
ERP Course: Enterprise Application IntegrationReadings: Chapter 3 from Gustavo Alonso et al
Peter Dologdolog [at] cs [dot] aau [dot] dkE2-201Information SystemsNovember 15, 2006
![Page 2: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/2.jpg)
2Peter Dolog, ERP Course, EAI
quotationsupplier andcustomer mgmt
order processing procurement shipment
management financial
Copyright Springer Verlag Berlin Heidelberg 2004
IS/ERP IS/ERP IS/ERP IS/ERP IS/ERP
![Page 3: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/3.jpg)
3Peter Dolog, ERP Course, EAI
Historical Perspective
presentation layer
resource management
layer
application logic layer
client
info
rmat i
on
syste
m
1. define access channelsand client platforms
2. define presentation formats and protocols forthe selected clients andprotocols
3. define the functionalitynecessary to deliver thecontents and formats neededat the presentation layer
4. define the data sourcesand data organization neededto implement the applicationlogic
top-down design
Copyright Springer Verlag Berlin Heidelberg 2004
![Page 4: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/4.jpg)
4Peter Dolog, ERP Course, EAI
clientpresentatio
n layer
resource management
layer
application logic layer
info
rmat i
on
syste
m
3-tier architecture
middleware
Copyright Springer Verlag Berlin Heidelberg 2004
![Page 5: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/5.jpg)
5Peter Dolog, ERP Course, EAI
client
resource management
layer
application logic layer
info
rmat i
on
syste
m
N-tier architecture
middleware
presentationlayer
Web server
Web browser
HTML filter
Copyright Springer Verlag Berlin Heidelberg 2004
![Page 6: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/6.jpg)
6Peter Dolog, ERP Course, EAI
request
response
invokingexecution thread
invokedexecution thread
blo
ckin
g
peri
od
Copyright Springer Verlag Berlin Heidelberg 2004
Blocking/Synchronous Communication
![Page 7: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/7.jpg)
7Peter Dolog, ERP Course, EAI
Nonblocking/Asynchronous Communication
put
put
invokingexecution thread
invokedexecution thread
queue
fetch
fetch
queue
thre
ad
rem
ain
sacti
ve
Copyright Springer Verlag Berlin Heidelberg 2004
![Page 8: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/8.jpg)
8Peter Dolog, ERP Course, EAI
RPC Abstraction
Remote Procedure Call
sockets
TCP, UDP
Internet Protocol (IP)
Remote Procedure Call: hides communication details behinda procedure call and helps bridge heterogeneous platformssockets: operating system level interface to theunderlying communication protocolsTCP, UDP:User Datagram Protocol (UDP) transports data packets without guaranteesTransmission Control Protocol (TCP)verifies correct delivery of data streams
Internet Protocol (IP):moves a packet of data from one node to another
Copyright Springer Verlag Berlin Heidelberg 2004
![Page 9: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/9.jpg)
9Peter Dolog, ERP Course, EAI
RPC
communicationmodule
client
procedure call
client stubbindmarshalserializesend
client proces
s
communicationmodule
server
procedure
server stub
unmarshaldeserializereceive
server process
dispatcher(selectstub)
Copyright Springer Verlag Berlin Heidelberg 2004
![Page 10: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/10.jpg)
10Peter Dolog, ERP Course, EAI
client 1. BOT 4. procedure call 10. EOT
client stub 2.register txn & create context 5.add txn id & context to call 11.request commit
14.confirm termination
client process server
9. procedure
server stub6. extract context and txn id7. register server for txn13. participate in 2PC
server process
transaction manager
3. create txn idregister txnregister client for txnreturn txn id
8. lookup txn idregister server for txn
12. lookup txn idrun 2PCnotify client of outcome
Copyright Springer Verlag Berlin Heidelberg 2004
![Page 11: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/11.jpg)
11Peter Dolog, ERP Course, EAI
Other Middleware
Object brokersObject monitorsMessage-oriented middlewareMessage brokers
![Page 12: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/12.jpg)
12Peter Dolog, ERP Course, EAI
external application
external application
Input queue
Input queue
Output queue
Output queue
Reliablequeuingsystem
RequestQuote
SupportQuote
Copyright Gustavo Alonso, ETH
![Page 13: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/13.jpg)
13Peter Dolog, ERP Course, EAI
dispatcherinventory manage
mentERP
shipping
message-oriented middleware
month-end
closing
new PO
new PO
new PO
new PO
Copyright Springer Verlag Berlin Heidelberg 2004
![Page 14: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/14.jpg)
14Peter Dolog, ERP Course, EAI
message broker core
sender receiver
message broker
with message brokers, custom message routing logic can be defined at the message broker level or at the queue level
in basic MOM it is the sender who specifies the identity of the receivers
Copyright Springer Verlag Berlin Heidelberg 2004
![Page 15: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/15.jpg)
15Peter Dolog, ERP Course, EAI
dispatcher(publisher)
inventory manage
ment(subscrib
er)
ERP(subscrib
er)
shipping(subscri
ber)
message broker
month-end
closing(subscri
ber)new PO
new PO
new PO
new PO
new PO
Copyright Springer Verlag Berlin Heidelberg 2004
![Page 16: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/16.jpg)
16Peter Dolog, ERP Course, EAI
admin
message broker MB-A
message broker MB-B
client
client
…
admin
client
client
…
admin
message broker MB-C
client
client
…
administrative domain A
administrative domain B
administrative domain C
Copyright Springer Verlag Berlin Heidelberg 2004
![Page 17: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/17.jpg)
17Peter Dolog, ERP Course, EAI
DBMS applications
message broker
SmartQuotationadapter
e-mailadapter
databaseadapter
SmartQuotation
SmartForecastingadapter
SmartForecasting
XYZadapter
XYZ
integrating application (contains the composition
logic)
Copyright Springer Verlag Berlin Heidelberg 2004
![Page 18: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/18.jpg)
18Peter Dolog, ERP Course, EAI
message broker
SmartQuotationadapter
SmartQuotation
SmartForecastingadapter
SmartForecasting
RFQ processing
1A 6
B C 72 4
3
5
8
at systems startup time (can occur in any order, but all must occur before RFQs are executed)
A: subscription to message quote
B: subscription to message quoteRequest
C: subscription to message newQuote
at run time: processing of a request for quote.
1: publication of a quoteRequest message
2: delivery of message quoteRequest
3: synchronous invocation of the getQuote function
4: publication of a quote message
5: delivery of message quote
6: publication of a newQuote message
7: delivery of message newQuote
8: invocation of the createForecastEntry procedure
Copyright Springer Verlag Berlin Heidelberg 2004
![Page 19: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/19.jpg)
19Peter Dolog, ERP Course, EAI
check if offered product
check if worth proceeding
get quote from quotation system
get quote from supplier
enter quotein forecasting system
send quote to customer
ContractExists=true
ContractExists=false
Offered=true
Offered=false
GoAhead=true
update quotation system
variables: QuoteReferenceNumber: int Customer: String Item: String Quantity: int RequestedDeliveryDate: Date DeliveryAddress: String GoAhead: Bool ContractExists: Bool Offered: Bool
else
Copyright Springer Verlag Berlin Heidelberg 2004
![Page 20: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/20.jpg)
20Peter Dolog, ERP Course, EAI
workflow engine
resource broker
completed work items
inbound queue
resource 1
resource 2
resource n
1
2
4 53
workflow definitionsoutbound queues
workflow designer
Copyright Springer Verlag Berlin Heidelberg 2004
![Page 21: ERP Course: Enterprise Application Integration Readings: Chapter 3 from Gustavo Alonso et al Peter Dolog dolog [at] cs [dot] aau [dot] dk E2-201 Information](https://reader030.vdocument.in/reader030/viewer/2022033103/5697bfed1a28abf838cb8d07/html5/thumbnails/21.jpg)
21Peter Dolog, ERP Course, EAI
Copyright Gustavo Alonso, ETH