The Role of Ontologies in Emergent Middleware: Supporting Interoperability in Complex Distributed...

Post on 30-Jun-2015

215 views 0 download

description

Talk given with Gordon Blair at the Middleware Conference 2011. The paper is available at: http://hal.inria.fr/inria-00629059/en

transcript

The Role of Ontologies in Emergent Middleware:

Supporting Interoperability in Complex Distributed Systems

Gordon Blair, Amel Bennaceur, Nikolaos Georgantas, Paul

Grace, Valerie Issarny, Vatsala Nundloll and Massimo Paolucci

A Few Words from Danny Cohen

In the beginning ARPA created ARPANET. And the ARPANET was without form and void. And darkness was upon the deep. And the spirit of ARPA moved upon the face of the network and ARPA said, 'Let there be a protocol,' and there was a protocol. And ARPA saw that it was good. And ARPA said, 'Let there be more protocols,' and it was so. And ARPA saw that it was good. And ARPA said, 'Let there be more networks,' and it was so.

Gordon’s Distributed Systems Version

In the beginning there was small scale experimentation. And the experiments were without abstraction or openness. And darkness was upon the deep. And the spirit of the OMG moved upon the face of distributed systems and said, 'Let there be a middleware standard,' and there was a standard. And OMG saw that it was good. And Microsoft said, 'Let there be more standards,' and it was so. And Microsoft saw that it was good. And the community said, 'Let there be more networks and of course also mobility, ubiquity and cloud computing for good measure,' and it was so.....

…. but is it good?

Early distributed systems• Limited in scale and heterogeneity, issues such as

openness, and support for QoS not a big issue

Internet-scale distributed systems• Large scale and significant levels of heterogeneity

(platforms, languages and middleware), significant advances in supporting openness and QoS

The complex distributed systems of tomorrow• Significant increases in scale and also heterogeneity in all

its dimensions (cf. systems of systems); more dynamic; major research questions concerning openness and QoS

Illustrating the challenge:Towards environmental observatories

Motivation• Many well-known challenges to the environment

• Global warming, pollution, diminishing of natural resources, threats to bio-diversity, etc.

• The environment decade [Al Gore, Earth in the Balance]• Book also focuses on the potential role of technology in addressing

these problems

What is an environmental observatory?• Investigating the role of contemporary computing

technologies, particularly where pervasive technologies meet distributed systems in supporting the (real-time) monitoring and management of the natural environment

Focus on Interoperability

Scalability

Security

Privac

ySelf-

Management

“the extent by which two implementations of systems from different manufacturers can co-exist and work together by merely relying on each other’s services as specified by a common standard”.

Interoperability

A Closer Look at Interoperability

The challenge• Differences in data formats and behaviour• Applies at all levels of a layered architecture, e.g. at

the application and middleware level(s)

Responses• From the middleware community: standards, software

bridges, intermediary- and substitution-based solutions

• From the web services community: semantic web services and ontologies

Towards Emergent Middleware

Networked System (NS1)

Networked System (NS2)

Discovery Enabler

Synthesis Enabler

Learning Enabler

Partial Networked System Model

Networked System Models (NS1 & NS2)

Ontologies

Discover

SynthesizeNetworked

System (NS1)Networked

System (NS2)Emergent Middlware

10

EU Travel Agency

The Travel Agency Scenario

Client Service

ClientService

RPC-SOAP

HTTP-REST

US Travel Agency

Differences in the data format data mismatchesDifferences in the Interaction protocol Coordination model middleware-level behavioural mismatches Business logic application-level behavioural mismatches

EmergentMiddleware

Ontologies in Action

Ontologies in a Nutshell

Ontology = Knowledge Base +

Knowledge Base = TBox + ABox

Reasoning• Class membership• Classes equivalence • Consistency• Classification Reasoning reducible to subsumption ( )⊑

Ontology Web Language (OWL)• Based on Description Logic• Powerful but still decidable ontology

language

Terminological axioms (TBox): Schema• Concept (class)• Property (role, relation)

Assertional axioms (ABox): Data• Individual (instance)

Inference System(Reasoner)

Knowledge Base

Inference System

Travel Agency Ontology

Classes equivalence

Concept\attribute definition

14

Middleware Ontology

Middleware-level Ontology

Relation definition

Classmembership

16

Ontology-based Networked System Model

Functional Semantics• Affordance

• The high-level functionality of a system• <{Req,Prov},FunctionalConcept,Inputs,Outputs>• e.g., <Req, TravelReservation, Preferences, Travel>

• Interface• A set of observable actions• <mdw_primitive,app_action, Inputs,Outputs>• e.g., <SendSOAPRequest, MakeReservation,

{flightID, roomID, carID}, >

Behavioural semantics• The way the observable actions are coordinated• A process which actions are described in the interface

Non-Functional Properties• Constraints on the behaviour

Interface

Networked System

Affordance Behaviour1

0..n

1

Ontologies

Non-functional Properties

1

Emergent Middleware Synthesis Informed by Ontologies

Networked System (NS2)Affordance MatchingNetworked System (NS1)

Ontologies

Does it make sense for NS1 and NS2 to interact?

Emergent Middleware Synthesis Informed by Ontologies

Middleware Abstraction Middleware Abstraction

Networked System (NS2)Affordance Matching

Yes

Networked System (NS1)

Middleware-agnostic Networked System (NS2)

Middleware-agnostic Networked System (NS1)

Ontologies

Abstract from the communication protocol details and concentrate on

application semantics

Emergent Middleware Synthesis Informed by Ontologies

Middleware Abstraction Middleware Abstraction

Behavioral Matching

Networked System (NS2)Affordance Matching

Yes

Networked System (NS1)

Middleware-agnostic Networked System (NS2)

Middleware-agnostic Networked System (NS1)

Ontologies

Relies on ontology-based model checking to generate the model of the

mediator that ensures their behavioural interoperability

Emergent Middleware Synthesis Informed by Ontologies

Middleware Abstraction Middleware Abstraction

CompatibleSynthesis

Behavioral Matching

Networked System (NS2)Affordance Matching

Yes

Emergent Middleware

Networked System (NS1)

Middleware-agnostic Networked System (NS2)

Middleware-agnostic Networked System (NS1)

Ontologies

Refines the mediator model into a concrete software artifact: an emergent middleware

Emergent Middleware Synthesis Informed by Ontologies

Middleware Abstraction Middleware Abstraction

AdaptationCompatible

Partially compatibleNot compatible

Synthesis

Behavioral Matching

Networked System (NS2)Affordance Matching

Yes

Emergent Middleware

Failure

Networked System (NS1)

Middleware-agnostic Networked System (NS2)

Middleware-agnostic Networked System (NS1)

Ontologies

Performs additional adaptation

Overall Reflections

Interoperability remains a fundamental problem in the complex distributed systems of today

Emergent middleware offers promise in addressing interoperability in a future-proof manner

Ontologies have a key role to play in emergent middleware supporting conceptual reasoning

Many outstanding challenges• Ontologies: availability, processing overhead, fuzziness,

learning, heterogeneity in ontologies, alignment• Emergent middleware: foundations, dependability,

incompatibility, the role of end users including experts

Thank you

Questions?

24

Ontology-based Interface Mapping

FindTrip({destination,departureDate,returnDate,needCar},flightList)

ConfirmTrip(tripID,Ack)

SelectFlight({destination, departureDate, returnDate}, flightList)

SelectHotel({checkIndate, checkOutdate, pref}, roomList)

SelectCar({dateFrom, dateTo, model}, carList)

MakeReservation({flightID, roomID, carID}, Ack)

US Travel Agency Client Interface

EU Travel Agency Service Interface

25

Behavioral Matching

SelectFlight

MakeReservation

SelectFlight FindTrip

MakeReservation ConfirmTrip

FindTrip ConfirmTrip

SelectHotel

SelectCar

SelectFlight

SelectHotel

US Travel Agency Client Behavior

EU Travel Agency Service

Behavior

Mapping Processes

26

Ontology-based Mediator Synthesis

Middleware Ontology

Application Ontology

MakeReservation({flightID, roomID, carID}, Ack)

<ReceiveSOAPRequest, ConfirmTrip,tripID,>

<HTTP_POST, MakeReservation({flightID, roomID, carID} >

<SendSOAPResponse,ConfirmTrip, , Ack>

<HTTP_Response, MakeReservation, , Ack>

ConfirmTrip(tripID,Ack)

Refinement