Process

advertisement
6-2. Model-Driven
Development with
PIM4SOA
<Presenter>
<Company>, <Country>
<E-mail>
© 2005-2006 The ATHENA Consortium.
Outline
•
•
•
•
PIM4SOA
Rapid prototyping with PIM4SOA
Case study: AIDIMA e-procurement scenario
References
© 2005-2006 The ATHENA Consortium.
2
PIM4SOA
© 2005-2006 The ATHENA Consortium.
3
The problem
•
Currently, enterprises face many difficulties related to lack of
interoperability.
•
ATHENA Overall objective: Contribution to enabling enterprises to
seamlessly interoperate with others
•
Seamlessly involves reducing as much as possible the effort required to
translate the interoperability rules specified by the business expert to suitable
technical platform (SOA).
•
PROBLEMS:
– Several ways to specify interoperability at business level
– Several kinds of SOA platforms
– Too big gap
© 2005-2006 The ATHENA Consortium.
4
Alternatives 1: Too big gap
Business
expert
Aris
Grai
Metis
Moogo
POP*
CIM
GAP
IT
infrastructure
© 2005-2006 The ATHENA Consortium.
WSA
BDI
Teams
P2P
GRID
PSM
5
Alternatives 2: Too big gap
Business
expert
Aris
Grai
Metis
Moogo
POP*
CIM
GAP
PIM4SOA
IT
infrastructure
© 2005-2006 The ATHENA Consortium.
WSA
BDI
Teams
P2P
PIM
GRID
PSM
6
The challenge
Business
expert
• The goal of creating the PIM4SOA
metamodel was to define a
language that could be used to
describe SOAs at a platform
independent level.
GAP
– Which are the collaborations that need to
be implemented to perform the
interoperability objectives stated at the
business level?
– What is the sequence of messages
exchanged to perform the collaboration?
– Which is the information exchanged?
– Which are the non-functional
requirements that the interaction has to
meet?
– ….
• The resulting PIM4SOA should be
able to support a formal transition
IT
between enterprise models and IT
infrastructure
implementations
© 2005-2006 The ATHENA Consortium.
CIM
PIM
PSM
7
PIM4SOA objectives
• Platform independent model for specifying
service-oriented architectures
– Represent SOA solutions in a platform independent
way
– Integrate and define mappings to Web services,
agents, peer-to-peer (P2P) and Grid execution
platforms.
– Bridging the gap between the enterprise layer and the
technical layer
– Establishing relationships between layers through
model-based transformations
– Two-way transformations supporting both
• model-driven development (MDD); and
• architecture-driven modernisation (ADM)
© 2005-2006 The ATHENA Consortium.
8
PIM4SOA requirements
Depending on the source of requirements
• From the enterprise or business viewpoint
– Process, Organisation, Product and System (POPS)
dimensions
– Mapping enterprise and business model elements to
PIM4SOA
• From the platform point of view
– What are the necessary PSM elements to be
represented at PIM level?
– How do we identify these elements?
– We need identify overlapping elements amongst
platforms
© 2005-2006 The ATHENA Consortium.
9
Characteristics for metamodel
• Suited for target roles
– Support domain concepts and scenarios of target roles
– Ease-of-use and understandable for business modeller (use terms)
– Support precise details and correctness for solution architect
• Avoid unnecessary complexity
– Keep it simple stupid (KISS)
– Number of elements and associations
– Type and navigation of associations
• Make it modular
– Provide core with extensions
– Define and illustrate possible subsets (”dialects”) that support scenarios
– Consider integration and extension points
• Suited for implementation
– EMF representation
– Transformation from/to UML profile
– Transformation to PSM
© 2005-2006 The ATHENA Consortium.
10
PIM4SOA addresses four system aspects
Metamodel for (software) services
Services are an abstraction and an
encapsulation of the functionality provided by
an autonomous entity. Service architectures
are composed of functions provided by a
system or a set of systems to achieve a
shared goal.
Web Services Architecture as proposed by
W3C (W3C 2004)
UML Profile for Enterprise Distributed Object
Computing (OMG 2002)
Metamodel for information
Information is related to the messages or
structures exchanged, processed and stored
by software systems or software components.
Structural constructs for class modelling in
UML 2.0 (OMG 2003)
UML Profile for Enterprise Distributed Object
Computing (OMG 2002)
© 2005-2006 The ATHENA Consortium.
Metamodel for (automated software) processes
Processes describe sequencing of work in
terms of actions, control flows, information
flows, interactions, protocols, etc.
Business Process Definition Metamodel
(BPDM) (IBM et al. 2004)
UML Profile for Enterprise Distributed Object
Computing (OMG 2002)
Metamodel for quality of service (QoS)
Extra-functional qualities that can be applied
to services, information and processes.
UML Profile for Modeling Quality of Service and
Fault Tolerance Characteristics and
Mechanisms (OMG 2004)
11
Service metamodel
Collaboration
RegistryItem
RoleBinding
RoleType
Behaviour
ServiceProvider
ProviderType
CollaborationUse
Role
EndPoint
Registry
–
–
–
© 2005-2006 The ATHENA Consortium.
Collaboration represents a pattern of interaction
Represents
Relates
In
An
Specify
The
A Registry
aabstract
service
ServiceProviers
model
an
a role
model
entity
element
class
oriented
a
anservice
with
address
describing
element
for
atodomain
can
the
usage
and
represent
identifying
specification
have
an
isof
and
based
two
end
atoservice.
specifying
aare
types:
point.
usage
aon
service
the
of
index
Abstract
ofin
a its
between participating roles
RoleTypes
messages
turn
ore
service
approach
Executable
services,
containing
sequence
identified:
roles and
addressable
within
theconstraints
requester
a service
services
and the
A
binary
collaboration
specifies
a
service
provider
12
Information metamodel
Item
ItemType
Role
PackageableElement
Association
Package
Document
TypeLibrary
Entity
BusinessTypeLibrary
NameElement
Attribute
Element
–
–
© 2005-2006 The ATHENA Consortium.
Defines
is
Extracted
Represents
defines
represents
extracted
imported
athe
packaging
from
from
afrom
set
simple
the
an
structure
the
the
object
of
association
the
elements
UML2.0
UML2.0
types:
service
structure
with
element
string,
aspecification.
specification.
between
that
metamodel.
specific
containing
ofainteger
information
role
structure
two
manages.
and
some
boolean.
entities.
and
types
composed
of the application
by entities.
It is used to describe complex types
13
Process metamodel
Process elements
Process aspect
Step
Scope
Process
StructuredTask
Task
Pin
Flow
ItemFlow
JoinSpecification
GuardSpecification
–
Step
Scope
Implements
The
Input
Provide
A
Defines
composite
flow
low
is
orbetween
is
aoutput
an
convergence
conditions
the
level
an
single
interface
links
aabstract
task
‘building
behaviour
for
specific
node
between
consisting
a(e.g.
specific
for
container
in
behaviour
blocks’
input
a
pins
in
for
process,
Steps
terms
aof
item
on
or
service
of
a
for
interactions
output
when
a
collection
(tasks
of
type
individual
process
such
Pinprovider,
when
two
flows
contents)
etc.)
asflows
ofto
ain
on
making
behavioral
as
Steps
a
flow
the
show
provide
under
Step
connects
set
precise
which
related
ainput
ofto
decision
tasks
steps
an
to
relationships
to
A
tooutput
a
flow
aa
and
single
specific
or
Step
may
calling
decisions
flow
in
Step/Interaction
be
the
subsection
between
isan
associated
or
Process
(Steps)
external
is not
output
of
activated
linked
service.
with
a from
aby
• abehavior.
calls
another
service
The
control
Process
message
one
‘everyday’
flows
type
(Flows),
being
specialization
transported.
and
optionally
inputofon
Step
including
another
is Task
detail
• Step/Interaction
require
manual
intervention
on the exchanged messages / items.
© 2005-2006 The ATHENA Consortium.
14
Non-functional metamodel
All
NFA
Others
–– Defined
Represents
in the
Non-Functional
OMG standardAspects
for specifying
for a
quality
specificofusage
service
of a service.
•
•
© 2005-2006 The ATHENA Consortium.
defined in Collaboration and ServiceProvider
specification
related with CollaborationUse element
15
Rapid prototyping with PIM4SOA
© 2005-2006 The ATHENA Consortium.
16
Rapid prototyping framework for SOA
• The ATHENA baseline methodology for SOA
provides guidelines for developing platform
independent models for SOA (PIM4SOA).
• Provides a set of modelling tools and services for
mapping between PIM4SOA and platform specific
models (Web services and BDI agents)
Modelling
PIM4SOA
External WSDL Documents
WSDL Documents
WSDL Analyzer
MDD Framework
Lyndon
Johnson
«invoke»
Services
• Johnson and Lyndon provide enactment of all the roles found
in an SOA (consumer, provider, intermediary) and flexible
communication between Web services through an intuitive user
interface
• The WSDL Analyzer tool detected syntactical mismatches
between service descriptions and provides a basis for runtime
mediation of Web service messages
© 2005-2006 The ATHENA Consortium.
BDI Teams
«invoke»
Jack
Agents
• The Web service extensions to the JACK
autonomous agents platform allow SOAs to use
agents for brokering, mediation and negotiation
between Web services
• BDI teams provide a flexible and composable
alternative to traditional approaches to Web service
composition
17
UML Profile for POP*
• Process
• Organisation
• Product
•…
annotated with
Enterprise
Model
Reference Ontology
Business
Requirements
Analysis
Model to Model
Transformation
Architecture Specification
UML Profile for SOA
• Information
• Service
• Process
• QoS
annotated with
Service-Oriented
Architecture Model
Model to Model Transformation
Model Transformation
UML Profile for Web Services
annotated
with
Web Service
Specification Model
UML Profile for Agents
Agent Specification
Model
BPEL Specification
Model
Model to Text
Transformation
P2P Specification
Model
UML Profile for BPEL
UML Profile for P2P
Model Transformation
annotated
with
OWL
Ontology
Web Service
Execution Artefacts
Agent
Execution Artefacts
BPEL
Execution Artefacts
P2P
Execution Artefacts
Deployment
Service Wrappers
(Enterprise X)
Registry
Repository
Semantic
Space
ATHENA Integrated
Execution Infrastructure
Service Wrappers
(Enterprise Y)
Public
Infrastructure Services
Evaluation & Negotiation of Available Functionality
Internal
Infrastructure Services
Process
Execution
Platform
(BPEL)
Goal-oriented
Adaptive
Execution
Platform
(Agents)
Adaptive Distributed
Resource Mgt Platform
Active
Model
Platform
(AKMii)
Composed
WebService
Platform
(WebServices)
Enhanced Service Interconnection Bus
(P2P)
Legend
Business Process/Agent
Active (Business) Model
Web/Server Component
Middleware Process/Agent
Middleware Component
Crossorg.
Service Wrappers (Enterprise A)
Server-side
Component
Platform
MessageOriented
Platform
(.NET, J2EE)
(MQSeries)
Existing Enterprise Applications
Intraorg.
ATHENA
baseline
methodology
for SOA
(overview)
Enterprise
Model
Process
View
Business
Requirements
Analysis
1
SOA
Model
1
Information
View
Model to Model
Transformation
Service
View
Process
View
1
XML
Message
Service
Description
Process
Execution
1..*
OWL-S
XSD
WSDL
BPEL
Document Document Document Document
BDI
Plan
WS-?
Document
Evaluation
Composition
Execution
Legacy Applications
Brokering
Internal Service Interconnection Bus
...
Service
Mediation
Service
Platform
Models
Brokering Tool (A5)
Composition
Models
Service
Models
ARES (A3)
Negotiation Publishing
Model Registry (A6)
Contract
Models
UML Profile for Web Services
• XML Message (XSD)
• Service Description (WSDL)
• Process Execution (BPEL)
• QoS
Method chunks for SOA and
Web Service Interoperability
External
Registry
Interaction
ATHENA
Web Service
Execution
Infrastructure
Web Service
Documents
OWL
Ontology
QoS
Description
Model to Text
Transformation
1..*
Other Company
annotated
with
QoS
View
JACK
annotated
with
UML Profile for SOA
• Information
• Service
• Process
• QoS
Model to Model
Transformation
1..*
Web Service
Model
Reference
Ontology
…
View
Product
View
Nehemiah (A2)
annotated
with
Organisation
View
UML Profile for POP*
• Process
• Organisation
• Product
•…
Wrappers
ATHENA
baseline
methodology
for SOA
(detailed)
MDI modelling environment
Collaborative
Enterprise
Modelling
CrossOrganisational
Business
Process
Modelling
Service
Integration
and
Composition
Modelling
Information
Mapping
Modelling
Platform
Integration
Modelling
Eclipse/RSM Platform
ATHENA Execution
Infrastructure
Model
Repository
© 2005-2006 The ATHENA Consortium.
Model
Transformation
(ATL, MTF)
Execution Platform and
Infrastructure Services
(WS, Agents, BRMF, …)
20
Tools and services (overview)
Export + ARIS
XML 2 Model
POP*
UML Profile for SOA
Maestro
Import / Export
Model 2 Model
CBP
Information
PIM for SOA
Service
Process
QoS
Model 2 Model
Model 2 Text
XSD
BRMF
CBP: Collaborative Business Process
PIM: Platform Independent Model
SOA: Service-Oriented Architecture
XSD: XML Schema Definition
© 2005-2006 The ATHENA Consortium.
WSDL
BPEL
Jack
UML* WS-?
BRMF: Business Resource Management Framework
WSDL: Web Service Description Language
BPEL: Business Process Execution Language
21
RSM and UML profile for PIM4SOA
© 2005-2006 The ATHENA Consortium.
22
Case study: AIDIMA
e-procurement scenario
© 2005-2006 The ATHENA Consortium.
23
Introduction to business scenario
• Scenario is based on the current situation of the furniture
SMEs regarding the procurement issues
• Value in the furniture industry is concentrated in design,
manufacturing, sales and marketing
– Clear benefit from the adoption of e-commerce initiatives
• Initiatives in the field of e-procurement of raw and semifinished materials in the coming years
– Significant benefits to be achieved in terms of cost reduction and
efficiency
• Distribution in the furniture industry is structured in a
complex way
– Extranets and Internet-enabled supply-chain automation should
optimize the relationships
• Order management and logistics with e-commerce
implementations
– Beneficial to the furniture industry
© 2005-2006 The ATHENA Consortium.
24
M1. Request for Quotation
M2. Quotation
R1. Request for Quotation
R2. Quotation
M3. Order
M4. Order
Confirmation
R4. Order
Confirmation
R3. Order
MANUFACTURER
●
●
PROVIDER
●
Retailer-Manufacturer
●
1. RFQ
●
2. Quote
●
3. Order
Manufacturer-Supplier
●
1. RFQ
●
2. Quote
●
3. Order
●
4. Order Confirmation
Retailer-Manufacturer
●
4. Order Confirmation
Interior
Decoration
Project
RETAILER
Selling process: Customer-oriented scenario
RETAILER
R1. Request for Quotation
R2. Quotation
R3.
Order
Delivery
Interior Decoration Project
R4. Order
Confirmation
Customer
communication
Looks for
furniture
Delivery
Invoice
R5. Delivery Note
R6. Packing List
MANUFACTURER
© 2005-2006 The ATHENA Consortium.
R7. Invoice
26
Procurement process: Supplier-oriented scenario
PROVIDER
M1. Request for Quotation
M2. Quotation
M3. Order
M4. Order Confirmation
Delivery
M5. Delivery Note
M6. Invoice
© 2005-2006 The ATHENA Consortium.
MANUFACTURER
27
5 main problems
1. Repetitive manual process for regular bulk orders
– Much of the manufactured products are generic and this involves
repeated periodic processing of similar or identical orders
2. Confusion resulting from poor product descriptions
– Clients very often order the wrong products!
3. Missing information (both from supplier and buyer!)
– Permasa have 3 people employed on the client site and 1 person
employed on the supplier side to ensure the integrity of orders and RFQs
4. Lag time from product order to delivery could be shorter.
– Shortening time from ordering to receiving raw materials from the
supplier has a direct effect on the delivery date of the finished product
5. Time spent rating supplier
– Permasa conducts tri-monthly reviews of their suppliers to ensure that
standards are kept
© 2005-2006 The ATHENA Consortium.
28
5 main expectations
1.
2.
3.
4.
Major reduction in false/incorrect orders
Dramatic shortening of time from order to delivery
Dramatic reduction in surplus stock in warehouse
Ability to search new providers and apply Permasa
criteria to rate those providers
5. Better integration between internal systems. (i.e. Stock,
purchasing, manufacturing, invoicing sub-systems)
© 2005-2006 The ATHENA Consortium.
29
Possible solution
Client
Supplier
Customer Order
processing
Procurement
Web Services Layer
Integration Layer
LogisticsSales Mgmt.ManufacturingPurchasing
(ILE)
(ILE)
(ILE)
(ILE)
Design
(AutoCAD)
Database (OS400)
© 2005-2006 The ATHENA Consortium.
30
Data exchange in e-procurement
Send RFQ
Retailer
FrontEnd
System
(OMS – Order
Management System)
Respond RFQ
Quotation
Approve Quotation
Send Order
Confirm Order
Change Order
Manufacturer
FrontEnd
System
(ERP – Enterprise
Resource Planning)
Confirm Order
Changed
Send Goods &
Delivery Note
Return Delivery
Note signed
Send Invoice
© 2005-2006 The ATHENA Consortium.
31
Enterprise model: e-procurement process
© 2005-2006 The ATHENA Consortium.
32
PIM4SOA: Order process
© 2005-2006 The ATHENA Consortium.
33
PIM4SOA: Services interfaces
© 2005-2006 The ATHENA Consortium.
34
PIM4SOA: Delivery and invoicing collaborations
© 2005-2006 The ATHENA Consortium.
35
PIM4SOA: Obtain quotation collaboration
© 2005-2006 The ATHENA Consortium.
36
PIM4SOA: Furniture procurement collaboration
•
Three roles
– “Retailer”,
– ”Manufacturer”
– “Supplier”
•
Two usage of collaboration
– “Goods Supply”
– “Materials Supply”
•
Relationships
between role and
collaboration use
– “RoleBinding”
© 2005-2006 The ATHENA Consortium.
37
PIM4SOA: Goods supply collaboration
© 2005-2006 The ATHENA Consortium.
38
PIM4SOA: Documents and type libraries
Documents and
type libraries
Type library
© 2005-2006 The ATHENA Consortium.
39
PIM4SOA: Order document
Model of an
order document
© 2005-2006 The ATHENA Consortium.
40
Conclusions
Business
expert
• The PIM4SOA metamodel is a valid tool to
decouple the logical solution from its technical
implementation.
• It allows us to derive architectures that later
could be implemented in heterogeneous
environments.
CIM
• The PIM4SOA could be also used as an
intermediate step when we plan to obtain
platform assets from an enterprise model.
PIM
GAP
IT
infrastructure
© 2005-2006 The ATHENA Consortium.
PSM
41
References
© 2005-2006 The ATHENA Consortium.
42
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.
© 2005-2006 The ATHENA Consortium.
43
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.
© 2005-2006 The ATHENA Consortium.
44
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 rg@uninova.pt. 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.
© 2005-2006 The ATHENA Consortium.
45
Download