+ All Categories
Home > Documents > © 2005-2006 The ATHENA Consortium. 6-3. From PIM4SOA to Web Services,

© 2005-2006 The ATHENA Consortium. 6-3. From PIM4SOA to Web Services,

Date post: 22-Dec-2015
Category:
Upload: estefania-hynes
View: 214 times
Download: 1 times
Share this document with a friend
Popular Tags:
17
© 2005-2006 The ATHENA Consortium. 6-3. From PIM4SOA to Web Services <Presenter> <Company>, <Country> <E-mail>
Transcript

© 2005-2006 The ATHENA Consortium.

6-3. From PIM4SOA to

Web Services

<Presenter>

<Company>, <Country>

<E-mail>

2© 2005-2006 The ATHENA Consortium.

PIM4SOAMetamodel

Web ServicesMetamodel

Agent Metamodel(AgentMM)

P2PMetamodel

GridMetamodel

PIM

PS

Ms

Symbols

Metamodel

Concept

Relationship

Correspondence

PIM4SOA → platform specific models

3© 2005-2006 The ATHENA Consortium.

PIM4SOA → platform specific models

PIM4SOAsourcemetamodel

Web servicestargetmetamodels

Mappingmodel

4© 2005-2006 The ATHENA Consortium.

Web services architecture metamodel

Registry<<Metamodel>>

+ UDDI.

Endpoint Description<<Metamodel>>

+ WS-MetadataExchange.+ WS-Policy.

+ WS-PolicyAttachement.

Service Interface Description

<<Metamodel>>

+ WSDL 1.1.+ WSDL 2.0.

Reliability<<Metamodel>>

+ WS-ReliableMessaging.

Coordination<<Metamodel>>

+ WS-Coordination.

Eventing<<Metamodel>>

+ WS-BaseNotification.+ WS-BrokeredNotification.

+ WS-Eventing.+ WS-Topics.

Resource Access and Management

<<Metamodel>>

+ WS-Enumeration.+ WS-Resource.

+ WS-ResourceLifetime.+ WS-ResourceProperty.

+ WS-Transfer.

Transport<<Metamodel>>

+ HTTP.

Messaging<<Metamodel>>

+ SOAP.+ WS-Addressing.

XML<<Metamodel>>

+ XML Core / XSD.+ XML Encryption.+ XML Signature.

+ XPATH.

Security<<Metamodel>>

+ WS-Security.

eContract<<Metamodel>>

+ ATHENA eContract Extensions.

Composition<<Metamodel>>

+ ACE-GIS Composition Extensions.+ WS-BPEL.+ WS-CDL.

5© 2005-2006 The ATHENA Consortium.

WSDL 1.1 metamodel

WSDL DocumentWSDL Component

0..10..1

Port

+ Name

Operation

+ Name

Part

+ Name

+ Type

+ Element

Service

+ Name

1..*1..*

Binding

+ Name

1

1

1

1

Port Type

+ Name

11 11

Message

+ Name

1..*

0..1

1..*

+input

0..10..1

+output

0..10..1+fault 0..1

0..*0..*

Import

+ NameSpace

+ Location

Include

+ Location

Element

+ Name

+ BaseType

+ MinOccurs

+ MaxOccurs

Definition

+ Name

+ TargetNameSpace0..*0..*

0..*0..*0..*0..*

0..*0..*

0..*0..*

Schema

+ TargetNameSpaceTypes

0..10..1

A collection of related endpoints

A single endpoint defined as a combination of a binding and a network address

A concrete protocol and data format specification for a particular port type

An abstract set of operations supported by one or more endpoints

An abstract, typed definition of the data being communicated

An abstract, description of an action supported by the service

A container for data type definitions

6© 2005-2006 The ATHENA Consortium.

PIM4SOA model (.uml2)

WS-* model (.uml2)

UML profile for Web services

Web service artefacts

EMF EcoreMetamodels/Models

RSMUML Models and Profiles

XSD

WSDL

BPEL

XSD

WSDL

BPEL

M2M

M2M

UML profilefor PIM4SOA

PIM4SOA model (. ecore)

WS-* models (.ecore)

M2MM2T

M2M

1

2

3 4

X

Eclipse/RSM modelling environment

1. Build your PIM4SOA (.uml2) model in RSM using the UML profile for PIM4SOA and transform it to a PIM4SOA (.ecore) model in EMF.

2. Transform the PIM4SOA (.ecore) model to Web service (.ecore) models.

3. Transform the Web service (.ecore) models to Web service artefacts.

4. Model transformation for UML profiles for Web services

• Eclipse Modelling Framework (EMF)

• Rational Software Modeler (RSM)

7© 2005-2006 The ATHENA Consortium.

Transformation to XSD

• The XSD artefacts are generated from the Information part of the PIM4SOA model.

• The starting point for the transformation is a PIM4SOA document.

• The strategy is to convert one PIM4SOA Document into one XML schema.

• The mappings between the most relevant PIM4SOA elements and XSD are listed next.

8© 2005-2006 The ATHENA Consortium.

PIM4SOA main mappings to XSD

PIM4SOA

element

XSD equivalent Notes

Document Schema

Entity ComplexType

Association Element An association between entities is transformed into an

element in the containing type with a reference to the

complex type generated for the target Entity

Attribute Attribute Attributes having simple types are mapped to Attributes

in complex types. Attributes with complex types in the

PIM4SOA model are mapped in the same way as

Associations.

Element SimpleType If the ItemType from the PIM4SOA model is not an

entity (meaning it is a simple type) a SimpleType

definition is created in the schema.

9© 2005-2006 The ATHENA Consortium.

Transformation to WSDL

• The WSDL artefacts are generated from the Service part of the PIM4SOA model.

• While the mapping of the PIM4SOA to XSD was quite straight forward, the mapping to WSDL is a bit more complex.

• The WSDL generated has links to the XML schema, as the messages in the PIM4SOA model get their structural information from the Information part of the PIM4SOA models.

10© 2005-2006 The ATHENA Consortium.

PIM4SOA main mappings to WSDL

PIM4SOA

element

WSDL

equivalent

Notes

Package Definition The transformation takes a complete PIM4SOA model as

input and creates on WSDL artefact per model.

Message Message If the PIM4SOA Message has a type assigned to it, the

WSDL message is created with one Part corresponding to

hat type. If not one Part is created for each of the Items

contained by the PIM4SOA Message.

RoleBinding PortType A role binding within a CollaborationUse is a potential

PortType. It is transformed into a PortType if the role it is

bound to is part of a binary Collaboration without any

CollaborationUses (a leaf collaboration)

Collaboration Operation A binary Collaboration (only two roles) that does not contain

any CollaborationUses (leaf Collaboration) is transformed into

an operation. If only one of the Roles in the Collaboration

have Messages an asynchronous pattern is generated

meaning that two operations are created, each in different

PortTypes; one for the provider and one for the consumer.

11© 2005-2006 The ATHENA Consortium.

Transformation to BPEL

• Starting point for a BPEL transformation – PIM4SOA ServiceProvider participating in at least one

Collaboration and implementing a Behaviour as a PIM4SOA Process.

• The transformation from PIM4SOA to BPEL are closely tied to the generation of the WSDL interfaces

• The WSDL transformation allows – collaborations in which a ServiceProvider participates

to be converted to Services and Porttypes, and Partnerlink types to be referenced in the BPEL.

12© 2005-2006 The ATHENA Consortium.

PIM4SOA main mappings to BPEL

PIM4SOA element BPEL

equivalent

Notes

ServiceProviderProcess

Process

Task (i) (participating in collaboration)

Receive, Invoke, Reply The type of communication with other service providers must be

deduced from parameters passed to or from the task in question.

Task (ii) (no collaboration use)

Empty This might be a task requiring further implementation or human

interaction beyond the scope of the PIM4SOA.

Flow Sequence, Flow, (…) The structure of flows between Steps must be analysed to deduce the

applicable BPEL structure.

Interaction, Pin Assign Interactions have a role to play both in determining collaboration type

(see Task (ii) above), and passing particular parts of messages

between tasks (data flow, a BPEL assign).

Message Variable All messages sent and received must have appropriate variables

defined within the BPEL

CollaborationUseRoleBinding

PartnerLink The CollaborationUses defined for the ServiceProvider tell us what

PartnerLinks we will need. See CollaborationUsePath.

CollaborationUsePath PartnerLink, Role(…) This defines a specific use of a PartnerLink, alongside what role we

are playing, and even the PortType being used. See links to the

WSDL transformation described below.

13© 2005-2006 The ATHENA Consortium.

Model transformations overview

RTT ATL

EMF RSM

eProcModel(.emx)

BPEL Document(.bpel)

WID

UML Profile forPIM4SOA (.epx)

<<applied>>

EMF: Eclipse Modeling FrameworkRSM: Rational Software Modeler UML modelling toolPIM4SOA Plugin: RSM plugin – UML Profile for PIM4SOARTT: Rational Transformation ToolsMTF: Model Transformation Framework

PIM4SOAPlugin

MTF

eProcModel

(.ecore)

BPELMetamodel

(.ecore)

MOFScript

WSDLMetamodel

(.ecore)

PIM4SOA toWeb Service ModelTransformation (.atl)

WSDL UMLModel (.xmi)

WSDL UML toWSDL DocumentGeneration (.m2t)

WSDL Document(.wsdl)

EclipseWST

a)b)

c)

ATL: Atlas Transformation Language model to model transformation toolMOF Script: SINTEF model to text transformation toolEclipse WST: WSDL graphical editorWID: WebSphere Integration Developer

PIM4SOAMetamodel

(.ecore)

UML 2.0Metamodel

(.ecore)

eProc Model(.ecore)

14© 2005-2006 The ATHENA Consortium.

References

15© 2005-2006 The ATHENA Consortium.

References (ATHENA deliverables)

[ATHENA] ATHENA, "ATHENA Public Web Site", ATHENA Integrated Project (IST-507849). http://www.athena-ip.org/

[ATHENA A5 2005] ATHENA A5, "D.A5.1: Perspectives on Service-Oriented Architectures and there application in environments that require solutions to be planned and customisable", ATHENA IP, Deliverable D.A5.1, 2005.

[ATHENA A5 2005] ATHENA A5, "D.A5.2: Model and Specification of Service Descriptions and Usage as well as Advanced Concepts", ATHENA IP, Deliverable D.A5.2, 2005.

[ATHENA A5 2006] ATHENA A5, "D.A5.3: Architecture of SOA Platforms", ATHENA IP, Deliverable D.A5.3, 2006.

[ATHENA A5 2006] ATHENA A5, "D.A5.4: Execution Framework(s) for Planned and Customisable Service-Oriented Architectures", ATHENA IP, Deliverable D.A5.4, 2006.

[ATHENA A5 2006] ATHENA A5, "D.A5.5: Validation of Research Results", ATHENA IP, Deliverable D.A5.5, 2006.

[ATHENA A6 2005] ATHENA A6, "D.A6.1: Specification of a Basic Architecture Reference Model", ATHENA IP, Deliverable D.A6.1, 2005.

[ATHENA A6 2006] ATHENA A6, "D.A6.2: Enhanced Registry/Repository Infrastructure", ATHENA IP, Deliverable D.A6.2, 2006.

[ATHENA A6 2006] ATHENA A6, "D.A6.3: Model-driven and Adaptable Interoperability Framework", ATHENA IP, Deliverable D.A6.3, 2006.

[ATHENA A6 2006] ATHENA A6, "D.A6.4: Model-driven and Adaptable Interoperability Infrastructure", ATHENA IP, Deliverable D.A6.4, 2006.

16© 2005-2006 The ATHENA Consortium.

References (Papers)

[Benguria, et al. 2006] G. Benguria, X. Larrucea, B. Elvesæter, T. Neple, A. Beardsmore, and M. Friess, ”A Platform Independent Model for Service Oriented Architectures”, to be presented at the 2nd International Conference on Interoperability of Enterprise Software and Applications (I-ESA 2006), Bordeaux, France, 2006.

[Elvesæter, et al. 2005] B. Elvesæter, A. Hahn, A.-J. Berre, and T. Neple, "Towards an Interoperability Framework for Model-Driven Development of Software Systems", in Proc. of the 1st International Conference on Interoperability of Enterprise Software and Applications (INTEROP-ESA 2005), Geneva, Switzerland, 2005.

[Elvesæter, et al. 2005] B. Elvesæter, R. K. Rolfsen, F. Lillehagen, and D. Karlsen, "Integrated Enterprise Service Architecture", in Proc. of the 12th ISPE International Conference on Concurrent Engineering (CE 2005), Fort Worth, Texas, USA, 2005, M. Sobolewski and P. Ghodous (Eds.), International Society for Productivity Enhancement, Inc., NY, USA, pp. 129-134.

[Lillehagen, et al. 2005] F. Lillehagen, D. Karlsen, H. G. Solheim, H. D. Jørgensen, H. Smith-Meyer, B. Elvesæter, and R. K. Rolfsen, "Enterprise Architecture - from Blueprints to Design Services", in Proc. of the 12th ISPE International Conference on Concurrent Engineering (CE 2005), Fort Worth, Texas, USA, 2005, M. Sobolewski and P. Ghodous (Eds.), International Society for Productivity Enhancement, Inc., NY, USA, pp. 121-128.

[Fischer, et al. 2006] K. Fischer, B. Elvesæter, A.-J. Berre, C. Hahn, C. Madrigal-Mora, and I. Zinnikus, ”Model-Driven Design of Interoperable Agents”, to be presented at the 2nd Workshop on Web Services Interoperability (WSI 2006), Bordeaux, France, 2006.

[Vayssière, et al. 2006] J. Vayssière, G. Benguria, B. Elvesæter, K. Fischer, and I. Zinnikus, "Rapid Prototyping for Service-Oriented Architectures", to be presented at the 2nd Workshop on Web Services Interoperability (WSI 2006), Bordeaux, France, 2006.

17© 2005-2006 The ATHENA Consortium.

This course has been developed under the funding of the EC with the support of the EC ATHENA-IP Project.

Disclaimer and Copyright Notice: Permission is granted without fee for personal or educational (non-profit) use, previous notification is needed. For notification purposes, please, address to the ATHENA Training Programme Chair at [email protected]. In other cases please, contact at the same e-mail address for use conditions. Some of the figures presented in this course are freely inspired by others reported in referenced works/sources. For such figures copyright and all rights therein are maintained by the original authors or by other copyright holders. It is understood that all persons copying these figures will adhere to the terms and constraints invoked by each copyright holder.


Recommended