45
A Case Study on Behavioural Modelling of Service-Oriented Architectures Marek Rychlý Department of Information Systems Faculty of Information Technology Brno University of Technology (Czech Republic) 4 nd IFIP TC2 Central and East European Conference on Software Engineering Techniques, October 12–14, 2009 Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 1 / 16

A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

A Case Study on Behavioural Modelling ofService-Oriented Architectures

Marek Rychlý

Department of Information SystemsFaculty of Information Technology

Brno University of Technology(Czech Republic)

4nd IFIP TC2 Central and East European Conferenceon Software Engineering Techniques,

October 12–14, 2009

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 1 / 16

Page 2: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

Outline

1 IntroductionService-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

2 Behavioural Modeling of ServicesA Calculus of Mobile Processes (π-Calculus)Case Study: Behaviour of ServicesCase Study: Behaviour of Components

3 Current Results and Future Work

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 2 / 16

Page 3: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Service-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

Obsah

1 IntroductionService-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

2 Behavioural Modeling of ServicesA Calculus of Mobile Processes (π-Calculus)Case Study: Behaviour of ServicesCase Study: Behaviour of Components

3 Current Results and Future Work

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 3 / 16

Page 4: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Service-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

Service-Oriented Architecture (SOA)

Definition (Service-Oriented Architecture)

SOA represents a model in which functionality is decomposed intosmall, distinct units (services), which can be distributed over anetwork and can be combined together and reused to createbusiness applications.

[Thomas Erl, SOA: Concepts, Technology, and Design, 2005]

SOA can be described at three levels of abstraction:1 business processes

2 services

3 components

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 4 / 16

Page 5: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Service-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

Service-Oriented Architecture (SOA)

Definition (Service-Oriented Architecture)

SOA represents a model in which functionality is decomposed intosmall, distinct units (services), which can be distributed over anetwork and can be combined together and reused to createbusiness applications.

[Thomas Erl, SOA: Concepts, Technology, and Design, 2005]

SOA can be described at three levels of abstraction:1 business processes

(a system is a hierarchically composed business process, represents sequenceof steps in accordance with some business rules leading to a business aim)

2 services

3 components

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 4 / 16

Page 6: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Service-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

Service-Oriented Architecture (SOA)

Definition (Service-Oriented Architecture)

SOA represents a model in which functionality is decomposed intosmall, distinct units (services), which can be distributed over anetwork and can be combined together and reused to createbusiness applications.

[Thomas Erl, SOA: Concepts, Technology, and Design, 2005]

SOA can be described at three levels of abstraction:1 business processes

2 services(an implementation of a business processes and their parts with well-definedinterfaces and interoperability for the benefit of the business)

3 components

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 4 / 16

Page 7: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Service-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

Service-Oriented Architecture (SOA)

Definition (Service-Oriented Architecture)

SOA represents a model in which functionality is decomposed intosmall, distinct units (services), which can be distributed over anetwork and can be combined together and reused to createbusiness applications.

[Thomas Erl, SOA: Concepts, Technology, and Design, 2005]

SOA can be described at three levels of abstraction:1 business processes

2 services

3 components(an implementation of a service as component-based systems with well-definedstructure and description of its evolution for the benefit of the implementation)

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 4 / 16

Page 8: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Service-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

Component-Based Development (CBD)

Definition (Software Component)

A software component is a unit of composition with contractuallyspecified interfaces and explicit context dependencies only. It canbe deployed independently and is subject to composition by thirdparties.

[Clemens Szyperski, Component Software: . . . , 2002]

1 Primitive components2 Composite components

The (dynamic) architecture of component-based system can evolve:

functional interfaces can be (re)bound via control interfaces,

mobile components can be moved into different contexts,

(composite) components can change their functionality.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 5 / 16

Page 9: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Service-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

Component-Based Development (CBD)

Definition (Software Component)

A software component is a unit of composition with contractuallyspecified interfaces and explicit context dependencies only. It canbe deployed independently and is subject to composition by thirdparties.

[Clemens Szyperski, Component Software: . . . , 2002]

1 Primitive components(realised directly, beyond the scope of architecture description)

2 Composite components

The (dynamic) architecture of component-based system can evolve:

functional interfaces can be (re)bound via control interfaces,

mobile components can be moved into different contexts,

(composite) components can change their functionality.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 5 / 16

Page 10: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Service-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

Component-Based Development (CBD)

Definition (Software Component)

A software component is a unit of composition with contractuallyspecified interfaces and explicit context dependencies only. It canbe deployed independently and is subject to composition by thirdparties.

[Clemens Szyperski, Component Software: . . . , 2002]

1 Primitive components2 Composite components

(decomposable on systems of subcomponents at the lower level)

The (dynamic) architecture of component-based system can evolve:

functional interfaces can be (re)bound via control interfaces,

mobile components can be moved into different contexts,

(composite) components can change their functionality.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 5 / 16

Page 11: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Service-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

Component-Based Development (CBD)

Definition (Software Component)

A software component is a unit of composition with contractuallyspecified interfaces and explicit context dependencies only. It canbe deployed independently and is subject to composition by thirdparties.

[Clemens Szyperski, Component Software: . . . , 2002]

1 Primitive components2 Composite components

The (dynamic) architecture of component-based system can evolve:

functional interfaces can be (re)bound via control interfaces,

mobile components can be moved into different contexts,

(composite) components can change their functionality.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 5 / 16

Page 12: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Service-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

Component-Based Development (CBD)

Definition (Software Component)

A software component is a unit of composition with contractuallyspecified interfaces and explicit context dependencies only. It canbe deployed independently and is subject to composition by thirdparties.

[Clemens Szyperski, Component Software: . . . , 2002]

1 Primitive components2 Composite components

The (dynamic) architecture of component-based system can evolve:

functional interfaces can be (re)bound via control interfaces,

mobile components can be moved into different contexts,

(composite) components can change their functionality.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 5 / 16

Page 13: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Service-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

Component-Based Development (CBD)

Definition (Software Component)

A software component is a unit of composition with contractuallyspecified interfaces and explicit context dependencies only. It canbe deployed independently and is subject to composition by thirdparties.

[Clemens Szyperski, Component Software: . . . , 2002]

1 Primitive components2 Composite components

The (dynamic) architecture of component-based system can evolve:

functional interfaces can be (re)bound via control interfaces,

mobile components can be moved into different contexts,

(composite) components can change their functionality.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 5 / 16

Page 14: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Service-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

Component-Based Development (CBD)

Definition (Software Component)

A software component is a unit of composition with contractuallyspecified interfaces and explicit context dependencies only. It canbe deployed independently and is subject to composition by thirdparties.

[Clemens Szyperski, Component Software: . . . , 2002]

1 Primitive components2 Composite components

The (dynamic) architecture of component-based system can evolve:

functional interfaces can be (re)bound via control interfaces,

mobile components can be moved into different contexts,

(composite) components can change their functionality.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 5 / 16

Page 15: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Service-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

Case Study Specification

Testing environment

Tester

Set of external systemsimulators

System under testing(SUT)

test script

tester test log

external systems simulators

MMI

CBCS

external systems interface

control software

external systems

testing environment

SUT

Testing environment is described as a composition of a tester and a set ofexternal system simulators.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 6 / 16

Page 16: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Service-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

Case Study Specification

Testing environment

Tester

Set of external systemsimulators

System under testing(SUT)

test script

tester test log

external systems simulators

MMI

CBCS

external systems interface

control software

external systems

testing environment

SUT

Tester automatically executes specific test scripts and coordinates the SUTvia a man machine interface (MMI) and the external system simulators.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 6 / 16

Page 17: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Service-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

Case Study Specification

Testing environment

Tester

Set of external systemsimulators

System under testing(SUT)

test script

tester test log

external systems simulators

MMI

CBCS

external systems interface

control software

external systems

testing environment

SUT

Set of external system simulators interact with SUT and simulate a testedenvironment (e.g. a behaviour of field objects as points, track circuits,coloured signals, etc.).

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 6 / 16

Page 18: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Service-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

Case Study Specification

Testing environment

Tester

Set of external systemsimulators

System under testing(SUT)

test script

tester test log

external systems simulators

MMI

CBCS

external systems interface

control software

external systems

testing environment

SUT

Computer based control system (CBCS):

runs the control software,

interacts with operators via the man machine interface (MMI),

monitors and controls external systems of each rail yard via itsexternal systems interface.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 6 / 16

Page 19: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Service-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

Service-Oriented Architecture of Testing Environment

<<service>>TestLogger

<<service>>TestEnvironmentBroker

<<service>>TestEnvironment

<<service>>TestManager

AsyncReplyET

providerExecuteTest

consumer

PublishEnvironment

provider

FindEnvironment

consumer

LogResults

provider

ReadLog

provider

SubmitTest

: TestLogger : TestManager : TestEnvironmentBroker : TestEnvironment

Tester

6:

7: asyncReply()

10:

9: readLog()

8: logResults()

5: executeTest()

4:

3: searchForService()2: testSubmission()

1: publishService()

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 7 / 16

Page 20: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Service-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

Service-Oriented Architecture of Testing Environment

<<service>>TestLogger

<<service>>TestEnvironmentBroker

<<service>>TestEnvironment

<<service>>TestManager

AsyncReplyET

providerExecuteTest

consumer

PublishEnvironment

provider

FindEnvironment

consumer

LogResults

provider

ReadLog

provider

SubmitTest

: TestLogger : TestManager : TestEnvironmentBroker : TestEnvironment

Tester

6:

7: asyncReply()

10:

9: readLog()

8: logResults()

5: executeTest()

4:

3: searchForService()2: testSubmission()

1: publishService()

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 7 / 16

Page 21: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Service-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

TestEnv. Service as Component-Based System

<<component>>testEnvironment

<<component>>controller

<<component>>test

<<component>>environment

<<component>>output

executeWithID exec : Operation

startTestP : CtrlStart

detachTestP/R

: CtrlDetach

: CtrlDetach

stopTestP/R

: CtrlStop

: CtrlStop

provRefOResP/R

: CtrlRefProvInterface

: CtrlRefProvInterface

teAttachP/R

: CtrlAttach

: CtrlAttach

done : Operation

cDone oDone

teReply

oReply

rep : Operation

res : Operation

oResult

bindTResP : CtrlBindReqInterface

: CtrlRefProvInterface

teExecTestP/R

tResult

bindTIntP

tInteract

provRefEIntP/R

eInteract

: CtrlRefProvInterface

int : Operation res : Operation

: CtrlBindReqInterface

int : Operation

done : Operation : RefToComponent

rep : Operation : RefToComponent

asyncReplyETexecuteTest

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 8 / 16

Page 22: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Service-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

TestEnv. Service as Component-Based System

<<component>>testEnvironment

<<component>>controller

<<component>>test

<<component>>environment

<<component>>output

executeWithID exec : Operation

startTestP : CtrlStart

detachTestP/R

: CtrlDetach

: CtrlDetach

stopTestP/R

: CtrlStop

: CtrlStop

provRefOResP/R

: CtrlRefProvInterface

: CtrlRefProvInterface

teAttachP/R

: CtrlAttach

: CtrlAttach

done : Operation

cDone oDone

teReply

oReply

rep : Operation

res : Operation

oResult

bindTResP : CtrlBindReqInterface

: CtrlRefProvInterface

teExecTestP/R

tResult

bindTIntP

tInteract

provRefEIntP/R

eInteract

: CtrlRefProvInterface

int : Operation res : Operation

: CtrlBindReqInterface

int : Operation

done : Operation : RefToComponent

rep : Operation : RefToComponent

asyncReplyETexecuteTest

Component “testEnvironment” is able to receive component “test” (a test script) and toattach it as its sub-component via component “controller”.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 8 / 16

Page 23: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

A Calculus of Mobile Processes (π-Calculus)Case Study: Behaviour of ServicesCase Study: Behaviour of Components

Obsah

1 IntroductionService-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

2 Behavioural Modeling of ServicesA Calculus of Mobile Processes (π-Calculus)Case Study: Behaviour of ServicesCase Study: Behaviour of Components

3 Current Results and Future Work

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 9 / 16

Page 24: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

A Calculus of Mobile Processes (π-Calculus)Case Study: Behaviour of ServicesCase Study: Behaviour of Components

A Calculus of Mobile Processes (π-Calculus)

Algebraic approach to description of a system of concurrent andmobile processes.Two concepts: agents (communicating processes) and names(communication channels, data, etc.).

a〈b〉.P output prefixa(c).P input prefix

τ.P unobservableprefix

(c)P restriction ofscope

P + Q sum of capabilities ofprocesses

P | Q composition ofprocesses

!P an infinite compositionof the process

P ::= M | P | P | (c)P | !PM ::= 0 | π.P | M + Mπ ::= a〈b〉 | a(c) | τ

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 10 / 16

Page 25: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

A Calculus of Mobile Processes (π-Calculus)Case Study: Behaviour of ServicesCase Study: Behaviour of Components

A Calculus of Mobile Processes (π-Calculus)

Algebraic approach to description of a system of concurrent andmobile processes.Two concepts: agents (communicating processes) and names(communication channels, data, etc.).

a〈b〉.P output prefixa(c).P input prefix

τ.P unobservableprefix

(c)P restriction ofscope

P + Q sum of capabilities ofprocesses

P | Q composition ofprocesses

!P an infinite compositionof the process

P ::= M | P | P | (c)P | !PM ::= 0 | π.P | M + Mπ ::= a〈b〉 | a(c) | τ

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 10 / 16

Page 26: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

A Calculus of Mobile Processes (π-Calculus)Case Study: Behaviour of ServicesCase Study: Behaviour of Components

A Calculus of Mobile Processes (π-Calculus)

Algebraic approach to description of a system of concurrent andmobile processes.Two concepts: agents (communicating processes) and names(communication channels, data, etc.).

a〈b〉.P output prefixa(c).P input prefix

τ.P unobservableprefix

(c)P restriction ofscope

P + Q sum of capabilities ofprocesses

P | Q composition ofprocesses

!P an infinite compositionof the process

P ::= M | P | P | (c)P | !PM ::= 0 | π.P | M + Mπ ::= a〈b〉 | a(c) | τ

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 10 / 16

Page 27: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

A Calculus of Mobile Processes (π-Calculus)Case Study: Behaviour of ServicesCase Study: Behaviour of Components

Reduction, Abstraction and ApplicationCommunication defined as a reduction relation → , the leastrelation closed under a set of the reduction rules.

R-INTER (a〈b〉.P1 + M1) | (a(c).P2 + M2) → P1 | P2{b/c}R-TAU τ.P + M → P

R-PARP1 → P′

1P1 | P2 → P′

1 | P2R-RES P → P′

(c)P → (c)P′

R-STRUCTP1=P2 → P′

2=P′1

P1 → P′1

R-CONSTKbbc → P{b/a} K ∆

= (a).P

An abstraction of arity n ≥ 0 is an expression of the form(a1, . . . ,an).P, where the ai are distinct.

A pseudo-application of an abstraction F def= (a).P is an

expression of the form F 〈b〉, a process P{

b/a}

.

A constant application of a process constant K ∆= (a).P, is an

expression of the form K bbc, reducible according rule R-CONST.It allows recursive definitions.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 11 / 16

Page 28: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

A Calculus of Mobile Processes (π-Calculus)Case Study: Behaviour of ServicesCase Study: Behaviour of Components

Reduction, Abstraction and ApplicationCommunication defined as a reduction relation → , the leastrelation closed under a set of the reduction rules.

R-INTER (a〈b〉.P1 + M1) | (a(c).P2 + M2) → P1 | P2{b/c}R-TAU τ.P + M → P

R-PARP1 → P′

1P1 | P2 → P′

1 | P2R-RES P → P′

(c)P → (c)P′

R-STRUCTP1=P2 → P′

2=P′1

P1 → P′1

R-CONSTKbbc → P{b/a} K ∆

= (a).P

An abstraction of arity n ≥ 0 is an expression of the form(a1, . . . ,an).P, where the ai are distinct.

A pseudo-application of an abstraction F def= (a).P is an

expression of the form F 〈b〉, a process P{

b/a}

.

A constant application of a process constant K ∆= (a).P, is an

expression of the form K bbc, reducible according rule R-CONST.It allows recursive definitions.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 11 / 16

Page 29: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

A Calculus of Mobile Processes (π-Calculus)Case Study: Behaviour of ServicesCase Study: Behaviour of Components

Reduction, Abstraction and ApplicationCommunication defined as a reduction relation → , the leastrelation closed under a set of the reduction rules.

R-INTER (a〈b〉.P1 + M1) | (a(c).P2 + M2) → P1 | P2{b/c}R-TAU τ.P + M → P

R-PARP1 → P′

1P1 | P2 → P′

1 | P2R-RES P → P′

(c)P → (c)P′

R-STRUCTP1=P2 → P′

2=P′1

P1 → P′1

R-CONSTKbbc → P{b/a} K ∆

= (a).P

An abstraction of arity n ≥ 0 is an expression of the form(a1, . . . ,an).P, where the ai are distinct.

A pseudo-application of an abstraction F def= (a).P is an

expression of the form F 〈b〉, a process P{

b/a}

.

A constant application of a process constant K ∆= (a).P, is an

expression of the form K bbc, reducible according rule R-CONST.It allows recursive definitions.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 11 / 16

Page 30: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

A Calculus of Mobile Processes (π-Calculus)Case Study: Behaviour of ServicesCase Study: Behaviour of Components

Reduction, Abstraction and ApplicationCommunication defined as a reduction relation → , the leastrelation closed under a set of the reduction rules.

R-INTER (a〈b〉.P1 + M1) | (a(c).P2 + M2) → P1 | P2{b/c}R-TAU τ.P + M → P

R-PARP1 → P′

1P1 | P2 → P′

1 | P2R-RES P → P′

(c)P → (c)P′

R-STRUCTP1=P2 → P′

2=P′1

P1 → P′1

R-CONSTKbbc → P{b/a} K ∆

= (a).P

An abstraction of arity n ≥ 0 is an expression of the form(a1, . . . ,an).P, where the ai are distinct.

A pseudo-application of an abstraction F def= (a).P is an

expression of the form F 〈b〉, a process P{

b/a}

.

A constant application of a process constant K ∆= (a).P, is an

expression of the form K bbc, reducible according rule R-CONST.It allows recursive definitions.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 11 / 16

Page 31: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

A Calculus of Mobile Processes (π-Calculus)Case Study: Behaviour of ServicesCase Study: Behaviour of Components

Behavioural Description of Services in SOA

Behaviour of the testing environment:

System def= (st , rl).(et , ar , lr , pe, fe)

(TM〈st , fe, lr〉 | TE〈et , ar , pe〉 | TL〈lr , rl〉 | TEB〈pe, fe〉)

Behaviour of “TestEnvironmentBroker” service:

TEB def= (pe, fe).(q)(TEBpubbq, pec | TEBfindbq, fe, pec)

TEBpub∆= (t , pe).pe(i, d).(t ′)(t〈t ′, i, d〉 | TEBpubbt ′, pec)

TEBfind∆= (h, fe, pe).h(h′, i, d).(TEBfindbh′, fe, pec | (fe〈i〉.pe〈i, d〉 + d))

Behaviour of “TestEnvironment” service:

TE def= (et , ar , pe).TEinit〈et , ar , pe〉.TEimpl〈et , ar〉

TEimpldef= (et , ar).(s0, s1, ar s, etg)

(ar s〈ar〉 | (d , t)(etg〈t〉.t(p).Wirebet , p, dc) | TEcomp〈s0, s1, etg , ar s〉)

TEinitdef= (et , ar , pe).pe〈et , ar〉

. . . see the conference proceedings. . .

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 12 / 16

Page 32: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

A Calculus of Mobile Processes (π-Calculus)Case Study: Behaviour of ServicesCase Study: Behaviour of Components

Behavioural Description of Services in SOA

Behaviour of the testing environment:

System def= (st , rl).(et , ar , lr , pe, fe)

(TM〈st , fe, lr〉 | TE〈et , ar , pe〉 | TL〈lr , rl〉 | TEB〈pe, fe〉)

Behaviour of “TestEnvironmentBroker” service:

TEB def= (pe, fe).(q)(TEBpubbq, pec | TEBfindbq, fe, pec)

TEBpub∆= (t , pe).pe(i, d).(t ′)(t〈t ′, i, d〉 | TEBpubbt ′, pec)

TEBfind∆= (h, fe, pe).h(h′, i, d).(TEBfindbh′, fe, pec | (fe〈i〉.pe〈i, d〉 + d))

Behaviour of “TestEnvironment” service:

TE def= (et , ar , pe).TEinit〈et , ar , pe〉.TEimpl〈et , ar〉

TEimpldef= (et , ar).(s0, s1, ar s, etg)

(ar s〈ar〉 | (d , t)(etg〈t〉.t(p).Wirebet , p, dc) | TEcomp〈s0, s1, etg , ar s〉)

TEinitdef= (et , ar , pe).pe〈et , ar〉

. . . see the conference proceedings. . .

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 12 / 16

Page 33: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

A Calculus of Mobile Processes (π-Calculus)Case Study: Behaviour of ServicesCase Study: Behaviour of Components

Behavioural Description of Services in SOA

Behaviour of the testing environment:

System def= (st , rl).(et , ar , lr , pe, fe)

(TM〈st , fe, lr〉 | TE〈et , ar , pe〉 | TL〈lr , rl〉 | TEB〈pe, fe〉)

Behaviour of “TestEnvironmentBroker” service:

TEB def= (pe, fe).(q)(TEBpubbq, pec | TEBfindbq, fe, pec)

TEBpub∆= (t , pe).pe(i, d).(t ′)(t〈t ′, i, d〉 | TEBpubbt ′, pec)

TEBfind∆= (h, fe, pe).h(h′, i, d).(TEBfindbh′, fe, pec | (fe〈i〉.pe〈i, d〉 + d))

Behaviour of “TestEnvironment” service:

TE def= (et , ar , pe).TEinit〈et , ar , pe〉.TEimpl〈et , ar〉

TEimpldef= (et , ar).(s0, s1, ar s, etg)

(ar s〈ar〉 | (d , t)(etg〈t〉.t(p).Wirebet , p, dc) | TEcomp〈s0, s1, etg , ar s〉)

TEinitdef= (et , ar , pe).pe〈et , ar〉

. . . see the conference proceedings. . .

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 12 / 16

Page 34: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

A Calculus of Mobile Processes (π-Calculus)Case Study: Behaviour of ServicesCase Study: Behaviour of Components

Behavioural Description of Services in SOA

Behaviour of the testing environment:

System def= (st , rl).(et , ar , lr , pe, fe)

(TM〈st , fe, lr〉 | TE〈et , ar , pe〉 | TL〈lr , rl〉 | TEB〈pe, fe〉)

Behaviour of “TestEnvironmentBroker” service:

TEB def= (pe, fe).(q)(TEBpubbq, pec | TEBfindbq, fe, pec)

TEBpub∆= (t , pe).pe(i, d).(t ′)(t〈t ′, i, d〉 | TEBpubbt ′, pec)

TEBfind∆= (h, fe, pe).h(h′, i, d).(TEBfindbh′, fe, pec | (fe〈i〉.pe〈i, d〉 + d))

Behaviour of “TestEnvironment” service:

TE def= (et , ar , pe).TEinit〈et , ar , pe〉.TEimpl〈et , ar〉

TEimpldef= (et , ar).(s0, s1, ar s, etg)

(ar s〈ar〉 | (d , t)(etg〈t〉.t(p).Wirebet , p, dc) | TEcomp〈s0, s1, etg , ar s〉)

TEinitdef= (et , ar , pe).pe〈et , ar〉

. . . see the conference proceedings. . .

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 12 / 16

Page 35: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

A Calculus of Mobile Processes (π-Calculus)Case Study: Behaviour of ServicesCase Study: Behaviour of Components

Behavioural Description of Components

Interface references and binding, import and export, control of thecomponent’s life-cycle, in component “testEnvironment”:

TEcompdef= (s0, s1, p

gexecuteTest , p

sasyncRepltET ).(pexecuteTest , rteExecTest ,

psteExecTest , rasyncRepltET , pteReply , p

gteReply , pteAttach)

(CtrlIfs〈pexecuteTest , pgexecuteTest〉 | CtrlIfs〈rteExecTest , ps

teExecTest〉| CtrlIfs〈rasyncRepltET , ps

asyncRepltET 〉 | CtrlIfs〈pteReply , pgteReply 〉

| CtrlEI〈pexecuteTest , rteExecTest〉 | CtrlEI〈pteReply , rasyncRepltET 〉| CtrlSS〈s0, s1, pteAttach〉 | TE ′

comp〈pteAttach, psteExecTest , p

gteReply 〉)

Core behaviour of composite component “testEnvironment”:

TE ′comp

def= (pteAttach, ps

teExecTest , pgteReply ). . . .

(Ctr〈sctr0 , sctr

1 , pgcDone, p

gteExecTest , rteAttach, rdetachTest , rstopTest ,

rprovRefEInt , rprovRefORes〉 | Env〈senv0 , senv

1 , pgeInteract〉

| Out〈sout0 , sout

1 , pgoResult , p

soDone, p

soReply 〉 | . . .)

. . . see the conference proceedings. . .Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 13 / 16

Page 36: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

A Calculus of Mobile Processes (π-Calculus)Case Study: Behaviour of ServicesCase Study: Behaviour of Components

Behavioural Description of Components

Interface references and binding, import and export, control of thecomponent’s life-cycle, in component “testEnvironment”:

TEcompdef= (s0, s1, p

gexecuteTest , p

sasyncRepltET ).(pexecuteTest , rteExecTest ,

psteExecTest , rasyncRepltET , pteReply , p

gteReply , pteAttach)

(CtrlIfs〈pexecuteTest , pgexecuteTest〉 | CtrlIfs〈rteExecTest , ps

teExecTest〉| CtrlIfs〈rasyncRepltET , ps

asyncRepltET 〉 | CtrlIfs〈pteReply , pgteReply 〉

| CtrlEI〈pexecuteTest , rteExecTest〉 | CtrlEI〈pteReply , rasyncRepltET 〉| CtrlSS〈s0, s1, pteAttach〉 | TE ′

comp〈pteAttach, psteExecTest , p

gteReply 〉)

Core behaviour of composite component “testEnvironment”:

TE ′comp

def= (pteAttach, ps

teExecTest , pgteReply ). . . .

(Ctr〈sctr0 , sctr

1 , pgcDone, p

gteExecTest , rteAttach, rdetachTest , rstopTest ,

rprovRefEInt , rprovRefORes〉 | Env〈senv0 , senv

1 , pgeInteract〉

| Out〈sout0 , sout

1 , pgoResult , p

soDone, p

soReply 〉 | . . .)

. . . see the conference proceedings. . .Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 13 / 16

Page 37: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

A Calculus of Mobile Processes (π-Calculus)Case Study: Behaviour of ServicesCase Study: Behaviour of Components

Behavioural Description of Components

Interface references and binding, import and export, control of thecomponent’s life-cycle, in component “testEnvironment”:

TEcompdef= (s0, s1, p

gexecuteTest , p

sasyncRepltET ).(pexecuteTest , rteExecTest ,

psteExecTest , rasyncRepltET , pteReply , p

gteReply , pteAttach)

(CtrlIfs〈pexecuteTest , pgexecuteTest〉 | CtrlIfs〈rteExecTest , ps

teExecTest〉| CtrlIfs〈rasyncRepltET , ps

asyncRepltET 〉 | CtrlIfs〈pteReply , pgteReply 〉

| CtrlEI〈pexecuteTest , rteExecTest〉 | CtrlEI〈pteReply , rasyncRepltET 〉| CtrlSS〈s0, s1, pteAttach〉 | TE ′

comp〈pteAttach, psteExecTest , p

gteReply 〉)

Core behaviour of composite component “testEnvironment”:

TE ′comp

def= (pteAttach, ps

teExecTest , pgteReply ). . . .

(Ctr〈sctr0 , sctr

1 , pgcDone, p

gteExecTest , rteAttach, rdetachTest , rstopTest ,

rprovRefEInt , rprovRefORes〉 | Env〈senv0 , senv

1 , pgeInteract〉

| Out〈sout0 , sout

1 , pgoResult , p

soDone, p

soReply 〉 | . . .)

. . . see the conference proceedings. . .Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 13 / 16

Page 38: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Obsah

1 IntroductionService-Oriented Architecture (SOA)Component-Based Development (CBD)Case Study: Specification and Architecture

2 Behavioural Modeling of ServicesA Calculus of Mobile Processes (π-Calculus)Case Study: Behaviour of ServicesCase Study: Behaviour of Components

3 Current Results and Future Work

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 14 / 16

Page 39: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Current Results and Future Work

Current ResultsThe behaviour is described as a single π-calculus process abstraction.(e.g. process abstraction (st , rl).System)

It describes dynamic architecture with component mobility.(e.g. service “TestEnvironmentBroker”, component “test” in “testEnvironment”)

Evolution of the architecture can be invoked by functional requirements.(e.g. processing test scripts invoke changes in component “testEnvironment”)

Verification of properties of the behaviour and model-checking in SOA.(ensures compatibility of services, limits evolution of architecture, etc.)

Further work

Integration with modelling tools, based on metamodel.

Design-time verification and model-checking, service and componentmodelling with constraints.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 15 / 16

Page 40: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Current Results and Future Work

Current ResultsThe behaviour is described as a single π-calculus process abstraction.(e.g. process abstraction (st , rl).System)

It describes dynamic architecture with component mobility.(e.g. service “TestEnvironmentBroker”, component “test” in “testEnvironment”)

Evolution of the architecture can be invoked by functional requirements.(e.g. processing test scripts invoke changes in component “testEnvironment”)

Verification of properties of the behaviour and model-checking in SOA.(ensures compatibility of services, limits evolution of architecture, etc.)

Further work

Integration with modelling tools, based on metamodel.

Design-time verification and model-checking, service and componentmodelling with constraints.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 15 / 16

Page 41: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Current Results and Future Work

Current ResultsThe behaviour is described as a single π-calculus process abstraction.(e.g. process abstraction (st , rl).System)

It describes dynamic architecture with component mobility.(e.g. service “TestEnvironmentBroker”, component “test” in “testEnvironment”)

Evolution of the architecture can be invoked by functional requirements.(e.g. processing test scripts invoke changes in component “testEnvironment”)

Verification of properties of the behaviour and model-checking in SOA.(ensures compatibility of services, limits evolution of architecture, etc.)

Further work

Integration with modelling tools, based on metamodel.

Design-time verification and model-checking, service and componentmodelling with constraints.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 15 / 16

Page 42: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Current Results and Future Work

Current ResultsThe behaviour is described as a single π-calculus process abstraction.(e.g. process abstraction (st , rl).System)

It describes dynamic architecture with component mobility.(e.g. service “TestEnvironmentBroker”, component “test” in “testEnvironment”)

Evolution of the architecture can be invoked by functional requirements.(e.g. processing test scripts invoke changes in component “testEnvironment”)

Verification of properties of the behaviour and model-checking in SOA.(ensures compatibility of services, limits evolution of architecture, etc.)

Further work

Integration with modelling tools, based on metamodel.

Design-time verification and model-checking, service and componentmodelling with constraints.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 15 / 16

Page 43: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Current Results and Future Work

Current ResultsThe behaviour is described as a single π-calculus process abstraction.(e.g. process abstraction (st , rl).System)

It describes dynamic architecture with component mobility.(e.g. service “TestEnvironmentBroker”, component “test” in “testEnvironment”)

Evolution of the architecture can be invoked by functional requirements.(e.g. processing test scripts invoke changes in component “testEnvironment”)

Verification of properties of the behaviour and model-checking in SOA.(ensures compatibility of services, limits evolution of architecture, etc.)

Further work

Integration with modelling tools, based on metamodel.

Design-time verification and model-checking, service and componentmodelling with constraints.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 15 / 16

Page 44: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

IntroductionBehavioural Modeling of ServicesCurrent Results and Future Work

Current Results and Future Work

Current ResultsThe behaviour is described as a single π-calculus process abstraction.(e.g. process abstraction (st , rl).System)

It describes dynamic architecture with component mobility.(e.g. service “TestEnvironmentBroker”, component “test” in “testEnvironment”)

Evolution of the architecture can be invoked by functional requirements.(e.g. processing test scripts invoke changes in component “testEnvironment”)

Verification of properties of the behaviour and model-checking in SOA.(ensures compatibility of services, limits evolution of architecture, etc.)

Further work

Integration with modelling tools, based on metamodel.

Design-time verification and model-checking, service and componentmodelling with constraints.

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 15 / 16

Page 45: A Case Study on Behavioural Modelling of Service-Oriented ...rychly/public/docs/case-study-on... · Service-Oriented Architecture (SOA) Component-Based Development (CBD) Case Study:

Thanks

Thank you for your attention!

Marek Rychlý A Case Study on Behavioural Modelling of Service-Oriented Architectures (CEE-SET 2009) 16 / 16