Processes Mediation

Preview:

DESCRIPTION

Processes Mediation. Emilia Cimpian. Overview. Processes definition Classification Processes equivalence Missmatches Example Architecture Conclusions and further steps. Definition. - PowerPoint PPT Presentation

Citation preview

Copyright 2005 Digital Enterprise Research Institute. All rights reserved.

www.deri.org

Processes Mediation

Emilia Cimpian

14.02.2005 2

Overview

• Processes definition• Classification• Processes equivalence• Missmatches• Example• Architecture• Conclusions and further steps

14.02.2005 3

Definition

• A business process is a collection of activities designed to produce a specific output for a particular customer, based on a specific input

14.02.2005 4

Definition

• A business process is a collection of activities designed to produce a specific output for a particular customer, based on a specific input

Input Output

14.02.2005 5

Definition

• A business process is a collection of activities designed to produce a specific output for a particular customer, based on a specific input

Input Output

14.02.2005 6

Classification

• Public processes– visible from outside of the entity • Private processes – internal processes, not visible for the

environment

14.02.2005 7

Classification

• Public processes– visible from outside of the entity • Private processes – internal processes, not visible for the

environment

Business Entity

Public

Private

Input

Input

Output

Output

14.02.2005 8

Example

concept station code ofType String

startpoint ofType boolean

endpoint ofType boolean

concept routesourceLoc ofType station

destinationLoc ofType station

Private

14.02.2005 9

Example

concept station code ofType String

startpoint ofType boolean

endpoint ofType boolean

concept routesourceLoc ofType station

destinationLoc ofType station

route[startLoc hasValue ?startLoc_, endLoc hasValue ?endLoc_] <-

?startLoc_ memberOf station and

?startLoc_.startpoint = true and ?startLoc_.endpoint = false and

?endLoc_ memberOf station and

?endLoc_.startpoint = false and ?endLoc_.endpoint = true.

Private

14.02.2005 10

Example

concept publicStation subclassOf stationmode hasValue in

concept publicRoute subclassOf routemode hasValue out

Public

14.02.2005 11

Example

concept publicStation subclassOf stationmode hasValue in

concept publicRoute subclassOf routemode hasValue out

publicRoute[

startLoc hasValue ?startLoc_,

endLoc hasValue ?endLoc_] <-

?startLoc_ memberOf publicStation and

?endLoc_ memberOf publicStation.

Public

14.02.2005 12

Example

Business Entity

station1

route

station2

route[startLoc hasValue ?startLoc_, endLoc hasValue ?endLoc_] <-?startLoc_ memberOf station and ?startLoc_.startpoint = true and ?startLoc_.endpoint = false and?endLoc_ memberOf station and ?endLoc_.startpoint = false and ?endLoc_.endpoint = true.

14.02.2005 13

Processes equivalence

• Having two business partners, by process equivalence we understand the full matching of their public processes

14.02.2005 14

Processes Equivalence

• Having two business partners, by process equivalence we understand the full matching of their public processes

Business Partner1

Business Partner2

A

B

C

D

E

A

B

C

D

E

14.02.2005 15

Addressed Mismatches

Business Partner1

Business Partner2

A

B B

PM

14.02.2005 16

Addressed Mismatches

Business Partner1

Business Partner2

A

B B

Business Partner1

Business Partner2

A B

B A

PM

PM

14.02.2005 17

Addressed Mismatches

Business Partner1

Business Partner2

A

B B

Business Partner1

Business Partner2

A B

B A

Business Partner1

Business Partner2

A and BA

B

PM

PM

PM

14.02.2005 18

Addressed Mismatches

Business Partner1

Business Partner2

A

B B

Business Partner1

Business Partner2

A B

B A

Business Partner1

Business Partner2

A and BA

B

Business Partner1

Business Partner2

A

BA and B

PM

PM

PM

PM

14.02.2005 19

Addressed Mismatches

Business Partner1

Business Partner2

A

AckA

APM

14.02.2005 20

Unsolvable Mismatches

Business Partner1

Business Partner2

APM

?

14.02.2005 21

Unsolvable Mismatches

Business Partner1

Business Partner2

APM

?

Business Partner1

Business Partner2

APM

?B

A B

14.02.2005 22

Example –Trip Reservation Service –

concept station code ofType Stringstartpoint ofType booleanendpoint ofType boolean

mode hasValue in

concept route sourceLocation ofType station destinationLocation ofType station mode hasValue out

concept routeOnDateforRoute ofType routeonDate ofType dateonTime ofType timemode hasValue out

concept person name ofType String mode hasValue in

14.02.2005 23

Example –Trip Reservation Service –

concept date day ofType Integer month ofType String year ofType Integer mode hasValue in concept time

hour ofType Integerminutes ofType Integermode hasValue controlled

concept creditCard number ofType Integer owner ofType person expirationDate ofType date

mode hasValue in concept reservation

reservationNumber ofType IntegerreservedRoute ofType routeOnDatereservationHolder ofType personmode hasValue out

14.02.2005 24

Example –Trip Reservation Service –

route[

startLocation hasValue ?startLocation_, endLocation hasValue ?endLocation_] <-

?startLocation_ memberOf station and

?endLocation_ memberOf station.

14.02.2005 25

Example –Trip Reservation Service –

Trip ReservationService

station

station

route

14.02.2005 26

Example –Trip Reservation Service –

routeOnDate[

forRoute hasValue ?forRoute_,

onDate hasValue ?onDate_,

onTime hasValue ?onTime_] <-

?forRoute_ memberOf route and

?onDate_ memberOf date and

?onTime_ memberOf onTime.

14.02.2005 27

Example –Trip Reservation Service –

Trip ReservationService

route

date

routeOnDate

station

station

14.02.2005 28

Example –Trip Reservation Service –

reservation[

reservationNumber hasValue ?reservationNumber_, reservationRoute hasValue ?reservationRoute_, reservationHolder hasValue ?reservationHolder_] <-

?reservationRoute_ memberOf routeOnDate and

?creditCard_ memberOf creditCard and

?reservationHolder_ memberOf person.

14.02.2005 29

Example –Trip Reservation Service –

Trip ReservationService

route

date

routeOnDate

person

creditCard

reservation

station

station

14.02.2005 30

Example –Trip Reservation Request –

concept station code ofType Stringstartpoint ofType booleanendpoint ofType boolean

mode hasValue controlled

concept date day ofType Integer month ofType String year ofType Integer mode hasValue controlled

concept myRoutesourceLocation ofType station

destinationLocation ofType station onDate ofType date mode hasValue out concept person name ofType String mode hasValue out

14.02.2005 31

Example –Trip Reservation Request –

concept timehour ofType Integerminutes ofType Integermode hasValue in

concept creditCard

number ofType Integerowner ofType personexpirationDate ofType datemode hasValue out

concept confirmedCreditCardconfirmedNumber ofType IntegerconfirmedOwner ofType personconfirmedExpirationDate ofType datemode hasValue in

concept reservationreservationNumber ofType Integerroute ofType myRoutereservationHolder ofType personmode hasValue in

14.02.2005 32

Example –Trip Reservation Request –

myRoute[

sourceLocation hasValue ?sourceLocation_,

destinationLocation hasValue ?destinationLocation_,

onDate hasValue ?onDate_] <-

?sourceLocation memberOf station and

?endLocation memberOf station and

?onDate memberOf date.

14.02.2005 33

Example –Trip Reservation Request –

Trip Reservationrequest

myRoute

14.02.2005 34

Example –Trip Reservation Request –

time[

hour hasValue ?hour_,

minutes hasValue ?minutes_] <-

?hour_ memberOf Integer and

?minutes_ memberOf Integer.

14.02.2005 35

Example –Trip Reservation Request –

Trip Reservationrequest

myRoute

time

14.02.2005 36

Example –Trip Reservation Request –

creditCard[

number hasValue ?number_,

owner hasValue ?owner_,

expirationDate hasValue ?expirationDate_] <-

?time_ memberOf time and

?number_ memberOf Integer and

?owner_ memberOf person and

?expirationDate_ memberOf date.

14.02.2005 37

Example –Trip Reservation Request –

Trip Reservationrequest

myRoute

time

creditCard

14.02.2005 38

Example –Trip Reservation Request –

confirmedCreditCard[

confirmedNumber hasValue ?confirmedNumber_,

confirmedOwner hasValue ?confirmedOwner_,

confirmedExpirationDate hasValue ?confirmedExpirationDate_] <-

?creditCard_ memberOf creditCard and

?confirmedNumber_ memberOf Integer and

?confirmedOwner_ memberOf person and

?confirmedExpirationDate_ memberOf date.

14.02.2005 39

Example –Trip Reservation Request –

Trip Reservationrequest

myRoute

time

creditCard

confirmedCreditCard

14.02.2005 40

Example –Trip Reservation Request –

person[

name hasValue ?name_] <-

?name memberOf String and

?confirmedCreditCard_ memberOf confirmedCreditCard.

14.02.2005 41

Example –Trip Reservation Request –

Trip Reservationrequest

myRoute

time

creditCard

confirmedCreditCard

person

14.02.2005 42

Example –Trip Reservation Request –

reservation[

reservationNumber hasValue ?reservationNumber_,

route hasValue ?route_,

reservationHolder hasValue ?reservationHolder_] <-

?reservationNumber_ memberOf Integer and

?route_ memberOf myRoute and

?reservationHolder_ memberOf person.

14.02.2005 43

Example –Trip Reservation Request –

Trip Reservationrequest

myRoute

time

creditCard

confirmedCreditCard

person

reservation

14.02.2005 44

Example –Trip Reservation–

myRoute

time

creditCard

confirmedCreditCard

person

reservation

station

station

route

date

routeOnDate

person

creditCard

reservation

REQUEST

SERVICE

MEDIATOR

14.02.2005 45

Example –Trip Reservation–

myRoute[station, station, date]

time

creditCard

confirmedCreditCard

person

reservation[Integer, myRoute, person]

station

station

route[station, station]

date

routeOnDate[route, date, time]

person

creditCard

reservation[Integer, personrouteOnDate]

REQUEST

SERVICE

Processes Mediator

14.02.2005 46

Example –Trip Reservation–

myRoute[station, station, date]

time

creditCard

confirmedCreditCard

person

reservation[Integer, myRoute, person]

station

station

route[station, station]

date

routeOnDate[route, date, time]

person

creditCard

reservation[Integer, personrouteOnDate]

REQUEST

SERVICE

Processes Mediator

14.02.2005 47

Example –Trip Reservation–

myRoute[station, station, date]

time

creditCard

confirmedCreditCard

person

reservation[Integer, myRoute, person]

station

station

route[station, station]

date

routeOnDate[route, date, time]

person

creditCard

reservation[Integer, personrouteOnDate]

REQUEST

SERVICE

Processes Mediator

14.02.2005 48

Example –Trip Reservation–

myRoute[station, station, date]

time

creditCard

confirmedCreditCard

person

reservation[Integer, myRoute, person]

station

station

route[station, station]

date

routeOnDate[route, date, time]

person

creditCard

reservation[Integer, personrouteOnDate]

REQUEST

SERVICE

Processes Mediator

14.02.2005 49

Example –Trip Reservation–

myRoute[station, station, date]

time

creditCard

confirmedCreditCard

person

reservation[Integer, myRoute, person]

station

station

route[station, station]

date

routeOnDate[route, date, time]

person

creditCard

reservation[Integer, personrouteOnDate]

REQUEST

SERVICE

Processes Mediator

14.02.2005 50

Example –Trip Reservation–

myRoute[station, station, date]

time

creditCard

confirmedCreditCard

person

reservation[Integer, myRoute, person]

station

station

route[station, station]

date

routeOnDate[route, date, time]

person

creditCard

reservation[Integer, personrouteOnDate]

REQUEST

SERVICE

Processes Mediator

14.02.2005 51

Example –Trip Reservation–

myRoute[station, station, date]

time

creditCard

confirmedCreditCard

person

reservation[Integer, myRoute, person]

station

station

route[station, station]

date

routeOnDate[route, date, time]

person

creditCard

reservation[Integer, personrouteOnDate]

REQUEST

SERVICE

Processes Mediator

14.02.2005 52

Example –Trip Reservation–

myRoute[station, station, date]

time

creditCard

confirmedCreditCard

person

reservation[Integer, myRoute, person]

station

station

route[station, station]

date

routeOnDate[route, date, time]

person

creditCard

reservation[Integer, personrouteOnDate]

REQUEST

SERVICE

Processes Mediator

14.02.2005 53

Example –Trip Reservation–

myRoute[station, station, date]

time

creditCard

confirmedCreditCard

person

reservation[Integer, myRoute, person]

station

station

route[station, station]

date

routeOnDate[route, date, time]

person

creditCard

reservation[Integer, personrouteOnDate]

REQUEST

SERVICE

Processes Mediator

14.02.2005 54

Architecture

message MessageAnalyzer

Repository

WS Repository

DataMediator

MessageGenerator

Processes Mediator

RulesEvaluator

14.02.2005 55

Architecture

message MessageAnalyzer

Repository

WS Repository

DataMediator

MessageGenerator

Processes Mediator

RulesEvaluator

14.02.2005 56

Architecture

message MessageAnalyzer

Repository

WS Repository

DataMediator

MessageGenerator

message

Processes Mediator

RulesEvaluator

14.02.2005 57

Architecture

message MessageAnalyzer

Repository

WS Repository

DataMediator

MessageGenerator

message

Processes Mediator

RulesEvaluator

14.02.2005 58

Architecture

message MessageAnalyzer

Repository

WS Repository

DataMediator

RulesEvaluator

MessageGenerator

Processes Mediator

14.02.2005 59

Architecture

message MessageAnalyzer

Repository

WS Repository

DataMediator

RulesEvaluator

MessageGenerator

Processes Mediator

14.02.2005 60

Architecture

message MessageAnalyzer

Repository

WS Repository

DataMediator

MessageGenerator

Processes Mediator

RulesEvaluator

14.02.2005 61

Architecture

message MessageAnalyzer

Repository

WS Repository

DataMediator

MessageGenerator

Processes Mediator

RulesEvaluator

14.02.2005 62

Architecture

message MessageAnalyzer

Repository

WS Repository

DataMediator

MessageGenerator

Processes Mediator

RulesEvaluator

14.02.2005 63

Architecture

message MessageAnalyzer

Repository

WS Repository

DataMediator

MessageGenerator

message

Processes Mediator

RulesEvaluator

14.02.2005 64

Architecture

message MessageAnalyzer

Repository

WS Repository

DataMediator

MessageGenerator

message

Processes Mediator

RulesEvaluator

14.02.2005 65

Conclusions and further steps

• Conclusions– Processes mediation based on transition rules– Possible architecture for processes mediation in WSMX

• Further steps– Identification of more solvable/unsolvable mismatches– First prototype implementation

Recommended