transformation of edoc behavior models to a telecommunication service … · 2009-05-28 · service...

54
© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004 Transformation of EDOC Behavior Models to a Telecommunication Service Provisioning Platform Joachim Hößler & Dr. Olaf Kath Technical University Berlin Dr. Marc Born & Andrej Blazarenas Fraunhofer FOKUS Mario Winkler IKV++ Technologies AG

Upload: others

Post on 21-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Transformation of EDOC Behavior Models to a

Telecommunication Service Provisioning Platform

Joachim Hößler & Dr. Olaf Kath Technical University BerlinDr. Marc Born & Andrej BlazarenasFraunhofer FOKUSMario WinklerIKV++ Technologies AG

Page 2: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Why Service Creation for 3Gb Networks?

- service offerings differentiate network operators

- time from service idea to deployed service 0 + small ε

But: Networks are to complex for service creators

Page 3: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

The 3Gb Playground at FOKUS

ISDNGSM

Internetbackbone(IPv4/v6)

WLAN802.11bUMTS

Intranet (IPv4/v6)

GPRS RemoteGateways

(Test beds)

P-Server (OCS)

MGW

SIP (SER)

Parlay SCEs

P-GTW (CTI)

Remote P-AS (Apps)

Mobile Access Router

P-Server (jNETx)

P-AS (Apps)

TASParlay AS/GW Simulators:

Parlay API

Page 4: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Why Model Driven Service Creation?

Support for service development from service idea down to running solution

Page 5: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

As ManagementAs Managementrequested itrequested it

As the Project LeaderAs the Project Leaderdefined itdefined it

As SystemsAs Systemsdesigned itdesigned it

As ProgrammingAs Programmingdeveloped itdeveloped it

As OperationsAs Operationsinstalled itinstalled it

What the What the customer wantedcustomer wanted

Why Model Driven Service Creation?

Page 6: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Our vision:

service creation tools for 3Gb services running in an environment that consistentlyconnects the output of one with the input of another

Page 7: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

system developmentsystem development

system operationsystem operation

serviceidea and

requirements

serviceserviceideaidea and and

requirementsrequirements

technology-independent

service model

technologytechnology--independentindependent

serviceservice modelmodel

technologyspecific

service model

technologytechnologyspecificspecific

serviceservice modelmodel

system-components

systemsystem--componentscomponents

system integrationtests and running

system

system system integrationintegrationteststests and and runningrunning

systemsystem

technologyindependent

service model

technologytechnologyindependentindependent

serviceservice modelmodel

platform-independent Modeling tool

platform-independent Modeling tool

platform-specific

Modeling tool

platform-specific

Modeling tool

integrated-developmentenvironment

integrated-developmentenvironment

CORBA/Parlayfor integrationand operaton

CORBA/Parlayfor integrationand operaton

Cus tome r &Se rvic e -

Manag eme nt

Se rvic eImple me ntations

http-Se rve r

Authentic ation &Ses s ion-

Manag eme nt

Web

serv

er Exte rnal Cus to me rAdminis tratio n

Exte rnal Se curityInfras truc ture

External ServiceInfras truc ture

External ServiceSuppo rting Co mpo ne nts

Cus tome rInte rne t-PC

HotlineIntra ne t-PC

PlatformAdminis tration

Intra ne t-PC

S ervic eAdminis tration

Intranet-P C

Databas e

CORBA

IIOP

http

e nago OSP

RMI

artifactsartifacts in anin anMDA MDA inspiredinspired

softwaresoftwareengineering engineering

processprocess

automatedautomatedartifactartifact

transfertransferbetweenbetween toolstools

Page 8: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

projectproject runrun time time

Our Tools in an Example Process

platform-independent

modeling

platform-independent

modeling

platform-specificmodeling

platform-specificmodeling

integrated-developmentenvironment

integrated-developmentenvironment

Service platformfor integrationand operation

Service platformfor integrationand operation

Cus tome r &Servic e-

Manageme nt

Se rvic eImple mentations

http-Se rve r

Authenticatio n &Ses s ion-

Manageme nt

Web

serv

er External Cus to merAdminis tratio n

External SecurityInfras tructure

External ServiceInfras tructure

External ServiceSupporting Co mpo nents

Cus tomerInte rnet-PC

HotlineIntranet-PC

PlatformAdminis tration

Intranet-PC

ServiceAdminis tration

Intranet-P C

Databas e

CORBA

IIOP

http

enago OSP

RMI

Page 9: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

The approach to the vision:

The Big Picture

Page 10: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

integratedprogrammingenvironment

integratedprogrammingenvironment

platformspecific

modeling

platformspecific

modeling

platformindependent

modeling

platformindependent

modelingtool

sto

ols

repositoryfor platform

indep. models

repositoryfor platform

indep. models

repositoryfor platform

specific models

repositoryfor platform

specific models

repositorycode

fragments

repositorycode

fragments

mod

elin

gm

odel

ing

infra

stru

ctur

ein

frast

ruct

ure

transformerPIM to PSMtransformerPIM to PSM

trans

form

atio

nstra

nsfo

rmat

ions

transformerPSM

to code

transformerPSM

to code

Page 11: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

eclipseJava IDEeclipse

Java IDEenago/Parlay

modeling-tool

enago/Parlaymodeling-

tool

UML/EDOCmodeling

tool

UML/EDOCmodeling

tooltool

sto

ols

repository for UML/EDOC-

models

repository for UML/EDOC-

models

repositoryfor enago/Parlay

models

repositoryfor enago/Parlay

models

repositoryfor Java

fragments

repositoryfor Java

fragments

mod

elin

gm

odel

ing

infra

stru

ctur

ein

frast

ruct

ure

transformerUML/EDOC

to enago/Parlay

transformerUML/EDOC

to enago/Parlay

trans

form

atio

nstra

nsfo

rmat

ions

transformerUML/Parlay

to Java

transformerUML/Parlay

to Java

Page 12: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Current achievements:

- MOF and OCL based Meta-Tools

- modeling infrastructure for tool collaboration

- model transformers- platform independent modeling tool based on UML/EDOC

- platform specific modeling tool based on UML/Parlay

- eclipse (IBM IDE) integration

Page 13: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Current achievements:

- MOF and OCL based Meta-Tools

- modeling infrastructure for tool collaboration

- model transformers- platform independent modeling tool based on UML/EDOC

- platform specific modeling tool based on UML/Parlay

- eclipse (IBM IDE) integration

Page 14: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

test anddeployment

tool

test anddeployment

tool

IDEIDE

medini medini modelingmodeling infrastructureinfrastructure

requirementsrequirementsmodelsmodels

system system analysisanalysismodelsmodels

system system designdesignmodelsmodels platformplatform

realizationrealizationmodelsmodels

testtestmodelsmodels

deploymentdeploymentmodelsmodels

requirementsengineering

tool

requirementsengineering

tool

systemanalysis

tool

systemanalysis

tool

system designtool

system designtool

System Modeling and Development Tools

Page 15: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

clientclientclientclient

medini repository coremedini repository core

medini generatedrepository

medini generatedrepository

accesstechnology

CORBA

accesstechnology

CORBA

accesstechnology

XML

accesstechnology

XML

accesstechnology

WSDL/SOAP

accesstechnology

WSDL/SOAP

accesstechnologyJava RMI

accesstechnologyJava RMI

medini repositories

Page 16: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Current achievements:

- MOF and OCL based Meta-Tools

- modeling infrastructure for tool collaboration

- model transformers- platform independent modeling tool based on UML/EDOC

- platform specific modeling tool based on UML/Parlay

- eclipse (IBM IDE) integration

Page 17: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Platform Independent Modeling:Users Perspective

UML/EDOCModel

Repository

Rational Rosebased Tool for

UML/EDOC PIM Modeling

enago/ParlayModel

Repository

Rational Rosebased Tool forenago/Parlay

Modeling

modeltransformers

JavaProgrammingEnvironment

Page 18: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Platform Independent Modeling:EDOC Overview• Enterprise Distributed Object Computing is an OMG

modeling standard for enterprise distributed systems– Component based definition of business process

modules, definition of component collaborationusing choreographies

– definition of information models and their connection to business processes

– definition of messaging based interactions between business components

• EDOC is being realized as an extension to the Rational Rose modeling tool– Specific modeling wizards, dialogs, …

Page 19: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Platform Independent Modeling:Our EDOC Front-End for Rational Rose

Page 20: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

ProcessComponent

EDOC Choreography

ComponentUsage

Port

PortConnector

PortActivity

Transition

Connection

Protocol

uses

Page 21: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Current achievements:

- MOF and OCL based Meta-Tools

- modeling infrastructure for tool collaboration

- model transformers- platform independent modeling tool based on UML/EDOC

- platform specific modeling tool based on UML/Parlay

- eclipse (IBM IDE) integration

Page 22: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Platform Specific Modeling :PIM to PSM Transformation

UML/EDOCModel

Repository

Rational Rosebased Tool for

UML/EDOC PIM Modeling

enago/ParlayModel

Repository

Rational Rosebased Tool forenago/Parlay

Modeling

modeltransformers

JavaProgrammingEnvironment

Page 23: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Platform Specific Modeling:Users Perspective

UML/EDOCModel

Repository

Rational Rosebased Tool for

UML/EDOC PIM Modeling

Rational Rosebased Tool forenago/Parlay

Modeling

modeltransformers

JavaProgrammingEnvironment

enago/ParlayModel

Repository

Page 24: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Platform Specific Modeling:The enago Platform• enago (product of IKV++ Technologies AG) is a

CORBA based platform for rapid definition, realization, deployment and operation of distributed services– introduces the service concept, services can be

provided, used, sold, accounted on and so forth– Services are being realized by software

components• Modeling support for enago is being realized as an

extension to the Rational Rose modeling tool– again specific modeling wizards, dialogs, …

Page 25: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Platform Specific Modeling:Our enago Front-End for Rational Rose

Page 26: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Behavior modeling (1)

• enago structural modeling comprises:– Services– Components– CORBA interfaces …

• Platform independent modeling supportschoreographies – Model the behavior of the structural concepts– Describe the interactions between the model elements

Page 27: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Behavior modeling (2)

• enago behavior modeling– The behavior descriptions are derived from the

choreographies of the PIM– Refinement and extension of the resulting model with

enago specific aspects– Description of the interaction between services and

enago components– Interaction via CORBA interfaces and the offered

operations

Page 28: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Behavior Context (1)

• Behavior is modeled using state machines• A Behavior is always defined in a specific

context (BehaviorContext)

BehaviourBehaviourContext

0..11

+the_behaviour

0..1

+the_context

1

OwnedBehaviour

StateMachinename : CorbaString

Page 29: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Behavior Context (2)

• Behavior contexts in enago:– Services– enago components– Service user interfaces

• More detailed modelling– Supported interfaces– Required interfaces

Page 30: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Behavior Context (3)

BehaviourContext

SupportedDef

isServiceInterface : Boolean(f rom EnagoIDL)

AbstractComponentDef(from EnagoIDL)

RequiredDef

is_multiple : BooleanisServiceInterface : Boolean

(f rom EnagoIDL)

EnagoComponentDef(f rom EnagoIDL)

ServiceDef

isSuspendable : BooleanisMultiparty : BooleanisAccountable : Boolean

(f rom EnagoIDL)

ServiceUserInterfaceDef(f rom EnagoIDL)

Page 31: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

• Behavior description by means of states and transitions

• State:– Condition during the lifetime of an object– Perform actions– Wait for an event– Outgoing transitions– Incoming transitions

States and Transitions

State

Trans itionVertex

name : CorbaString

1 0..n

+target

1 +incoming0..n

IncomingTransitions

0..n1

+outgoing+source

1OutgoingTransi tions

StateMachinename : CorbaString

0..n

1

+vertices0..n

+the_machine1

OwnedVertices

Page 32: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

• Represents a change from an originating state to a successor state

• Two different kinds of transitions:– Automatic transition:

• Occurs when the activities of the originating state completes

– Non-automatic transition:• Occurs when a named event is received by the system• Named events are especially operations of the CORBA

interfaces

Transition

Page 33: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

• Non-automatic transitions will be modeled by triggers

• A trigger is always associated with a transitionCall trigger:

– Event of an operation call

Trigger

Transition

+the_transition

TransitionTrigger

Trigger

0..1

1

+the_trigger

0..n

0..1

CallTrigger

OperationDef

isOneway : Booleanparam eters : MDE::BaseIDL::ParameterDefcontexts : CorbaString

(f rom BaseIDL)

0..n1

+the_operation OperationCall +the_call

0..n1

Page 34: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

• If a state is entered a number of actions can be performed

• Actions are ordered• Actions result in operation calls• Three kinds of actions:

– Entry actions– Do actions– Exit actions

Actions

State

10..n

+the_state+the_actions

StateActions0..n 1

Actionkind : MDE::EnagoBehaviour::ActionKind

+the_action

+the_operation 1

Operation

1

0..n0..n

OperationDef

isOneway : Booleanparameters : MDE::BaseIDL::ParameterDefcontexts : CorbaString

(f rom BaseIDL)

Page 35: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Pseudostates

• One initial pseudo state• One or more terminate pseudo states

– Execution of the state machine terminates– Success or failure result

Vertexname : CorbaString

PseudoState

TerminatePseudoStateIni tialPseudoState

Page 36: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Decision

• A decision is a special state– Contains no actions– Contains a decision condition– Depending on the decision condition, one of the

outgoing transitions is used

Vertexname : CorbaString

PseudoState

Decision

Page 37: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

The meta model

PseudoState

Ini tialPseudoState TerminatePseudoState

ActionKindENTRY_ACTIONDO_ACTIONEXIT_ACTION

<<enumeration>>

StateAction

kind : MDE::EnagoBehaviour::ActionKind10..n

+the_state

1

+the_actions

0..n StateActions

CallTrigger

OperationDef

isOneway : Booleanparameters : MDE::BaseIDL::ParameterDefcontexts : CorbaString

(f rom BaseIDL)

1

0..n

+the_operation 1

+the_action 0..n

Operation

0..n1

+the_call

0..n

+the_operation

1

OperationCall

Decision

Trigger

Transition

0..1

1

+the_trigger 0..1

+the_transition1

TransitionTrigger

Vertexname : CorbaString

1 0..n

+target

1 +incoming0..n

IncomingTransitions

0..n1

+outgoing

0..n+source

1OutgoingTransitions

StateMachinename : CorbaString

0..n

1

+vertices0..n

+the_machine1

OwnedVertices

Page 38: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Platform Specific Modeling:enago and Parlay • Parlay services are visible as a library of models

– Containing structure and behavior of the Parlay API and its implementation in the Parlay platform of FhIFOKUS

• A transformer from EDOC to enago + Parlay – is parameterized by the modeler, and maps

interactions between EDOC components to Parlay services usages

– both structure and behavior of EDOC models are mapped to such enago/Parlay models

Page 39: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Current achievements:

- MOF and OCL based Meta-Tools

- modeling infrastructure for tool collaboration

- model transformers- platform independent modeling tool based on UML/EDOC

- platform specific modeling tool based on UML/Parlay

- eclipse (IBM IDE) integration

Page 40: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

eclipse Integration:Users View

enago/ParlayModel

Repository

Rational Rosebased Tool forenago/Parlay

Modeling

modeltransformers

JavaProgrammingEnvironment

UML/EDOCModel

Repository

Rational Rosebased Tool for

UML/EDOC PIM Modeling

Page 41: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

eclipse Integration:Purpose and Achievements• Purpose: automatic generation of Java

programming language code out of enago/Parlay models– The modeler refines the enago/Parlay model of

collaborating services– The services are being realized by software

components– These components are implemented in the Java

language• eclipse (IBM’s open source development platform)

provides a Java integrated development environment

• We use eclipse as target for code generation

Page 42: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Results enable

• platform independent definition of business processes– with well defined semantics, based on EDOC– supported by graphical modeling tools

• platform specific definition of enago/Parlay services– with well defined semantics– Supported by graphical modeling tools and programming

environments• transformations between platform independent and platform

specific models as well as code generation– with well defined semantics, based on formal definition of

model transformation rules• a modeling infrastructure, supporting

– consistency and traceability of models– the integration of different modeling languages and

techniques into one environment

Page 43: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Example

Page 44: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

The Buyer-Seller-Example

BuyerComponent

Buy

(from BuyerComponent)

<<initiates>>

SellerComponent

Sell

(from SellerComponent)

<<responds>>Sales

(from SalesProtocols)

Page 45: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

The Buyer-Seller-Example

QuoteBT

(from Sales)

OrderBT

(from Sales)

Sales

<<res ponds >>

<<res ponds >>

PaymentN oticeB T

(f rom Sa les)

<<res pond s >>

Quote

(from Qu oteBT )

QuoteBT

<<initiates >>

QuoteReques t

(from Qu oteBT )

<<res ponds >>

Order

(from OrderBT )

OrderConfirm ation

(from OrderBT )

OrderBT

<<res pond s >>

<<initiates>>

OrderDenied

(from OrderB T )

<<initiates >>

Paym entNoticeBT

Paym entNotice

(from Paym entNoticeBT )

<<res ponds >>

Page 46: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

The Buyer-Seller-ExampleThe Mapping Result

S ell_CB

(fro m S e l l e rCo m p o n e n tS e rvi ce )

B uy erCom ponentS ervic e

(f ro m S a l e sCom p o n en t s)

S ell

(fro m S e l l e rCo m p o n e n tS e rvi ce )

i_S ales

ini t iat es _Q uoteB T()ini ti ates _ Pa ym en tNot ic eB T()

init iates _O rderB T()

(fro m S a l e sP ro to co l s)

B uy

(fro m B u ye rCo m p o n e n tS e rvi ce )

B uy _CB

(fro m B u ye rCo m p o n e n tS e rvi ce )

S ellerCom ponentS ervic e(fro m S a l e sCo m p o n e n ts)

i_c b_S ales

< < oneway > > O rderConfirm ation()< < oneway > > O rderDenied()

(fro m S a l e sP ro to co l s)

Page 47: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

The Buyer-Seller-ExampleThe Mapping Result

QuoteCalculatorService OrdersManagerService Ac counts ReceivableService

i_QuoteBT

<<oneway>> QuoteRequest()

(from SalesProtocols)

Quote

(from QuoteCalculatorService)

i_OrderBT

<<oneway>> Order()

(from SalesProtocols)

Order

(from Ord ersManagerService)

i_PaymentNoticeBT

<<oneway>> PaymentNotice()

(from SalesProtocols)

Payment

(from AccountsReceivableService)

Page 48: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

BehaviourChoreographies

success<<PseudoStateDef>>

<<PseudoStateDef>>

QuoteBT<<PortActivityDef>>

<<TransitionDef>>

OrderBT<<PortActivityDef>>

<<TransitionDef>>

PaymentNoticeBT<<PortActivityDef>>

<<TransitionDef>>

<<TransitionDef>>

Sales

(f rom Sal esProtoc ols)

<<TransitionDef>>

<<PseudoStateDef>>

Sell<<PortActivityDef>>

<<TransitionDef>>

success<<PseudoStateDef>>

SellerComponent

<<PseudoStateDef>>

Buy<<PortActivityDef>>

<<TransitionDef>>

success<<PseudoStateDef>>

<<TransitionDef>>

BuyerComponent

Page 49: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

BehaviourChoreographies

success

OrderDenied<<PortAct ivit yDef>>

OrderConfi rm ation<<PortActivityDef>>

<<TransitionDef>>

Order<<PortActivityDef>>

failure

<<TransitionDef>>

decision<<PseudoStateDef>>

<<Transit ionDef>>

<<PseudoStateDef>>

<<TransitionDef>>

<<TransitionDef>> <<Trans it ionDef>>

success

QuoteRequest<<PortActivityDef>>

Quote<<PortActivityDef>>

<<TransitionDef>>

<<TransitionDef>>

<<PseudoStateDef>>

<<TransitionDef>>

QuoteBT OrderBT

Page 50: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

Behaviourenago OSP State Machines

BuyerComponentService

(f ro m Sal esCompone nts)

S0

S1

initiates_QuoteBT

S2

initiates_OrderBT

success

SellerComponentService(from SalesComponents)

S0

<<decision>>

Order

S1

entry/ OrderConfirmation

S2

entry/ OrderDeniedOrderDenied

S0

entry/ initiates_QuoteBTdo/ QuoteRequest

S1

entry/ init _OrderBTdo/ Order

Quote

success

OrderConfirmation

failure

OrdersManagerService

Page 51: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

BehaviourJava Code

public class BuyerComponentServiceSSM extends SinglePartySSM {

// this operation will be called when this SSM is started

public void initialAction {

// here the implementor has to assign a valid referencefor sales_interface

i_QuoteBT result1 = m_BuyReq.initiates_QuoteBT();

result1.QuoteRequest();

}

Page 52: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

BehaviourJava Code

public class i_cb_SalesImpl implements … {

public void Quote () {

stateTable.put(„i_cb_SalesImpl_ Quote“, Boolean.TRUE);

i_OrderBT result1 = m_BuyReq.initiates_OrderBT();

result1.Order();

}

}

}

Page 53: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004

BehaviourJava Code

public class i_cb_SalesImpl implements … {

public void OrderConfirmation() {

if (stateTable.get(„i_cb_SalesImpl_ Quote“) == null) throw new RuntimeException(„incorrect state“);

stateTable.put(„i_cb_SalesImpl_ OrderConfirmation“, Boolean.TRUE);

}

public void OrderDenied() {

if (stateTable.get(„i_cb_SalesImpl_ Quote“) == null) throw new RuntimeException(„incorrect state“);

stateTable.put(„i_cb_SalesImpl_ OrderDenied“, Boolean.TRUE);

}

}

}

Page 54: Transformation of EDOC Behavior Models to a Telecommunication Service … · 2009-05-28 · Service platform for integration and operation Customer & Service-Management Service Implementations

© TU Berlin, Fraunhofer FOKUS, and IKV++ Technologies AG, 2004