INF5120 Modellbasert systemutvikling...Service and Process Interoperability PIM4SOA/UPMS to Agent...
Transcript of INF5120 Modellbasert systemutvikling...Service and Process Interoperability PIM4SOA/UPMS to Agent...
ICT
INF5120Modellbasert systemutvikling
�F13
�Semantic annotations�Information Interoperability�Service and Process Interoperability�PIM4SOA/UPMS to Agent mappings and Transformations
Forelesning 30.04.2007Arne-Jørgen Berre
ICT
Pensum litteratur
� F – Foiler fra alle forelesningene, F1 – F15
� Artikler: ”MDI - Model Driven Interoperability”,
� ATHENA Interoperability Framework
� Semaphore
� Model Driven Ontology
ICT
INF5120 - Forelesninger - 2007
AJB: ArneAJB: Arne--JJøørgenrgen Berre, Berre, BRE: Brian ElvesBRE: Brian Elvesææterter GKOGKO: : GGøøran K. Olsenran K. Olsen
� MDSU (Bok 1 – part 1 og 2) – fra 22/1� 1 22-1: Introduction to MBSU, MDA, OO and modeling (M1-M5)� 2: Metamodeling and UML profiles, MDA technologies (Eclipse technologies) (M2, M4, M6)� 3: Language Engineering and DSL (M8)� 4: Model transformations with ATL and other technologies (M10, M11� 5: Code generation with MOFScript and other technologies (M9
� COMET – New development (Bok 1 part 3, Bok 2) – fra 26/2� 6 26-2: Method Engineering and Process – and COMET overview (M13)� 7: COMET EA and Business Modeling - Enterprise Modeling and Enterprise Architecture (EA) � 8: Requirements Engineering and Use cases – (and Agile methods and modeling), Patterns and aspects� 9: SOA Architectures and platforms (SOA) and COMET Architecture Modeling and PIM4SOA and UPMS� 10: PIM and Web Services teknologi (PSM) med WSDL/XML/BPEL
� MDI (Område 3) - fra 16/4� 11 16/4: Interoperability and MDI – AIF, EIF and EIM� 12: 23/4: Ontologies and Semantic web and Modeling� 13. 30/4: MDI – Model Driven Interoperability, PIM4SOA –> Agent transformations, AIM� 14. 7/5: Aspekt-orientert Programmering og Modellering� 15. 14/5 Course summary
ICT
Internet Evolution
ICT
The Tree of Knowledge Technologies (Utvidet med basis fra Top Quadrant)
SAWSDL
EXPRESS
ISO 15926
CC
ICT
Offentlig, Innbygger, Næringsliv A
Organisatorisk
interoperabilitet
Semantisk
interoperabilitet,
InformasjonsInnhold med mening for:
Teknisk
interoperabilitet
(Tekniskestandarder)
PresentasjonProsessTjenesteInformasjon/Data
PresentasjonProsessTjenesterDataAdm/MetadatSikkerhetTekn. sem/org
ArbeidsProsessMålOrganisasjonProduktBegrep
Offentlig, Innbygger, Næringsliv B
Organisatorisk
interoperabilitet
Semantisk
interoperabilitet,
InformasjonsInnhold med mening for:
Teknisk
interoperabilitet
(Tekniskestandarder)
PresentasjonProsessTjenesteInformasjon/Data
PresentasjonProsessTjenesterDataAdm/MetadatSikkerhetTekn. sem/org
ArbeidsProsessMålOrganisasjonProduktBegrep
Organisatorisk harmonisering,spesielt rundt prosess
Felles forståelse av mening/semantikk i innhold ved
bruk av teknologier forpresentasjon/prosess/tjeneste/data
Samvirkende teknologier
Organisatorisk interoperabilitet
Semantisk interoperabilitet
Teknisk interoperabilitet
Teknisk
interkonnektivitet
MellomvarePlattformLagring/Nettverk
Teknisk
interkonnektivitet
MellomvarePlattformLagring/Nettverk
Teknisk interkonnektivitet
Transport (HTTPS, FTP)Overføring (IP, IPv6)
Bit transport (WAN, WiFi, LAN)
Norwegian eGovernmentInteroperability Reference Model
ICT
Event/Notification Service
Transactions
Logging
Security
OLF Information Architecture
.
.
.
Communication(Synchronous (RPC), Asynchronous (messaging), Events, Streaming, …)
Network
User collaboration
Process choreography, orchestration and workflow
Collaborative Enterprises
Flexible Execution and Composition of Services
Information Exchange
Seman
tic In
tero
pera
bility
Information
Services
Processes
Enterprise 2
System 2
User interaction
Information
Services
Processes
Enterprise 1
System 1
User interaction
OLFOljebransjensLandsforening
ICT
Current MDA Architecture with Semantic annotations
CIM/EMmodels
PIMSystemmodels
PSMSystemmodels
System
ADM
QVT
QVT
MOF2Txt
ADM
ADM
Enterprisemodeling
expert
Systemmodeling
expert
Systemrealisationinstallation
expert
Ref.ontology
Semanticannotation
Semanticannotation
Semanticannotation
ICT
Current MDA Interoperability Architecture
CIM/EMmodels
PIMSystemmodels
PSMSystemmodels
System
Ref.ontologySemantic
annotation
Semanticannotation
Semanticannotation
CIM/EMmodels
PIMSystemmodels
PSMSystemmodels
System
Semanticannotation
Semanticannotation
Semanticannotation
Sem.mapping
Technicalmapping
Interoperabilityexecution
IF IF
ICT
Semantiske Teknologier
� Ontologier
� RDF og OWL
� Topic Maps, ISO 15926, UML og andre
� 2 papers:
� Semaphore model mapping (Semaphore paper)
� Sammenlikning av model mapping og bruk av ontologier (Semantic mapping: ontology-based vs. model-based approachAlternative or complementary approaches?)
ICT
Semantisk Interoperabilitet gjennomreferanse til felles ontologier
Service-orientertIT system
Virksomhet Virksomhet
Service-orientertIT system
Forretningsorientering
Brukerorientering
Semantisk orientering
Serviceorientert
IT
Informasjon*TjenesteProsess
Ontologier
Serviceorientert
IT
Modellorientering
Forretningsorientering
ICT
Run-time
Sem
Annot
Set
#2
InternetSem
Rec
Rules
#2
Local
Software
&
Data
SwApp#1
Local
Software
&
Data
SwApp#2
Sem
Annot
Set
#1
Sem
Rec
Rules
#1
ReferenceOntology
Semantic Annotation
Reconciliation
Design-time
ICT
Semaphore – Semantic Mapping Tool from SINTEF
A Model-Based Semantic Mapping
Framework
Andreas Limyr
ICT
Overview
� Motivation
� Example
� Architecture
� Input
� Mapping
� Mapping helpers
� Code generation
� Further work
� Summary
ICT
Motivation
System ASystem B
Mediator
ICT
Semaphore
� Model-based semantic mapping framework
� Takes two domain models as input
� Source model A and target model B
� Support mapping between domain models
� Mapping is used as input to create a mediator
ICT
Semaphore
� Generate transformation code/mediator
� For transforming a document based on model A into a document based on model B
� Semaphore only provides the mediator, it does not run it
ICT
Step 1 – Load models
ICT
Step 2 - Map
ICT
Step 3 – Create mediator/transformation
ICT
Do It Yourself
� Semaphore is a framework that let you
� Add support for your own formats
� Add your own mediator generators
� Add your own “matching” algorithms
� Extend it to your needs
ICT
Architecture
ICT
Input models
ICT
Input models
� Source and target format model
� XSD, SQL Schema ++
� Must be converted to a common Semaphore format (UML)
� Extendable architecture for different formats
� Example XSD to UML2 converter provided with Semaphore
� Additional converters can be written in Java
ICT
Input models
ICT
Mapping
ICT
Mapping
ICT
Mapping
� Built in mapping operators
� Possible to have user defined mappings
� The result of the mapping is saved in a mapping model
� Referencing the mapped elements from the domain models
ICT
Mapping helpers
� Mapping can be performed semi-automatically with mapping helpers
� Matching algorithms can be added to Semaphore
� A simple match by name algorithm is implemented as an example
� Additional matching algorithms can be written in Java
� User can select from possible matches
� Automatic mappings are marked
� User can accept or reject automatic mappings
ICT
Code generation
ICT
Code generation
� Based on the mapping model created with Semaphore a mediator/transformation code is generated
� Transformation code for turning an instance of the source model into an instance of the target model
� Code generation is therefore platform-specific
� Example from XML to XML transformation code generator is provided with Semaphore (XSLT)
� Additional code generators can be written in Java or MOFScript
� MOFScript is an Eclipse tool to generate text from MOF-based models
ICT
Code generation
ICT
Ontology alignment
� In collaboration with LEKS (Laboratory for Enterprise Knowledge and Systems) Semaphore have been used to display ontologies
� Athos is a web-based ontology management system
� Semaphore has been extended to import ontologies from Athos
� Ontologies converted to UML models are displayed and can be mapped to models or even other ontologies with Semaphore.
ICT
Further work
� Look at more interaction with ontology technology
� Support for mapping helpers based on ontology matching strategies
� Traceability support
ICT
References
� Semaphore is developed with support from INTEROP NoE and ATHENA IP
� Semaphore can be downloaded from
� http://modelbased.net/semaphore/
ICT
Semaphore Summary
� Semaphore is a model-based semantic mapping framework
� Extendable architecture allows
� Your own input models
� Custom mapping helpers
� Your own mediator generator (from any format to any format)
ICT
SAWSDL - Semantic Annotations for WSDL and XML Schema
� W3C Working Draft 10 April 2007
� This specification defines a set of extension attributes for the Web Services Description Language and XML Schema definition language that allows description of additional semantics of WSDL components. The specification defines how such semantic annotation is accomplished using references to semantic models, e.g. ontologies
� 3 constructs: modelReference, liftingSchemaMapping, loweringSchemaMapping
ICT
A Web Service Composition Scenario with Ontology Reasoning
ICT
Semantic Annotations for WSDL and XML Schema
� W3C Working Draft 10 April 2007
� This specification defines a set of extension attributes for theWeb Services Description Language and XML Schema definition language that allows description of additional semantics of WSDL components. The specification defines how such semantic annotation is accomplished using references to semantic models, e.g. ontologies. SAWSDL does not specify a language for representing the semantic models. Instead it provides mechanisms by which concepts from the semantic models, typically defined outside the WSDL document, can be referenced from within WSDL and XML Schema components using annotations.
ICT
The Promise of Services Oriented Architecture (SOA)
Business user
productivity
Business
process flexibility
Lower TCO
BUSINESS
DRIVER
TECH
ENABLER
�Composition
�Standards-
based services interfaces
�Services bus
CRM(Supplier)
CRM(Supplier)
SRM(internal)
SRM(internal)
ERP(internal)
ERP(internal)
CRM(internal)
CRM(internal)
SRM(Buyer)
SRM(Buyer)
ERP(Buyer)
ERP(Buyer)
SOA PlatformSOA Platform
Composite Applications
ICT
SOA alone is not enough – Business Semantics required
In Enterprise SOA the semantic disconnect in
process and information is hidden from the composition
environment
95% of the effort in traditional SOA application development is figuring out
the process and
information semantics
ICT
SOA is Required, but Not Enough
CRM(Supplier)
CRM(Supplier)
SRM(internal)
SRM(internal)
ERP(internal)
ERP(internal)
CRM(internal)
CRM(internal)
SRM(Buyer)
SRM(Buyer)
ERP(Buyer)
ERP(Buyer)
Composite Applications
Business Semantics are Required
ENTERPRISE SERVICES CAPTURE BUSINESS SEMANTICSAND REPRESENT A “COMMON LANGUAGE OF BUSINESS”
Enterprise Services
Repository BUSINESS FUNDAMENTALS
SOA Platform
ICT
Example – Carrier Selection in Logistics
Carrier
Shipper
� Scenario:Shippers are going to use multiple carrier services for different destinations / goods.
� Problem:Simple (automatic) selection of “most appropriate” carrier service
Carrier
services
?! ?Dynamic Carrier
Service Selection!
ICT
Dynamic Carrier Service Selection using Semantics
�Scenario:Shippers are going to working with multiple carriers offering interchangeable transport services
�Solution:Rule / Semantic based dynamic service selection of best suited Carrier service
� According to a specified goal and existing contracts between Shipper and Carrier
� Goals can be: select cheapest, fastest, most reliable Carrier
�Benefit:Automatic selection of best-suited Carrier
Fedex UPS DHL
Carrier Service Selection
Service Registry
En
terp
rise
S
OA
XI
Shipping Process
XI: SAP Exchange Infrastructure
ICT
Dynamic Carrier Service Selection using Semantics� What do we win?What do we win?What do we win?What do we win?
� Savings of development efforts by problem reduction
� Flexibility through declarative nature
� Extendibility (integration of new Carriers) through declarative nature
� What do we have to invest?What do we have to invest?What do we have to invest?What do we have to invest?� Modeling of logistic and geographic information (once)
� Modeling of contracts, criteria (per Carrier)
� However, templates can be used
� Thus, modeling efforts remain moderate
� What is required?What is required?What is required?What is required?� Inference engine
� GUI for modeling
� Lifting: service request � ontological representation
� Expertise in description logics
ICT
Enterprise SOA: Discovery / Selection
� Enterprise SOA VisionEnterprise SOA VisionEnterprise SOA VisionEnterprise SOA Vision
� Application Composition basedon existing building blocks (services)
� Business Process Flexibility
� RequirementsRequirementsRequirementsRequirements
� Discovery of appropriate candidate services
� Selection of the best matching service
� An Approach for SolutionAn Approach for SolutionAn Approach for SolutionAn Approach for Solution
� Semantic annotation of service capabilities and requestor’ goals
� Unambiguous, machine-interpretable formalizations
� Business context & data ontologies� AdvantagesAdvantagesAdvantagesAdvantages� (Semi-)automatic discovery of candidate services
� (Semi-)automatic integration of new services
� Self-adaptable business processes through automatic selection of services
Service YGoal
Potential candidate
Service X Goal
No match
Discovery
Service Y
Service Z
Potential candidatesConcrete
Task
Ranking/Composition
Selection
ICT
Enterprise SOA: Mediation
� Enterprise SOA VisionEnterprise SOA VisionEnterprise SOA VisionEnterprise SOA Vision
� Application Compositionbased on existing building blocks
� RequirementsRequirementsRequirementsRequirements
� Integration of differentservices
� Mapping between differentmessage formats
� An Approach for SolutionAn Approach for SolutionAn Approach for SolutionAn Approach for Solution
� Semantic annotation of messageformats using ontologies
� Unambiguous, machine-interpretable formalizations
� Business data ontologies
� AdvantagesAdvantagesAdvantagesAdvantages
� Semi-automatic creation of necessary transformations
� Reduced development effort
� Simplified integration of legacy systems/applications
Business Collaboration OntologyBusiness Collaboration OntologyBusiness Collaboration Ontology
PersonFirst nameSurname
Address
AddressStreetCityPostal Code
hasType
ClientClient codeCase worker…
Is a
…<CLT>
<CLTCD>1234</CLTCD>
<NAME>Joe Doe</NAME> <CITY>WDF</CITY><POCODE>12345<POCODE>
</CLT>
…
…<Customer>
<FirstName>Joe</FirstName><SurName>Doe</SurName> <Address>
<City>WDF</City>
</Address></Customer>
…
1234
JoeDoe
WDF
12345
Sourcemessage
Targetmessage
AutomaticData Mediation
Creating ontology instance from source message
Creating target message instance from ontology instance
Business Collaboration OntologyBusiness Collaboration OntologyBusiness Collaboration Ontology
PersonFirst nameSurname
Address
PersonFirst nameSurname
Address
AddressStreetCityPostal Code
AddressStreetCityPostal Code
hasType
ClientClient codeCase worker…
ClientClient codeCase worker…
Is a
…<CLT>
<CLTCD>1234</CLTCD>
<NAME>Joe Doe</NAME> <CITY>WDF</CITY><POCODE>12345<POCODE>
</CLT>
…
…<Customer>
<FirstName>Joe</FirstName><SurName>Doe</SurName> <Address>
<City>WDF</City>
</Address></Customer>
…
1234
JoeDoe
WDF
12345
Sourcemessage
Targetmessage
AutomaticData Mediation
Creating ontology instance from source message
Creating target message instance from ontology instance
ICT
Enterprise SOA: Composition� Enterprise SOA VisionEnterprise SOA VisionEnterprise SOA VisionEnterprise SOA Vision
� Business ProcessFlexibility
� RequirementsRequirementsRequirementsRequirements
� Defining placeholdersfor process steps
� Matching of business contexts
� Describing data compatibility
� An Approach for SolutionAn Approach for SolutionAn Approach for SolutionAn Approach for Solution
� Goals as placeholders
� Service semantics described by ontologies
� Unambiguous, machine-interpretable formalizations
� Business context & data ontologies (static aspects)
� Business collaboration ontology (behavioral semantics)
Sales Order
Processing
OrderOrder
Business Collaboration OntologyBusiness Collaboration OntologyBusiness Collaboration Ontology
Invoice Processing
InvoiceInvoice
Web Service
Capability I
Capability
Web
Service Capability II
Purchase Order
Processing II
PurchasePurchase
Order IIOrder II
Purchase Order
Processing
I
PurchasePurchase
Order IOrder I
Goal
Process Matching & Process Matching &
MediationMediation
Purchase Order
Processing Goal
� AdvantagesAdvantagesAdvantagesAdvantages
� Reasoning allows for automatic composition of processes
� Automatic integration of new services
� Self-adjusting business by using placeholders
ICT
Discovery/Selection, Mediation, and Composition benefit from using Semantics
‘SOA isn‘t enough’Semantics – prerequisite for Enterprise SOA
Semantic SOA
Business Collaboration OntologyBusiness Collaboration OntologyBusiness Collaboration Ontology
PersonFirst nameSurnameAddress
AddressStreetCity
Postal Code
hasType
ClientClient codeCase worker…
Is a
…<CLT>
<CLTCD>1234</CLTCD>
<NAME>Joe Doe</NAME>
<CITY>WDF</CITY>
<POCODE>12345<POCODE>
</CLT>
…
…<Customer>
<FirstName>Joe</FirstName>
<SurName>Doe</SurName>
<Address>
<City>WDF</City>
</Address>
</Customer>
…
1234
JoeDoe
WDF
12345
Source
message
Target
message
AutomaticData Mediation
Creating ontology
instance from source
message
Creating target
message instance from
ontology instance
Business Collaboration OntologyBusiness Collaboration OntologyBusiness Collaboration Ontology
PersonFirst nameSurnameAddress
PersonFirst nameSurnameAddress
AddressStreetCity
Postal Code
AddressStreetCity
Postal Code
hasType
ClientClient codeCase worker…
ClientClient codeCase worker…
Is a
…<CLT>
<CLTCD>1234</CLTCD>
<NAME>Joe Doe</NAME>
<CITY>WDF</CITY>
<POCODE>12345<POCODE>
</CLT>
…
…<Customer>
<FirstName>Joe</FirstName>
<SurName>Doe</SurName>
<Address>
<City>WDF</City>
</Address>
</Customer>
…
1234
JoeDoe
WDF
12345
Source
message
Target
message
AutomaticData Mediation
Creating ontology
instance from source
message
Creating target
message instance from
ontology instance
ICT
ATHENA Interoperability Methodology (AIM)
Definition
Phases
Analysis Negotiation Realisation Operation Termination
Def. #1 Analyis. #1 Neg. #1 Real. #1 Real. #2 Oper. #1 Term. #1
Iterations
Support disciplines
Interoperability disciplines
Project management
Business collaboration modelling
Testing
Implementation
Interoperability maturity analysis
Deployment and assessment
Analysis and requirements
Solution mapping and design
ICT
Baseline methodology
EIMM
Interoperabilityanalysis
Requirementssolutionmapping
Test definition
Implementation
Testing
IIAM
Implicit strategicbusiness
needsOptimized
co-operationmodel
Interoperabilitymaturity and
modelling approach
Requirements related to
business needs
Solution blueprint(generic solutions)
Solution instance(actual solutions)
Testprocedure
Solutionimplementation
ROI(impact)
Methodology overview(V-model view)
Formalized interoperability business needs
BIF
ICT
Enterprise/Business
Processes
Services
Information/Data
Cross-OrganisationalBusiness Processes
Collaborative EnterpriseModelling
Flexible Execution and Compof Services
InformationInteroperability
Mo
de
l-D
rive
n I
nte
rop
era
bili
ty
Se
man
tics a
nd
Onto
log
ies
Enterprise/Business
Processes
Services
Information/Data
Provided Required
Organisational Interoperability
Semantic Interoperability
Technical Interoperablity
AIF EIF version 1
Harmonisation of AIF and EIF
Enterprise/Business
Processes
Services
Information/Data
Cross-OrganisationalBusiness Processes
Collaborative EnterpriseModelling
Flexible Execution and Compof Services
InformationInteroperability
Mo
de
l-D
rive
n I
nte
rop
era
bili
ty
Se
man
tics a
nd
Onto
log
ies
Enterprise/Business
Processes
Services
Information/Data
Provided Required
EIFversion 2AIF