1 stanisław ambroszkiewicz the leader of the entish team ipi pan, polish academy of sciences and...
TRANSCRIPT
![Page 1: 1 Stanisław Ambroszkiewicz the leader of the enTish team IPI PAN, Polish Academy of Sciences and Institute of Informatics, University of Podlasie, Poland](https://reader036.vdocuments.site/reader036/viewer/2022082817/56649e4d5503460f94b439ba/html5/thumbnails/1.jpg)
1
Stanisław Ambroszkiewicz
the leader of the enTish team
IPI PAN, Polish Academy of Sciences
and Institute of Informatics, University of Podlasie,
Poland
enTish: an Approach to Service Composition
![Page 2: 1 Stanisław Ambroszkiewicz the leader of the enTish team IPI PAN, Polish Academy of Sciences and Institute of Informatics, University of Podlasie, Poland](https://reader036.vdocuments.site/reader036/viewer/2022082817/56649e4d5503460f94b439ba/html5/thumbnails/2.jpg)
2
Client - Server paradigm
for distributed computing
cclientlient Server:Server:servicesservices
request
Server provides some services for clients. Client sends a request to the server. The request is realized by invoking a service. Service invocation protocols:
RPC-style message passing style … ???
![Page 3: 1 Stanisław Ambroszkiewicz the leader of the enTish team IPI PAN, Polish Academy of Sciences and Institute of Informatics, University of Podlasie, Poland](https://reader036.vdocuments.site/reader036/viewer/2022082817/56649e4d5503460f94b439ba/html5/thumbnails/3.jpg)
3
RPC model
remote procedure call
RPC RPC cclientlient
RPC RPC serviceservice
cclient stublient stubXDRXDR
serviceservice stub stub XDRXDR
Transport Protocol ( … )Transport Protocol ( … )
Network Layer (TCP/IP)
requestresponse request
requestrequestresponse
response
response
request (call)
response (return)
Message Exchange Pattern: stateless synchronous request - response
![Page 4: 1 Stanisław Ambroszkiewicz the leader of the enTish team IPI PAN, Polish Academy of Sciences and Institute of Informatics, University of Podlasie, Poland](https://reader036.vdocuments.site/reader036/viewer/2022082817/56649e4d5503460f94b439ba/html5/thumbnails/4.jpg)
4
Web services model
RPC-style: remote operation call
WS WS cclientlient
WSWSserviceservice
service proxyservice proxy(SOAP+WSDL) (SOAP+WSDL)
serviceservice template template (SOAP+WSDL)(SOAP+WSDL)
Transport Protocol ( HTTP )Transport Protocol ( HTTP )
Network Layer (TCP/IP)
request (call)
response (return)
Message Exchange Pattern: stateless synchronous request - response
![Page 5: 1 Stanisław Ambroszkiewicz the leader of the enTish team IPI PAN, Polish Academy of Sciences and Institute of Informatics, University of Podlasie, Poland](https://reader036.vdocuments.site/reader036/viewer/2022082817/56649e4d5503460f94b439ba/html5/thumbnails/5.jpg)
5
Web services model
document passing style
WS WS cclientlient
WSWSserviceservice
service proxyservice proxy(SOAP+WSDL) (SOAP+WSDL)
serviceservice template template (SOAP+WSDL)(SOAP+WSDL)
Transport Protocol ( HTTP )Transport Protocol ( HTTP )
Network Layer (TCP/IP)
Message Exchange Pattern: stateless asynchronous document passing
XML document
???
![Page 6: 1 Stanisław Ambroszkiewicz the leader of the enTish team IPI PAN, Polish Academy of Sciences and Institute of Informatics, University of Podlasie, Poland](https://reader036.vdocuments.site/reader036/viewer/2022082817/56649e4d5503460f94b439ba/html5/thumbnails/6.jpg)
6
RPC-style of service invocation
After >12 years of RPC there is no killer apps for integrating heterogenous
applications
After >8 years of CORBA (object oriented RPC-
style) there is no killer apps for integrating heterogenous
objects
After >3 years of Web services (service oriented RPC-style and document-style)
there is no killer apps for integrating heterogenous services
A conclusion: Perhaps they are too primitive, i.e., more sophisticated
service invocation protocol is needed?
![Page 7: 1 Stanisław Ambroszkiewicz the leader of the enTish team IPI PAN, Polish Academy of Sciences and Institute of Informatics, University of Podlasie, Poland](https://reader036.vdocuments.site/reader036/viewer/2022082817/56649e4d5503460f94b439ba/html5/thumbnails/7.jpg)
8
yet another service invocation protocol
cclientlient serviceservice invocation protocol*
request: response:
Grid services: service is augmented with state and specific portTypes; ?grid service invocation protocol??grid service invocation protocol?
Is it possible (reasonable) to construct a service invocation protocol different than RPC and document passing?
It seems that it is! Let’s present a sketch of such protocol.
Message Exchange Pattern: ( … )
*) the conversation parties may have states
![Page 8: 1 Stanisław Ambroszkiewicz the leader of the enTish team IPI PAN, Polish Academy of Sciences and Institute of Informatics, University of Podlasie, Poland](https://reader036.vdocuments.site/reader036/viewer/2022082817/56649e4d5503460f94b439ba/html5/thumbnails/8.jpg)
9
BookStore
BANK
A new service invocation protocol: Composition of two servicesComposition of two services
payOrderbookOrder
Client:
payOrder payConfirm
bookOrder
bookInvoice Purchase completed!
Client
![Page 9: 1 Stanisław Ambroszkiewicz the leader of the enTish team IPI PAN, Polish Academy of Sciences and Institute of Informatics, University of Podlasie, Poland](https://reader036.vdocuments.site/reader036/viewer/2022082817/56649e4d5503460f94b439ba/html5/thumbnails/9.jpg)
10
input constrains
The protocol in action: Phase 1 - Phase 1 - workflow formationworkflow formation
BookStore
BANKquery for a book of a fixed author
author(bookInvoice)=„J.R.R. Tolkien”
title(bookOrder)=„Hobbit”
...=„The Lord of the Rings”
...=„Silmarillion”
value(payConfirm)=„50”
...=„70”
...=„60”
value(payOrder)=„53”
...=„73”
...=„63”
ClientI-02
title price
Hobbit 53
The Lord of the Rings 73
Silmarillion 63
ClientClient sends a sends a queryquery that is propagated back by service that is propagated back by servicess to to the clientthe client
Client chooses one option, then the documents payOrder and bookOrder are created and …
ClientI-01
![Page 10: 1 Stanisław Ambroszkiewicz the leader of the enTish team IPI PAN, Polish Academy of Sciences and Institute of Informatics, University of Podlasie, Poland](https://reader036.vdocuments.site/reader036/viewer/2022082817/56649e4d5503460f94b439ba/html5/thumbnails/10.jpg)
11
BookStore
BANK
The protocol in action: Phase 2 - wPhase 2 - workflow executionorkflow execution
payOrderbookOrder
data (e-documents) are processed and effect the real worlddata (e-documents) are processed and effect the real world
ClientI-03
payOrder 50+3 euro
payConfirm 50 euro
bookOrder „Hobbit”
bookInvoice for the bookPurchase
completed!
„Hobbit” for 53 euro
ClientI-02
![Page 11: 1 Stanisław Ambroszkiewicz the leader of the enTish team IPI PAN, Polish Academy of Sciences and Institute of Informatics, University of Podlasie, Poland](https://reader036.vdocuments.site/reader036/viewer/2022082817/56649e4d5503460f94b439ba/html5/thumbnails/11.jpg)
12
a new service invocation protocol
It is not the stateless synchronous request-response MEP nor stateless asynchronous document passing!
Service must be „intelligent”, i.e., it must be able to answer the queries
![Page 12: 1 Stanisław Ambroszkiewicz the leader of the enTish team IPI PAN, Polish Academy of Sciences and Institute of Informatics, University of Podlasie, Poland](https://reader036.vdocuments.site/reader036/viewer/2022082817/56649e4d5503460f94b439ba/html5/thumbnails/12.jpg)
13
a new service invocation protocol
The query phase: Client sends a querya query
specifying the desired outputoutput.
The service specifies the inputinput required to produce the desired output.
The execution phase: Client creates datacreates data
according to the input specs and sends it to the service.
Service processes the data and sends the result to the client.
service service
query: output
query: input1
query: input2
output input1
input2
![Page 13: 1 Stanisław Ambroszkiewicz the leader of the enTish team IPI PAN, Polish Academy of Sciences and Institute of Informatics, University of Podlasie, Poland](https://reader036.vdocuments.site/reader036/viewer/2022082817/56649e4d5503460f94b439ba/html5/thumbnails/13.jpg)
14
a new service invocation protocol
Can this protocol be implemented in the style of RPC and/or document passing?
Of course, it can be, e.g., by using BPEL4WS, WSCI, BPML, etc..
Not in a generic way, i.e., these specific data and operation types MUST be hard-coded in these implementations
![Page 14: 1 Stanisław Ambroszkiewicz the leader of the enTish team IPI PAN, Polish Academy of Sciences and Institute of Informatics, University of Podlasie, Poland](https://reader036.vdocuments.site/reader036/viewer/2022082817/56649e4d5503460f94b439ba/html5/thumbnails/14.jpg)
15
SOAP+WSDL versus the new protocol
SOAP+WSDL service invocation protocols:
RPC-style, or document passing
stateless data flow and control flow
integrated into one message simple request-response MEP synchronous, or
asynchronous
Our proposal of service invocation protocol:
new style of service invocation
state full data flow is separated from
the control flow two phases: one for control
flow and one for data flow asynchronous control flow,
and asynchronous data flow
![Page 15: 1 Stanisław Ambroszkiewicz the leader of the enTish team IPI PAN, Polish Academy of Sciences and Institute of Informatics, University of Podlasie, Poland](https://reader036.vdocuments.site/reader036/viewer/2022082817/56649e4d5503460f94b439ba/html5/thumbnails/15.jpg)
16
a new service invocation protocol
Requirements: clients and services MUST keep the state of the current
protocol session generic open languagegeneric open language for describing:
data and their attributes how the data are processed, i.e., types of operation
performed by services states of clients and services, i.e., clients’ intentions, and
services’ commitments message format, and state format message transport protocol, and data transport protocol etc.,
Can these requirements be realized?
![Page 16: 1 Stanisław Ambroszkiewicz the leader of the enTish team IPI PAN, Polish Academy of Sciences and Institute of Informatics, University of Podlasie, Poland](https://reader036.vdocuments.site/reader036/viewer/2022082817/56649e4d5503460f94b439ba/html5/thumbnails/16.jpg)
17
YES, they can! enTish is our proposal to realize the
requirements for new service invocation (composition) protocol
enTish is a specification; prototype was already realized
more details on www.ipipan.waw.pl/mas/
say nothing that isn’t worth saying
![Page 17: 1 Stanisław Ambroszkiewicz the leader of the enTish team IPI PAN, Polish Academy of Sciences and Institute of Informatics, University of Podlasie, Poland](https://reader036.vdocuments.site/reader036/viewer/2022082817/56649e4d5503460f94b439ba/html5/thumbnails/17.jpg)
18
www.ipipan.waw.pl/mas/
say nothing that isn’t worth saying