Presentation is loading. Please wait.

Presentation is loading. Please wait.

Rick Hull Bell Labs Research

Similar presentations


Presentation on theme: "Rick Hull Bell Labs Research"— Presentation transcript:

1 Rick Hull Bell Labs Research
E-Service Composition and Behavioral Signatures << Presentation to Semantic Web Services Langauge Group >> Rick Hull Bell Labs Research October 18, 2003 slides will be available at Based in part on the PODS 2003 talk entitled “E-Services: A Look Behind the Curtain”, co-authored with Michael Benedikt (Bell Labs) Vassilis Christophides (FORTH, Greece) Jianwen Su (UC Santa Barbara) October 18, 2003 Behavioral Signatures and E-Service Composition

2 The E-Services Paradigm
Goal: Simplify and/or automate e-service Discovery Composition Orchestration (invoke, monitor; “choreography”) Provenance (e-science, recovery) Primary roots of e-services paradigm (a) Process description formalisms (b) Distributed computing middleware (c) Data management What makes e-services “new” Much more de-centralized than workflow More flexible, less structured than CORBA Data management has larger role in (a) and (b) Importance of standards to enable interoperation and analysis Our focus: how to build, analyze October 18, 2003 Behavioral Signatures and E-Service Composition

3 Behavioral Signatures and E-Service Composition
Outline Events, messaging, and sequential behavior are facts of life We need a notion of “behavioral signature” An automata-based framework Inspired by CSPs, -calculus, verification theory Analysis “tools” Several approaches available Automated composition Including a bridge to DLs Conclusions October 18, 2003 Behavioral Signatures and E-Service Composition

4 Behavioral Signatures and E-Service Composition
Web Services Definition Language (WSDL): Messages and (traditional) I/O signatures Peer-to-peer: e-service can act as client or server Proactive : send request send request, block till response Reactive : receive request receive request, send response bill_payment out: bill in: payment order Supplier bill order Supplier’ receipt payment receipt Port: mechanism to cluster operations Port as unit of interoperation between services October 18, 2003 Behavioral Signatures and E-Service Composition

5 E-Commerce: Patterns of Messages
buy store authorize bank get ok order2 receipt2 bill2 payment2 Add new services dynamically Does supplier2 fit? (what if supplier2 uses “prepay”) supplier2 payment1 order1 receipt1 bill1 supplier1 Certain patterns “acceptable”, others not Enactments with different life-cycles E.g., one credit authorize for many orders October 18, 2003 Behavioral Signatures and E-Service Composition

6 Using order to infer IOPA properties
Supplier bill Using order to infer IOPA properties receipt payment Conditions on input/output if valid client sends order, then bill is created if payment is received, then receipt is sent Conditions on “state of world” Amount of $$ in line of credit Supplier ships order when payment is received Performing inference (“everything else fixed”) Assume the Bank satisfies: if bill received and sufficient funds, then payment is sent Infer that: “an order from a valid client with sufficient funds will result in a receipt and shipment of the order” October 18, 2003 Behavioral Signatures and E-Service Composition

7 Behavioral Signatures and E-Service Composition
Services use events “Full” plane reservation service includes alerts if plane is delayed To person flying To car rental service, to hotel service, … Services may have to retain context over a period of time Will be “waiting” for incoming event Put it into proper context Take appropriate actions BPEL4WS has explicit constructs for asynchronous events receive, wait, pick October 18, 2003 Behavioral Signatures and E-Service Composition

8 Telecom/Collaborative Services
Session Coordinator Profile Data Pre-Pay Presence Server Media Server (video) Media Server (voice) Emerging standards will enable flexible, dynamic invocation of services & incorporation of features Can be viewed as a special case of web services Bearer traffic vs. signaling/control traffic Asynchronous events: call dropped, person becomes present, … Feature interactions: call screening, call waiting, … October 18, 2003 Behavioral Signatures and E-Service Composition

9 Behavioral Signatures and E-Service Composition
Outline Sequential behavior and messaging are a fact of life We need a notion of “behavioral signature” An automata-based framework Uses a “black-box” perspective Contrast to “white-box” formalisms Some “tools” are available Including a bridge to DLs Conclusions October 18, 2003 Behavioral Signatures and E-Service Composition

10 Two perspectives on E-Services
“Black box”: Signature languages Web Services Description Language (WSDL) Focus on input/output signatures only Pre-/post conditions á la OWL-S Behavioral: Focus on sequencing of messages transmitted W3C Choreography group working here Focus on sequencing of actions performed “White box”: Implementation languages Essence of WSFL, XLANG, BPEL4WS*, BPML, etc. standards OWL-S process constructs Typically, parallel flowcharts with synchronization, scopes, some event handling, internal variables *BPEL4WS also supports a “black box” view of e-services October 18, 2003 Behavioral Signatures and E-Service Composition

11 Modeling I: Individual E-services
In the most general case, an e-service can be a Turing machine Do until halt nondeterministic choice: read an input; send an output to some other peer; halt; end choice input messages to other e-services message log local store For analysis, optimization, and automation it is useful to study more restricted models October 18, 2003 Behavioral Signatures and E-Service Composition

12 Behavioral signatures using messages
Use Mealy Peers: Finite State Automata with input/output Follows spirit of process algebras, communicating processes order bill order !b bill !r ?p ?o !b ?p !r ?o !r !b !r rcpt pymnt rcpt ?p pymnt (a) “cautious” supplier (b) “trusting” supplier Can model single or sequenced enactments Advantages for analysis, e.g., verifying temporal properties, characterizing global behavior October 18, 2003 Behavioral Signatures and E-Service Composition

13 Modeling II: A composition framework
Peer 1 Peer 2 . . . Peer n A peer: autonomous process executing an e-service Assume reliable communication October 18, 2003 Behavioral Signatures and E-Service Composition

14 Behavioral Signatures and E-Service Composition
E-Composition Schema An E-C schema is a triple (P, C, M) Specifies the infrastructure of composition authorize M : (finite) set of message classes ok bill2 payment2 order1 receipt1 order2 receipt2 payment1 bill1 P : finite set of peers (e-services) store bank supplier1 supplier2 C : finite set of peer-to-peer channels Many variations on this base model possible, e.g., Different levels of granularities Assume finite domains  can model parameters explicitly October 18, 2003 Behavioral Signatures and E-Service Composition

15 Combining Peer and Composition Models
store bank !o1 !a ?k !o2 . . . ?b1 ?a !k . . . supplier1 supplier2 ?o2 ?r2 !b2 ?o1 !b1 . . . . . . Peer fsa’s begin in their start states October 18, 2003 Behavioral Signatures and E-Service Composition

16 Executing a Mealy Composition (cont.)
store bank !o1 !a ?k !o2 . . . a ?b1 ?a !k . . . supplier1 supplier2 ?o2 ?r2 !b2 ?o1 !b1 . . . . . . STORE produces letter a and sends to BANK October 18, 2003 Behavioral Signatures and E-Service Composition

17 Executing a Mealy Composition (cont.)
store bank !o1 !a ?k !o2 . . . ?b1 ?a !k . . . supplier1 supplier2 ?o2 ?r2 !b2 ?o1 !b1 . . . . . . BANK consumes letter a Execution successful if all queues are empty and fsa’s in final state October 18, 2003 Behavioral Signatures and E-Service Composition

18 “State” and “Conversation”
store bank !o1 !a ?k !o2 b2 b1 . . . ?b1 ?a !k r2 . . . supplier1 supplier2 ?o2 ?r2 !b2 ?o1 !b1 . . . . . . o1 o2 o2 r2 The state of the composition is based on state of each peer contents of the queues Conversation : one enactment of global process Can have “sub-conversations” of a conversation Little known about formal properties of conversations October 18, 2003 Behavioral Signatures and E-Service Composition

19 Important Choices for Message-based Composition Model
Peer 1 Peer 2 . . . Peer n Representation formalism for peer implementations Expressive power of peer implementations Bounded vs unbounded queues Several queues vs one queue vs heap vs … Open vs closed Restricted topologies/control: peer-to-peer, hub-and-spoke, hierarchical, … Show full language or subset October 18, 2003 Behavioral Signatures and E-Service Composition

20 Composition Infrastructure
order1 ok receipt1 order2 receipt2 bill2 payment2 bill1 payment1 authorize store bank supplier1 supplier2 Peer-to-peer (distributed control) Hub-and-spoke (centralized control) a k’ r o b2 p2 r2 o2 r1 o1 b1 p1 k a’ b p store supplier1 supplier2 bank mediator BPEL4WS, BPML, GSFL useful to define mediators Composition of compositions  hierarchy . . . October 18, 2003 Behavioral Signatures and E-Service Composition

21 BPEL4WS: Example white-box language
begin parallel Initialize do until flag Receive Bill1 send Order end_date reached pick receive order Send Bill receive Receipt1 flag := true case Receive Payment suppl1 order suppl2 order send Receipt Send Payment1 end case end parallel Flowcharts “with parallelism” “Pick” construct to enable waiting for input (or time out) Synchronization within parallel threads Comparison of supported constructs: see [van der Aalst ’03] October 18, 2003 Behavioral Signatures and E-Service Composition

22 Behavioral Signatures and E-Service Composition
OWL-S Process Model Process class Atomic, composite (mediator), or simple (virtual) Inputs, outputs, effects Pre-conditions, post-conditions Constructs for composite processes Sequence Concurrency: Split; Split+Join; Unordered Choice If-Then-Else Looping: Repeat-Until; Iterate (non-deterministic) Data Flow No explicit variables, no internal data store, no wait Predicate “sameValues” to match input of composite service and input of subordinate service Less refined than, e.g., BPEL4WS October 18, 2003 Behavioral Signatures and E-Service Composition

23 Behavioral Signatures and E-Service Composition
Outline Events, messages, and sequential behavior are facts of life An automata-based framework Analysis “tools” Petri nets Tools using temporal logics Bounded vs. unbounded queues Automatic composition Conclusions October 18, 2003 Behavioral Signatures and E-Service Composition

24 Behavioral Signatures and E-Service Composition
Verifying Properties of DAML-S Processes via Petri nets [Narayanan+McIlraith ’02] Specify a DAML-S semantics using a situation calculus Includes Knows, Kwhether, Kref for condition testing Captures “completion assumptions”: essentially prevents world from changing without e-service knowing about it Operational semantics via Petri nets Assume finite domains Map to “1-safe” Petri nets, which corresponds to bounded queue case Verify properties such as reachability, termination Complexity depends on constructs and model Range from PTIME to EXPSPACE-hard October 18, 2003 Behavioral Signatures and E-Service Composition

25 Verifying Temporal Properties of Mealy Compositions
store bank !o1 !a ?k !o2 . . . ?b1 ?a !k “line-of-credit available” “shipment just made” . . . warehouse1 warehouse2 !b2 ?o2 ?r2 !b2 ?o1 !b1 . . . ?r2 . . . Label states with propositions Level of indirection between states and “observables” Express temporal formulas, e.g., “shipment just made” only after “line-of-credit avail” October 18, 2003 Behavioral Signatures and E-Service Composition

26 Results on Temporal Verification
Long history, e.g., [Clarke et.al. ’00] E.g., verification for fsa’s and propositional LTL Complexity: PSPACE in size of formula + fsa linear time in size of fsa Application to Mealy compositions Results apply to open and closed case Bounded queues Composition can be simulated as Mealy machine Verification is decidable Standard techniques to reduce cost Unbounded queues In general, undecidable Approximation techniques can be applied October 18, 2003 Behavioral Signatures and E-Service Composition

27 Qualitative Analysis of Unbounded Queue Compositions
“Conversation Languages” [Bultan et.al. WWW’03] Assume a “watcher” that observes all messages sent In contrast to previous approach, the “observables” here are simply the messages sent Language of peer implementation is set of words formed by successful executions of the implementation Peer 1 Peer 2 . . . Peer n a k o1 b1 o2 p1 . . . Watcher October 18, 2003 Behavioral Signatures and E-Service Composition

28 Example Conversation Language
store bank !o1 !a ?k ?b1 ?a !k . . . . . . !o2 supplier2 supplier1 ?o2 ?r2 !b2 ?o1 !b1 . . . . . . Language: ak SH( (o1 r1 b1 p1)*, (o2 SH(r2,b2p2))* ) First ak, then a shuffle of orders against Supplier1 and orders against Supplier2 Supplier1 is “cautious” and Supplier2 is “trusting” This language is regular Same language for bounded or unbounded queues October 18, 2003 Behavioral Signatures and E-Service Composition

29 Behavioral Signatures and E-Service Composition
Unbounded Queues  Unexpected Behaviors !b ?o ?b ?a !o !a (a) Store’ (b) Supplier’ (c) Bank’ Abstract versions of previous e-services But, no “handshakes” for messages Conversation language L: L  ao*b* = { aonbn | n  0 }, i.e., L is not regular Take aways: “Bottom up” design of compositions may lead to undesirable global behaviors Service mediators can have important role in preventing undesirable behaviors October 18, 2003 Behavioral Signatures and E-Service Composition

30 How bad is it ? In general, conversation language with Mealy peers and unbounded queues is context-sensitive Accepted by a quasi-realtime automaton with 3 queues All conversation languages are closed under two key properties Join: if w is generated, then certain “shuffle products” of w are also generated Prepone: interchange order of input and output messages of a peer p under certain conditions For hierarchical ec-schemas: Conversation language is join-prepone closure of a regular language Each peer is a Mealy implementation October 18, 2003 Behavioral Signatures and E-Service Composition

31 Behavioral Signatures and E-Service Composition
Outline Events, messaging, and sequential behavior are facts of life An automata-based framework Analysis “tools” Automatic composition Hierarchical composition Results from DAML-S community Results using Mealy machines A bridge to DLs Conclusions October 18, 2003 Behavioral Signatures and E-Service Composition

32 Hierarchical Composition
A pragmatic approach to automating e-service composition Customized Travel Service Travel Service Templates Air Travel Templates Airport Transfer Hotel Reservation October 18, 2003 Behavioral Signatures and E-Service Composition

33 Hierarchical Composition (cont.)
Approach: Assume a library of e-service “templates” and ground specs Based on input criteria select a root template, then fill in “gaps” with other templates and/or ground specs [Christophides et.al. ’01b] does this for “structured workflows” Take-away: Hierarchical structuring is important for e-service formalisms Need to incorporate this into OWL-S, Mealy model October 18, 2003 Behavioral Signatures and E-Service Composition

34 Automatic Composition for DAML-S
[Narayanan+McIlraith ’02]: Search over all combinations Recall simulation of DAML-S via 1-safe Petri nets For set of atomic e-services, create Petri Net that represents all possible combinations of them Specify desired goal as a state of this Petri Net Determine if this goal state is reachable In this framework reachability is PSPACE- complete in size of Petri net Petri net itself may be exponential in size of atomic e-services Heuristics can be used to avoid full construction [McIlraith+Son ’02] Generic compositions + customization develops mapping of DAML-S into ConGolog, and uses to create compositions Approach based on 2-level hierarchy… October 18, 2003 Behavioral Signatures and E-Service Composition

35 Composition for Mealy Peers
Traditional synthesis problem statement: Given: ec-schema and LTL formula  Create: an fsa for each peer so that  is satisfied Synthesis results for Mealy implementations with bounded queues Closed compositions: folklore results imply that synthesis is decidable Propositional LTL description  PSPACE -regular set represented as automaton  PTIME Open compositions: Undecidable for LTL for arbitrary ec-schemas [Pnueli+Rosner ’90] Decidable for hierarchical topology, but non-elementary even for linear case [Kupferman+Vardi ’01] October 18, 2003 Behavioral Signatures and E-Service Composition

36 Behavioral Signatures and E-Service Composition
Reformulation of the Synthesis Problem to use extended “UDDI Repository” UDDI Repository: globally accessible store for web service descriptions and locations Imagine that it supports Mealy descriptions Possible approach Given: ec-schema, LTL formula , “UDDI repository” Find: peers in repository so that  is satisfied Variation: allow creation of a mediator to choreograph the selected peers Database aspect of this problem How to search across large space of Mealy descriptions? What is appropriate query language? October 18, 2003 Behavioral Signatures and E-Service Composition

37 Synthesis for Unbounded, Closed Case [Bultan et. al. ’03]
Use conversation language to express global behavior Problem statement: Given: ec-schema and regular language L over messages Create: an fsa for each peer so that composition generates L’ = join-prepone closure of L Result: Mealy peers can be constructed whose composition gives global behavior L’ Do a “projection” on fsa accepting L Can again ask UDDI version of synthesis question October 18, 2003 Behavioral Signatures and E-Service Composition

38 Recent work from Lenzerini’s group (DL ’03)
[Berardi et al ’03] Based on a different model for peers Focus on sequences of actions, not messages Includes a “user” who repeatedly makes choice (from limited set) about next action she wants All actions “visible” at top level Actions that client can ask for: initiate, end search listen cart buy Client on-line music store Service Abstract behavior of the Service: Do until Client selects “End” Give Client a choice of actions to be performed Wait for Client choice Perform action chosen by Client October 18, 2003 Behavioral Signatures and E-Service Composition

39 Solve composition by synthesizing mediator
Assuming peers and spec are regular, can Determine if a composition exists If one does, then select peers and construct mediator Desired behavior (as FSA) Mediator (constructed) Services (selected from “UDDI”) Extended UDDI Using standard automata techniques: NEXPTIME Using reduction to ALU DL: EXPTIME October 18, 2003 Behavioral Signatures and E-Service Composition

40 Behavioral Signatures and E-Service Composition
Conclusions Sequential behavior and messaging are a fact of life We need a notion of “behavioral signature” Automata-based perspective Provides formal framework that incorporates events and sequencing Can draw on broad theory of analysis “tools” Offers a framework for automated composition Can represent (at least some) in DLs – link to OWL? Automata-based perspective should be exploited in semantic web services Results suggest key challenges in composition Select peers: queries over sets of peers Mediator crucial: find/build the mediator October 18, 2003 Behavioral Signatures and E-Service Composition

41 We are just getting started …
Enhanced Mealy – can we incorporate Messages + actions Pre-/post-conditions á la OWL-S Hierarchical structure for messages (state charts?) Temporal constraints (your favorite) PSL constructs Composition of Mealy++ machines Can we adapt the Roman approach ? Augment traditional planning with approach for cyclic behaviors Mealy++ vis-à-vis BPEL4WS, OWL-S process model, PSL, FIPA A-UML, … Jianwen Su et. al. developing tool for translating between Mealy and BPEL4WS Searching a large set of Mealy++ signatures What is appropriate query language? Finding relevant results from various communities: verification, -calculus, planning, DL, DB, agent, … October 18, 2003 Behavioral Signatures and E-Service Composition

42 Behavioral Signatures and E-Service Composition
Backup Slides October 18, 2003 Behavioral Signatures and E-Service Composition

43 Behavioral Signatures and E-Service Composition
E-Services The Web: Flexible human-machine interaction E-services: Flexible machine-machine interaction Working Definition: Network-resident software services accessible via standardized protocols Simple Object Access Protocol (SOAP): very flexible remote procedure call Lots of interest in trade press, academic community, standards bodies, . . . Applications in e-commerce, telecom, science, GRID, government, education, . . . October 18, 2003 Behavioral Signatures and E-Service Composition

44 control and calibrations
E-Science Controller control and calibrations Sea Circu- lation Atmo- spheric Simu- lation Waste Transport notifications and/or experimental data E.g., find best location for waste treatment plant Possibly 100s of nodes, and running for weeks Data size difference: Control and calibrations (small) Experimental data (large) Provenance: need to access derivation history October 18, 2003 Behavioral Signatures and E-Service Composition

45 Web Services Protocol Stack*
composition: WSFL, XLANG, BPEL4WS, BPML, W3C Choreography Publishing and discovery: UDDI Service Description Layer: WSDL, WSCL, WSCI XML messaging layer: SOAP Transport layer: HTTP, SMTP, FTP, etc. *Based on [van der Aalst ’03] October 18, 2003 Behavioral Signatures and E-Service Composition

46 Pre-/post-conditions
order Supplier bill DAML-S provides for pre- and post-conditions Examples if valid client sends Order, then Bill is created if Payment is received, then Receipt is sent Performing inference (“everything else fixed”) Assume a Bank service such that: if bill received and sufficient funds, then payment is sent Then we can infer that: “an order from a valid client with a sufficient account balance will result in a receipt” Reasoning with pre- and post-conditions Different models will lead to different complexity [Narayanan+McIlraith ’02] axiomatization in situation calculus for a Petri-net based model Complexity from PTIME to EXPSPACE-hard receipt payment October 18, 2003 Behavioral Signatures and E-Service Composition

47 Web Services Conversation Language (WSCL)
Alternative automata-based approach for describing behavior of e-services States are the WSDL operations (input and/or output) Transitions are pairs of operations, with associated condition Condition refers to type of documents passed as input or output Relationship of Mealy machine vs. WSCL machine remains open Mealy machine formalism given above could be extended to include conditions based on types of documents passed Number of states in WSCL machine bounded by number of WSDL operations So Mealy machines (with conditions) appear more expressive than WSCL machines Alternative automata-based approach for describing behavior of e-services States are the WSDL operations (input and/or output) Transitions are pairs of operations, with associated condition Condition refers to type of documents passed as input or output Relationship of Mealy machine vs. WSCL machine remains open Mealy machine formalism given above could be extended to include conditions based on types of documents passed Number of states in WSCL machine bounded by number of WSDL operations So Mealy machines (with conditions) appear more expressive than WSCL machines October 18, 2003 Behavioral Signatures and E-Service Composition

48 Behavioral Signatures and E-Service Composition
Technical Definition A Mealy peer is an FSA M = (T, s, F, in, out,  ) T : a set of states s : the initial state F : a set of final states in : input message classes out : output message classes  : transition relation that either consume an input, (s1, ?m, s2), or produce output, (s1, !m, s2), or make an empty (internal ) move, (s1, e, s2) October 18, 2003 Behavioral Signatures and E-Service Composition

49 Abstract model for e-services with data
Variation of relational transducer [Abiteboul et al ’00] Extend Mealy machine to (Q,q0, F, I, H, O, ) Input schema I (can hold data associated with incoming messges) Internal/hidden schema H Output schema O  has tuples (q, q’, G, T) G is “guard” -- boolean query on I and H T is “transform” - queries that create new H and output O Can use different data models (relational, XML, …) General decision problems are undecidable E.g., if use relational calculus as data manipulation language Restricted cases are decidable, tractable E.g., reachability of a state, if using conjunctive queries E.g., “Spocus” transducers of [Abiteboul et al ’00] have PTIME decidability results October 18, 2003 Behavioral Signatures and E-Service Composition

50 Data Transducers as White-Box Peers
Add database to fsa (XML, relational) Store e-service with Customer_care Inventory_replenishment Store_database used as shared data store Cf., XL [Florescu et.al.’03] Process + XQuery Cf., Relational Transducer [Abiteboul et. al. ’00] Analysis undecidable; NEXPTIME for restrictions buy ?y !t take customer_care store_inventory part qty . . . store_database ?r1 order1 ?r2 !o1 !o2 authorize receipt1 !a ?k order2 ok !o2 !o1 inventory_ replenishment ?r2 ?r1 receipt2 October 18, 2003 Behavioral Signatures and E-Service Composition

51 Parting Challenge: Process + Data
Develop a theory for e-service composition that incorporates process + data store bank warehouse1 warehouse2 E.g., “Relational Mealy Machines” (or XML, ) Cf. Relational Transducers of [Abiteboul et. al. ’00] Focus on restricted query/update languages Extend results previously obtained to include variables, context, large data October 18, 2003 Behavioral Signatures and E-Service Composition

52 E-service “Glue” Languages and Workflow Management
“Computerised facilitation or automation of a business process, in whole or part” [WfMC] Centralized control State of conversation maintained by WF manager Delegation of “almost everything” to the app.s E.g., application data is not accessible to WF manager Workflow standardization has mixed success Web services must interoperate  standard likely Should focus on interfaces, not internals October 18, 2003 Behavioral Signatures and E-Service Composition

53 ActiveXML: A data-centric white-box language [Abiteboul et.al. ’03]
A novel combination of data and web services Three ways to treat remote data: Remote data is virtual, and materialized when queried Pass data pointer as part of query response Materialize remote data periodically Alternative to control-flow based languages: “Outer process flow” dictated by XML query language (and structure of data) “Remote procedure calls” embedded into XML structure October 18, 2003 Behavioral Signatures and E-Service Composition

54 White-box Analysis via XML
Many different kinds of constraints arise in BPEL4WS spec Referential: service links refer to peers in composition Cardinality: for synchronization links, 1 source and 1 target Structural: internal synchronization links don’t cross while scopes Value-based: requests matched by responses XPath: query on variable is subtype of a target variable For (a): XML Schema suffices For (b) - (d): see [Deutsch+Tannen ’01, Benedikt et.al. ’02] For (e): Involves a combination of XPath and control flow analysis If XL used, then “everything” is XQuery, and so XQuery type-checker can assist with type correctness October 18, 2003 Behavioral Signatures and E-Service Composition

55 Behavioral Signatures and E-Service Composition
AZTEC: A white-box language for sessions and asynchronous events [Christophides et. al. ’01a] Control is hub-and-spoke Maintains state of sessions Richer than web-service notion of conversation Queue for incoming asynchronous events Profile Data Presence Server Media (voice) (video) Pre-Pay Session Coordinator Launches instance of event-handling flowchart for each external event Synchronization between flowcharts Priority Via shared data Can interrupt other flowcharts (e.g., if prepay account runs out of money) October 18, 2003 Behavioral Signatures and E-Service Composition

56 Behavioral Signatures and E-Service Composition
Agent UML E.g., [Odell ’00] An exploration of different ways that UML can be used to capture agent interactions Message types based on KQML – request, assert, refuse, … Subset of messages relevant to e-commerce, alerting services, long-running activities, supply chain life-cycle, manufacturing life-cycle, collaborative technologies, pervasive computing, … Winograd-Flores perspective (classical) October 18, 2003 Behavioral Signatures and E-Service Composition

57 A-UML: focus on modeling
Diff. levels: Global, interaction, internal Focus not on analysis or automated composition Activity Diagram (with Swim Lanes and Object Flow) Packages (with nesting) [for global aspects] Collaboration Diagram October 18, 2003 Behavioral Signatures and E-Service Composition Sequence Chart Nesting (mix & match)

58 Behavioral Signatures and E-Service Composition
A “Roman” approach to composition that bridges to DLs [Berardi et al ’03] Based on an action-based model E-commerce example, with focus on actions authorize_ line_of_credit store bank sell_goods pay_ supplier1 fulfill_ order1 supplier1 supplier2 Higher level of abstraction than messages Enactments still have different life-cycles October 18, 2003 Behavioral Signatures and E-Service Composition

59 Focus on one Client, one Server
Drill down on customer buying CDs Examine sub-actions inside sell_goods initiate search listen cart buy end Online Music Store Front- end Back- end Abstract behavior of the Service: Do until Client selects “End” Give Client a choice of actions to be performed Wait for Client choice Perform action chosen by Client Client on-line music store Service October 18, 2003 Behavioral Signatures and E-Service Composition

60 “Execution Tree” in Roman model
(External) execution tree: all possible sequences of actions supported by service Action supported by service initiate Client search State at which client can stop on-line music store listen cart Service State at which client can not stop search cart buy search . . . . . . . . . Children labeled by distinct actions Tree is equivalent to a language over actions Typically, focus on regular languages October 18, 2003 Behavioral Signatures and E-Service Composition

61 Composition in Roman Model (sketch)
Internal execution tree holds actions by server and delegates of that server . . . initiate, care search, care cart, care listen, juke search, care cart, buy, bank Client on-line music store Service Service delegates cust. care jukebox bank All actions are “visible” to client; none “internal” October 18, 2003 Behavioral Signatures and E-Service Composition

62 Composition in Roman Proposal [Berardi et.al.’03]
. . . initiate search cart listen buy External tree for store on-line music store cust- care jukebox bank . . . initiate, care search, care cart, care listen, juke search, care cart, buy, bank . . . initiate search cart External trees for cust-care, jukebox, bank Internal tree for store listen buy If trees “regular”, can build composition (if exists) Includes selecting delegates and constructing mediator Using standard automata techniques: NEXPTIME Using reduction to ALU DL: EXPTIME October 18, 2003 Behavioral Signatures and E-Service Composition

63 Behavioral Signatures and E-Service Composition
Citations [Abiteboul et. al. ’00] S. Abiteboul, V. Vianu, B. Fordham, and Y. Yesha. Relational Transducers for electronic commerce. JCSS, 61(2): , 2000 [Abiteboul et.al. ’03] S. Abitegoul, A. Bonifati, G. Cobena, I. Manolescu, and T. Milo. Dynamic XML documents with distribution and replication. SIGMOD, 2003 [Benedikt et.al. ’02] M. Benedikt, G. Bruns, J. Gibson, R. Kuss, and A. Ng. Automated update management for XML integrity constraints. Proc. Workshop on Programming Languages for XML (PLAN-X), 2002 [Berardi et al ’03] D. Berardi, D. Calvanese, G. De Giacomo, M. Lenzerini, and M. Mecella. E-Service Composition by Description Logics Based Reasoning. Proc Description Logics workshop (DL 2003). [Bultan et.al. WWW’03] T. Bultan, Z. Fu, R. Hull, and J. Su. Conversation Specification: A new approach to design and analysis of e-service composition. WWW, 2003 [Christophides et. al. ’01a] V. Christophides, R. Hull, G. Karnounarakis, A. Kumar, G. Tong, and M. Xiong. Beyond discrete e-services: Composing session-oriented services in telecommunications. Proc. Workshop on Technologies for E-Services (TES), Springer LNCS 2193, Sept, 2001 October 18, 2003 Behavioral Signatures and E-Service Composition

64 Behavioral Signatures and E-Service Composition
Citations (cont) [Christophides et. al. ’01b] V. Christophides, R. Hull, and A. Kumar. Querying and splicing of XML workflows. CoopIS, 2001 [Clarke et.al. ’00] E. Clarke, O. Grumberg, and D. Peled. Model Checking. MIT Press, 2000. [Deutsch+Tannen ’01] A. Deutsch and V. Tannen. Containment for classes of XPath expressions under integrity constraints. Proc. Workshop on Knowledge Representation meets Databases (KRDB), 2001 [Florescu et.al.’03] D. Florescu, A. Gruhagen, and D. Kossmann. XL: An XML programming language for web service specification and composition. WWW, 2002 [Kupferman+Vardi ’01] O. Kupferman and M. Y. Vardi. Synthesizing distributed systems. Proc. IEEE Symp. Logic in Computer Science (LICS), 2001 [McIlraith+Son ’02] S. A. McIlraith and T. C. Son. Adapting Golog for Composition of Semantic Web Services. KR 2002 [Narayanan+McIlraith ’02] S. Narayanan and S. A. McIlraith. Simulation, verification and automated composition of web services. WWW 2002 October 18, 2003 Behavioral Signatures and E-Service Composition

65 Behavioral Signatures and E-Service Composition
Citations (cont) [Odell ’00] J. Odell, Specifying Agent Interactions using UML. Presentation to July, 2000, meeting of FIPA. [Pnueli+Rosner ’90] A. Pnueli and R. Rosner. Distributed reactive systems are hard to synthesize. FOCS, 1990 [van der Aalst ’03] W. M. P. van der Aalst. Don’t go with the flow: Web services composition standards exposed. IEEE Intelligent Systems, Jan/Feb, 2003 [WfMC] Workflow Management Coalition. October 18, 2003 Behavioral Signatures and E-Service Composition


Download ppt "Rick Hull Bell Labs Research"

Similar presentations


Ads by Google