service oriented architecture (soa) - protég逦 · service oriented architecture (soa) michael...

26
Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA

Upload: others

Post on 23-Aug-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Service Oriented Architecture (SOA)

Michael Herrmann

Applying Semantics within SOA

Page 2: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 2

Agenda

� Common understanding

� Definitions (selection) & Background

� Big Picture

� Services within SOA

� Enterprise Service Bus (ESB)

� EMEO

� Scenario I

� Scenario II

� WSDL-S

� Symbolic + Inference

� Summary

Page 3: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 3

“Introducing” my working area

Page 4: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 4

Definition

„SOA is a technology neutral concept of Software architecture that represents one

or more business functions as a service.

The interface description of a service is platform independent.

The implementations of the services are reusable, encapsulated and loosely coupled.

The service interactions are realized by a standardized/uniformed infrastructure.”

[DaimlerChrysler EMEA]

Page 5: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 5

SOA Big Picture

DB

SAPApplikation

Service Bus

J2EE/PAIApplikation

Service Bus

DB

.NETApplikation

Service Bus

DB

HostApplikation

Service Bus

DB

Registry Repository

HostS2

HostS1

.NETS2

.NETS1

IBMS2

IBMS1

HostS3

.NETS3

IBMS3

SAPS3

SAPS1

SAPS2

Process/

Workflow

Engine

Level 1-4 (eEPC)

Level 0 (VCD)Modeled

Business

Processnicht per

Hauspost

Auftrag zur

Auslieferung

Komponente

anschließen /

einbauen

Komponenten

abholen

En

terp

rise S

erv

ice B

us (E

SB

)En

terp

rise S

erv

ice B

us (

ES

B)

Registry Repository Registry Repository

Infrastructure LayerPlatform specific Business LayerEnterprise Business LayerPresentation Layer

Page 6: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 6

Services inside SOA

Page 7: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 7

Service within SOA

� A Service

� is a unit of third party composition

� has no (externally) observable state (encapsulates its state)

� is described platform independent (Interface)

� is potentially already deployed (deploy once, reuse several times)

� is Black Box reuse

� Business Service is a Service

� representing one ore more Business functions

Page 8: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 8

Enterprise Service Bus (ESB)

� Transport and content-based routing (Brokerage: Publish-Subscribe)

� Multi-protocol communication

� Validation and transformation (messages)

� Supports

� Event-handling

� Security (Partial Security on the message layer)

� Monitoring

� Adapter-connectivity

� Dynamic addressing and service binding (Registry)

� Mediation

Page 9: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 9

SOA & ESB

Page 10: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 10

SOA & ESB & Semantics?!

…reuse is depended upon the strengths of semantics…

Page 11: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 11

Semantics with SOA (Approaches)

� SAWSDL (Semantic Annotations for Web Services Description Language Working Group)

� WSDL-S (Web Service Semantics)

� OWL-S (OWL-based Web Service Ontology)

� WSMO (Web Service Modeling Ontology)

� AI Planning

� Semantic Discovery Service (SDS)

� …

Page 12: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 12

EMEO supports loose coupling

EMEO-Layer

OWL WSDL-S

WSDLMediation

Page 13: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 13

Lab based study „440-020“ (IOPE)

Trigger

Calculate

Start-Date

MAS+

Amount is

plausible

Start-Date

is

available

Job-

Controller

input:

(Code Number (SNR),

Amount,

Delivery-Date)

output: Start-Date

Page 14: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 14

Scenario I

Process Server

MAS+

Assembly

Job

Control

Service Provider 1

SOAP/ HTTP

ESB

WSDL_MAS_PLUS

WSDL_BZM

Lookup BZM

Model of

Operation

hours

Run-TimeDesign-Time

Service Provider 2

WID

Deploy

Publish

SOAP/ JMS

IP address

Port

Knowledge

Page 15: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 15

Scenario II (including EMEO)

Process Server

MAS+

Assembly

Job

Control

Service Provider 1

SOAP/ HTTP

ESB

WSDL_MAS_PLUS

WSDL_BZM

Lookup BZM

Model of

Operation

hours

Run-TimeDesign-Time

Service Provider 2

Ontology

WID

Reasoner

Deploy

Inference

SOAP/ HTTP

- Now() > 10am or Now() <= 10am

- Availability (repair work)

- Traffic

Publish

SOAP/ JMS

SOAP/ JMS

Interface-Map

Page 16: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 16

WSDL within EMEO

abstract description

concrete description

Page 17: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 17

WSDL-S within EMEO

Page 18: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 18

Connecting WSDL to OWL over WSDL-S

XML Schema

WSDL

OWL

XSL

modelReference

effect, precondition,

category

schemaMapping

simpleTypecomplexType

Bottom Level

Top Level

modelReference

modelReference

references / uses

operations (modelReference)

inputs and outputs

Page 19: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 19

Connecting WSDL to OWL over WSDL-S (exemplary)

XML Schema / WSDL WSDL-S OWL

WSDL

Page 20: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 20

WSDL-S @ DaimlerChrysler (Lab Approach)

Schema

OWL Ontology

OWL Ontology

Page 21: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 21

Splitting our Domain into Areas

Page 22: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 22

Symbol stuff (extract)

Page 23: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 23

Inference (Protégé + RACER)

Page 24: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 24

Protégé (OWL Viz)

Page 25: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 25

Summary

� SOA is not JABOWS (“Just A Bunch of Web Services”)

� The Enterprise Service Bus (ESB) is not magic

� Semantics become more important in future

� Results are based on Lab

Page 26: Service Oriented Architecture (SOA) - Protég逦 · Service Oriented Architecture (SOA) Michael Herrmann Applying Semantics within SOA. Michael Herrmann (ITP/AM) 2 Agenda Common

Michael Herrmann (ITP/AM) 26

Contact

Michael Herrmann

DaimlerChrysler AGHPC G206 - ITP/AM Technology & Methods MCG

Building Beuttler, Room 0.045Fronäckerstraße 40, 71059 Sindelfingen

Phone: +49 70 31 / 90-8 99 29

[email protected]