Title by wulinqing

VIEWS: 7 PAGES: 39

									Semi-automatic design of
Collaborative Business Processes
for EAI/B2B Integration

Andreas Friesen, Jens Lemcke

SAP Research
 Outline

 Semantics@SAP Research

 FUSION project
      Motivation
      Background
      Scientific Vision

 Enterprise Application Integration Ontology

 Run Time Infrastructure

 Semi-automatic composition

 Conclusions




 SAP AG 2004, Title of Presentation / Speaker Name / 2
 FUSION




            Business Process FUSION based on
           Semantically-enabled Service-oriented
                  Business Applications




 SAP AG 2004, Title of Presentation / Speaker Name / 3
 Motivation

 Enterprises use heterogeneous systems

 Enterprise applications are designed for
 efficiency, not reuse                                                      Document Mgmt
                                                                                               Market
                                                            Call                              Analysis

 Introduction of multi-oriented, separate legacy           Center


 systems (ERP, CRM, SCM, etc.)
                                                                                                         SCM

 Enterprises are not willing to replace their
                                                          ERP
 large-scale systemic investments
      With 1 system (best system for each need)
      All at the same time (capability, dependencies)    Trading                                    e-Sales



           systems must be integrated                               Technical
                                                                     systems
                                                                                            E-Procurement

                                                                                PLM




 SAP AG 2004, Title of Presentation / Speaker Name / 4
 Background - EAI



   EAI is the use of software and architectural
   principles to integrate a set of enterprise
   applications
                                                                            Document Mgmt
                                                                                             Market
   The goal of EAI is                                       Call                            Analysis
                                                           Center
        to integrate and streamline heterogeneous
         business processes
                                                                                                       SCM
        to allow employees, decision makers and
         business partners to access corporate and
                                                          ERP
         customer data no matter where it resides

   EAI involves automated, event-driven
   exchange of information between                        Trading                                 e-Sales
   heterogeneous enterprise applications
        intra-organizational EAI                                   Technical           E-Procurement
                                                                     systems
        inter-organizational EAI                                               PLM




 SAP AG 2004, Title of Presentation / Speaker Name / 5
 Background - SOA

 Architectural style that leverages open
 standards to represent software assets as
 services
 Provides a standard way of representing and
 interacting with software assets (WSDL, SOAP,
 UDDI)
 Individual software assets become building
 blocks that can be reused in developing other
 applications
 Shifts focus to application assembly rather
 then implementation
 Used internally to create new applications out
 of existing components
 Used externally to integrate with applications
 outside of the enterprise




 SAP AG 2004, Title of Presentation / Speaker Name / 6
 Scientific Vision (Semantics for EAI&SOA)

 Semantically-enriched EAI is expected to
      hide systems, syntax, and structural heterogeneity
      eliminate the problem of knowing
              the contents and structure of information resources
              the structure and architecture of heterogeneous enterprise applications

      provide a shared and common understanding of
              data, services and processes
              how to facilitate communication between people and information systems


 Semantically-enriched Service-oriented Business Applications enlarge the
 notion of SOA by
      applying Semantic Web Service technologies
      using ontologies and semantic web mark up languages to describe
              data structures
              messages
              function

      providing a reconfigurable architecture
              enabling enterprises to respond quickly and flexibly to market changes
              supporting innovation and business growth
              increasing the potential for an improved return on IT investments




 SAP AG 2004, Title of Presentation / Speaker Name / 7
 Scientific Vision in FUSION

 FUSION project aims at the efficient business collaboration and
 interconnection between SMEs
      by developing a framework and technologies for the semantic fusion of
       service-oriented business applications existing
              within           an enterprise (A2A)
              in      several collaborating companies (B2B)
      by developing methodology for the FUSION community (manufacturers,
       IT and business consultants, business partners)
      by building proof-of-concept pilot implementations spawn across the
       enlarged Europe countries (taking into consideration the intercultural
       and regulatory aspects)




 SAP AG 2004, Title of Presentation / Speaker Name / 8
   Overview of the FUSION Ontology Structure




                                                                                           r
                                                                                        pe
                                                                                      Up



                                                                                               On
                                                                                               Up log
                                                                                to e r
                                                                                    gy
                                                                              On p




                                                                                                 pe y
                                                                                                 to
                                                                                  lo
                                                                                 Up




                                                                                                    r
                                                                    t
                                                                nd -
                                                                  en
                                                              pe or
                                                      n
                                                    io

                                                            de d
                                                          in Ven
                                                 ct
                                              tra
                                          Abs

                                                                      CRM
                                       of



                                                                                                          Process
                                    el




                                                                                     ERP          Functional
                                   v


                                            nd r-
                                Le




                                                t
                                              en
                                         pe do




                                                                                               Data
                                       de en
                                          V




                                                    CAS
                                                genesisWorld
                                                                                 e
                                                                       Ente ular
                                                                           rpris                                           Process
                          ce fic




                                                                                     SAP R/3
                                                                        Sing
                        an ci




                                                                                                        Functional
                            s
                      st pe
                    In e-s




                                                                                                Data
                       s
                 Ca




                                 InterJob
                            (CAS genesisWorld)                                                                                          Process
                                                                 (Sin isees
                                                                Fran anos


                                                                             e)
                                                               Ente ular


                                                                   a r te r s
                                                                    rpris

                                                                       os
                                                                  Germ
                                                                      ch




                                                                        )
                                                                       g




                                                             (SAP R/3




                                                                                                               Functional
                                                             German
                                                            Headqu




                                          Bu                                                                                               re
                                            sin                                                                                        c tu
                                               ess                                              Data                               tr u
                                                          Ap                                                                     dS
                                                            plic
                                                                                                                     ac   e te
                                                                 at   ion
                                                                         s                                    ulti-f
                                                                                                          M

 SAP AG 2004, Title of Presentation / Speaker Name / 9
 Process Facet (Templates)


                                                                                Business
                                                                                Process
                                                                                Category



                                                                         belongsTo


Collaborative                                    integrates            Public    isDescribedBy   Service
 Business                                                             Process
  Process                                                                                        Profile
                                                                        View



                                                              takes


                                            Business
                                             Partner
                                              Role

 SAP AG 2004, Title of Presentation / Speaker Name / 10
 Technical principles

 From the technical point of view FUSION has two major principles
      Respect of industrial standards where ever they are considered de-
       facto
              For    example technologies such as Web Services, BPEL, UDDI etc will be
                 utilized
              Ignoring    de-facto EAI standards will lead to a hard-to-adopt FUSION solution
                 in the real world
      Use of mature semantic technology for creating FUSION solution
              This  is because there are many Semantic Web Services
                 frameworks/approaches with differences among them
              Differences                  vary from modeling to execution


      These principles led us to formulate and run some experiments




 SAP AG 2004, Title of Presentation / Speaker Name / 11
 Semantic Execution Experiment – Architecture




 SAP AG 2004, Title of Presentation / Speaker Name / 12
 General Assumptions for semi-automatic composition

 Collaborative Business Process(CBP) Template is a customisable and
 reusable discovery goal description

 Service description (the primary building block of the executable CBP)
 consisting of:
      Service Profile (discovery),
      Web Service Grounding (execution),
      Behavioural Model (composition)

 A Public Process View (PPV) in a CBP consists of Service Profile(s) and
 exactly one Role, i.e., allows for description of different PPV variants of
 the private process

 Mapping of WS Outputs to WS Inputs, i.e., definition of the potential data
 flows (a precondition for successful execution)




 SAP AG 2004, Title of Presentation / Speaker Name / 13
 Preparatory tasks




               CBP                                                                          Process Mediator
              Designer                                                                      Services Required!

                                                           CBP + System IDs


                                                              Semantic            Data Mediator
                                                              Registry            Services Required!


                                                                              WS Descriptions

                             Data Dependencies (IO Maps)                       Composition
                                                                                  Goal
                                                                                 Editor
                                                                                                 Composition
                                                                                                    Goal &
                                                                                                   IO Maps

 SAP AG 2004, Title of Presentation / Speaker Name / 14
 Core composition tasks



         Web Services
         IO Maps
         Composition Goal

                  Transformer

                                                           Input (internal)


                                                                 Composer
                                                                              Executable
                                                                              CBP (internal)


                                                                                   Transformer


                                                                                                   Executable
                                                                                                 CBP (e.g.,BPEL)

 SAP AG 2004, Title of Presentation / Speaker Name / 15
 Composition

 Semi-automatic designer consists of
      Discovery
      Goal Editor
      Composer




 SAP AG 2004, Title of Presentation / Speaker Name / 16
 Composition goal

 Abstract goal definition




 Composition goal consists of
      Primary goal
              Successful                   final or initial states
      Recovery goal
              Set        of unsuccessful final or initial states

 Goal editor input
      Participating Web services of one CBP (after discovery)

 Goal editor output
      Set of primary and recovery goals


 SAP AG 2004, Title of Presentation / Speaker Name / 17
 Example Web services



                                                              USER                                FLIGHT
                                      bookReq                            bookReq
                 flightTicket, started                                                   started
                 hotelTicket,          flightNotAvail                    flightTicket
                                                                                                   flightNotAvail
               carTicket
                          booked      notAvail                                 booked             notAvail


                                                              CAR
                               bookReq
                                                                                             HOTEL
                                                   started                   bookReq
                             carOffer
                                                      avail                             started
                          accept                                reject                      hotelTicket
                                 confirmed                                              booked
                                                           canceled
              carTicket
                                   booked


 SAP AG 2004, Title of Presentation / Speaker Name / 18
 State taxonomy, example




                                                                     State




                                 Initial                      Intermediary            Final



                                                                         Successful           NotSuccessful


           Started                 Available               Booking     Booked         NotAvailable   Canceled

     Examplary states

 SAP AG 2004, Title of Presentation / Speaker Name / 19
 Example primary goal



                                                              USER                                FLIGHT
                                      bookReq                            bookReq
                 flightTicket, started                                                   started
                 hotelTicket,          flightNotAvail                    flightTicket
                                                                                                   flightNotAvail
               carTicket
                          booked      notAvail                                 booked             notAvail


                                                              CAR
                               bookReq
                                                                                             HOTEL
                                                   started                   bookReq
                             carOffer
                                                      avail                             started
                          accept                                reject                      hotelTicket
                                 confirmed                                              booked
                                                           canceled
              carTicket
                                   booked


 SAP AG 2004, Title of Presentation / Speaker Name / 20
 Example recovery goal I



                                                              USER                                FLIGHT
                                      bookReq                            bookReq
                 flightTicket, started                                                   started
                 hotelTicket,          flightNotAvail                    flightTicket
                                                                                                   flightNotAvail
               carTicket
                          booked      notAvail                                 booked             notAvail


                                                              CAR
                               bookReq
                                                                                             HOTEL
                                                   started                   bookReq
                             carOffer
                                                      avail                             started
                          accept                                reject                      hotelTicket
                                 confirmed                                              booked
                                                           canceled
              carTicket
                                   booked


 SAP AG 2004, Title of Presentation / Speaker Name / 21
 Example recovery goal II



                                                              USER                                FLIGHT
                                      bookReq                            bookReq
                 flightTicket, started                                                   started
                 hotelTicket,          flightNotAvail                    flightTicket
                                                                                                   flightNotAvail
               carTicket
                          booked      notAvail                                 booked             notAvail


                                                              CAR
                               bookReq
                                                                                             HOTEL
                                                   started                   bookReq
                             carOffer
                                                      avail                             started
                          accept                                reject                      hotelTicket
                                 confirmed                                              booked
                                                           canceled
              carTicket
                                   booked


 SAP AG 2004, Title of Presentation / Speaker Name / 22
 Relationship b/w prim. & rec. goals

 Compute recovery from primary goal

 Primary goal
      Exactly one successful final state per Web service

 Recovery goal
      All combinations of
              Reachable                  unsuccessful final or initial states
              When            trying to achieve primary goal




 SAP AG 2004, Title of Presentation / Speaker Name / 23
 Assumptions

 Web service behavior is a bipartite graph
 of input and output operations.                                                          CAR
     Input: WS behavior can be influenced                        bookReq
     (deterministic)
     Output: WS informs about its internal state
                                                                                started
     (non-deterministic)                                          carOffer

 Each variable is used as an output once                                          avail
                                                                accept                       reject
 at a maximum in the whole repository.
                                                                       confirmed
 Each variable is used at all once at a                                              canceled
                                                           carTicket
 maximum in a single Web service (thus,
 either as an input or an output).                                     booked

 All processes are composable, otherwise                                     MEDIATOR
 resolving process mediators are
                                                                   carOffer,        carOffer,
 introduced into the set of Web services.
                                                                flightTicket        noFlight
                                                                         accept           reject

                                                                accept                             reject
                                                                       confirmed          canceled



 SAP AG 2004, Title of Presentation / Speaker Name / 24
 Abstraction of service-oriented arch.

 Simulation of Web service interface (WSDL) by ASMs

 Composition creates an orchestrating ASM




 SAP AG 2004, Title of Presentation / Speaker Name / 25
 Abstraction of a Web service



                                      Effect: status of input vars „processed“
             Input
              vars
               Preconditions:                                      Send
               - status of input vars „initialised“                                   W
               - State of the control state var
                                                                                      S
       Execute                           States                                       D
                      Preconditions:                                                  L
                      - status of output vars „undef“
                      - State of the control state var
                                                                Receive
          Output
           vars
                                        Effect: status of output vars „initialised“



      ASM of a component service


 SAP AG 2004, Title of Presentation / Speaker Name / 26
 Composer, idea

 Separation of potential runs
      Identify
              All       possible combinations of execution paths (= variant)
              Leading               to the goal state

 Algorithm
      For each variant,
              Create            orchestrating rules (called copy rules)
              Merge             all orchestrating rules of complete compositions in the end
      Create orchestration by defining
              Copy           rules between different Web services’ out and in variables
              By        traversing backwards from the goal state and
              Connecting                    variables as defined in VarAss




 SAP AG 2004, Title of Presentation / Speaker Name / 27
 Example, primary goal



                                                             USER                                        FLIGHT
                                      bookReq                                       bookReq
                 flightTicket, started                                                             started
                 hotelTicket,          flightNotAvail                               flightTicket
                                                                                                             flightNotAvail
               carTicket
                          booked      notAvail                                            booked         notAvail



                                                    CAR
                   bookReq
                                                                               HOTEL                        MEDIATOR
                                                                    bookReq                       carOffer,        carOffer,
                                       started
                 carOffer                                                                      flightTicket        noFlight
                                                                          started
                                          avail                                                        accept         reject
              accept                                       reject             hotelTicket
                     confirmed                                           booked                accept                          reject
                                                 canceled
  carTicket                                                                                          confirmed        canceled
                       booked


 SAP AG 2004, Title of Presentation / Speaker Name / 28
 Example, one variant



                                                           USER                                   FLIGHT
                                      bookReq                                bookReq
                 flightTicket, started                                                      started
                 hotelTicket,                                                flightTicket
               carTicket
                          booked                                                   booked



                                                    CAR
                   bookReq
                                                                        HOTEL                          MEDIATOR
                                                             bookReq                       carOffer,
                                       started
                 carOffer                                                               flightTicket
                                                                   started
                                          avail                                                 accept
              accept                                                   hotelTicket
                     confirmed                                    booked                accept
  carTicket                                                                                   confirmed
                       booked


 SAP AG 2004, Title of Presentation / Speaker Name / 29
 Example, out pools & adjacent in-rules



                                                           USER                                   FLIGHT
                                      bookReq                                bookReq
                 flightTicket, started                                                      started
                 hotelTicket,                                                flightTicket
               carTicket
                          booked                                                  booked



                                                    CAR
                   bookReq
                                                                        HOTEL                         MEDIATOR
                                                             bookReq                      carOffer,
                                       started
                 carOffer                                                              flightTicket
                                                                   started
                                          avail                                                 accept
              accept                                                   hotelTicket
          confirmed                                               booked               accept
  carTicket                                                                                   confirmed
                       booked


 SAP AG 2004, Title of Presentation / Speaker Name / 30
 Example, out pools & adjacent in-rules



                                                           USER                                   FLIGHT
                                      bookReq                                bookReq
                 flightTicket, started                                                      started
                 hotelTicket,                                                flightTicket
               carTicket
                          booked                                                  booked



                                                    CAR
                   bookReq
                                                                        HOTEL                         MEDIATOR
                                                             bookReq                      carOffer,
                                       started
                 carOffer                                                              flightTicket
                                                                   started
                                          avail                                                 accept
              accept                                                   hotelTicket
          confirmed                                               booked               accept
  carTicket                                                                                   confirmed
                       booked


 SAP AG 2004, Title of Presentation / Speaker Name / 31
 Example, served inputs



                                                           USER                                   FLIGHT
                                      bookReq                                bookReq
                 flightTicket, started                                                      started
                 hotelTicket,                                                flightTicket
               carTicket
                          booked                                                  booked
            allVarsServed

                                                    CAR
                   bookReq
                                                                        HOTEL                         MEDIATOR
                                                             bookReq                      carOffer,
                                       started
                 carOffer                                                              flightTicket
                                                                   started
                                          avail                                                 accept
              accept                                                   hotelTicket
          confirmed                                               booked               accept
  carTicket                                                                                   confirmed
                       booked


 SAP AG 2004, Title of Presentation / Speaker Name / 32
 Algorithm, next planning state

 Advance state (towards initial state) only
      (Input mode)
       For Web services with completely served adjacent in-rule
      (Output mode)
       For Web services whose current output will never be needed in the
       system after the current planning state

 Algorithm terminates
      Successfully,
       If all Web services are in initial state
      Unsuccessfully,
       If the initial state could not be reached




 SAP AG 2004, Title of Presentation / Speaker Name / 33
 Example, old planning state



                                                           USER                                   FLIGHT
                                      bookReq                                bookReq
                 flightTicket, started                                                      started
                 hotelTicket,                                                flightTicket
               carTicket
                          booked                                                   booked



                                                    CAR
                   bookReq
                                                                        HOTEL                          MEDIATOR
                                                             bookReq                       carOffer,
                                       started
                 carOffer                                                               flightTicket
                                                                   started
                                          avail                                                 accept
              accept                                                   hotelTicket
                     confirmed                                    booked                accept
  carTicket                                                                                   confirmed
                       booked


 SAP AG 2004, Title of Presentation / Speaker Name / 34
 Example, next planning state I



                                                           USER                                  FLIGHT
                                      bookReq                               bookReq
                 flightTicket, started                                                     started
                 hotelTicket,                                               flightTicket
               carTicket
                          booked                                                  booked



                                                    CAR
                   bookReq
                                                                       HOTEL                          MEDIATOR
                                                             bookReq                      carOffer,
                                       started
                 carOffer                                                              flightTicket
                                                                  started
                                          avail                                                accept
              accept                                                   hotelTicket
                     confirmed                                    booked               accept
  carTicket                                                                                  confirmed
                       booked


 SAP AG 2004, Title of Presentation / Speaker Name / 35
 Example, next planning state II



                                                           USER                                   FLIGHT
                                      bookReq                                bookReq
                 flightTicket, started                                                      started
                 hotelTicket,                                                flightTicket
               carTicket
                          booked                                                  booked



                                                    CAR
                   bookReq
                                                                        HOTEL                         MEDIATOR
                                                             bookReq                      carOffer,
                                       started
                 carOffer                                                             flightTicket
                                                                   started
                                          avail                                                 accept
              accept                                                   hotelTicket
                     confirmed                                    booked               accept
  carTicket                                                                                   confirmed
                       booked


 SAP AG 2004, Title of Presentation / Speaker Name / 36
 Example, next planning state III



                                                           USER                                   FLIGHT
                                      bookReq                                bookReq
                 flightTicket, started                                                      started
                 hotelTicket,                                                flightTicket
               carTicket
                          booked                                                   booked



                                                    CAR
                   bookReq
                                                                        HOTEL                          MEDIATOR
                                                             bookReq                       carOffer,
                                       started
                 carOffer                                                               flightTicket
                                                                   started
                                          avail                                                 accept
              accept                                                   hotelTicket
                     confirmed                                    booked                accept
  carTicket                                                                                   confirmed
                       booked


 SAP AG 2004, Title of Presentation / Speaker Name / 37
 Example, final planning state



                                                           USER                                   FLIGHT
                                      bookReq                                bookReq
                 flightTicket, started                                                      started
                 hotelTicket,                                                flightTicket
               carTicket
                          booked                                                   booked



                                                    CAR
                   bookReq
                                                                        HOTEL                          MEDIATOR
                                                             bookReq                       carOffer,
                                       started
                 carOffer                                                               flightTicket
                                                                   started
                                          avail                                                 accept
              accept                                                   hotelTicket
                     confirmed                                    booked                accept
  carTicket                                                                                   confirmed
                       booked


 SAP AG 2004, Title of Presentation / Speaker Name / 38
 Special considerations & open issues

 Silent state changes can be introduced
      For output rules
      Leading to final states

 Not all specified services have to participate in composition
      Add initial state of the optional Web service to primary goal

 Issues
      Loops
      Many variants in general
              We  believe in practice, there will be few alternative routes
              For global alternative routes, we propose the definition of a separate service –
               this can be computed

 Future work
      Automatic suggestion of protocol mediators




 SAP AG 2004, Title of Presentation / Speaker Name / 39

								
To top