wp3 – negotiation framework

38
Waterford Institute of Technology Telecommunication Software & Systems Group WP3 – Negotiation Framework Zohra Boudjemil & Claire Fahy

Upload: sarila

Post on 09-Jan-2016

55 views

Category:

Documents


5 download

DESCRIPTION

WP3 – Negotiation Framework. Zohra Boudjemil & Claire Fahy. D3.1 – Languages, Models and Agreements Specifications (Task 3.1). Zohra Boudjemil email: [email protected]. Content. ONE Objectives & Requirements Modelling Requirements Related Work The ONE MetaModelling Approach - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: WP3 – Negotiation Framework

Waterford Institute of TechnologyTelecommunication Software & Systems Group

WP3 – Negotiation Framework

Zohra Boudjemil & Claire Fahy

Page 2: WP3 – Negotiation Framework

Waterford Institute of TechnologyTelecommunication Software & Systems Group

D3.1 – Languages, Models and Agreements Specifications

(Task 3.1)

Zohra Boudjemil

email: [email protected]

Page 3: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 3

Content

ONE Objectives & Requirements Modelling Requirements

Related Work The ONE MetaModelling Approach

Metamodelling ONE Modelling Layers

ONE Negotiation Metamodel Information MetaModel Protocol MetaModel

Instantiation Example – English Auction Negotiation MetaModel towards the ONE Framework

Negotiation Model Editor Transformation

Page 4: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 4

ONE Objectives & Requirements

Definition of a Negotiation MetaModel allowing the design of different types of business negotiation processes.

Scope : E-business negotiations, Distributed environment, SMEs. Modelling Requirements based on business requirements defined by

WP1.

E-business Negotiations

SMEDistributed Environment

WP1 {D1.1,D1.2}

Negotiation

MetaModelBusiness

Requirements

Concepts

Modelling

Constraints

buyer process

rules

strategy

auction

Page 5: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 5

Related Work - (Meta)Modelling Negotiation

Different negotiation (meta-)models developed to describe and manage the e-negotiation domain Models

• Auction Models (Rolli and Eberhart, Wurman et al.) Focus on the auction mechanisms (rules, processes)

• Bargain Models (Chiu et al.) Focus on e-contract negotiation in a bargain situation, not open for competitive

negotiations (auction)

• Generic Negotiation Protocol (Benyoucef and Rinderle) No support of the “role” concept

Standards• FIPA Negotiation Interaction Protocols (IP)

Specify the interaction aspect without explicit definition of the negotiation rules.

• OMG Negotiation Facility (Bilateral Neg. Model, Multilateral Neg. Model) Specific models which do not support other types of negotiation Digital Product Modelling Language (DPML) doesn’t support actions, conditions to

allow the specification of negotiation rules Limited roles (initiator, respondent)

Page 6: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 6

The ONE MetaModelling Approach

Metamodelling approach based on the MDA architecture A metamodel describes the rules and constraints of metatypes and meta-

relationships. The meta-types and meta-relationships define semantics.

Protocol MM Information MM

Negotiation MetaModel

Negotiation Model Information Model

Negotiation Process Data Instances

Negotiation Instance

M0

M1

M2

instantiated

composed Of related to

Page 7: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 7

Negotiation Metamodel Concepts

The ONE MetaModel (Negotiation MetaModel) describes the constituencies of a negotiation model and their

relationships by capturing their semantics from the e-business negotiation domain.

is specified using UML covering two main aspects

• Information – what?• Protocol – how?

Core concepts Negotiation defines what a negotiation is and how it is

executed. They can be public or private. Actor represents a legal entity (person or SME) taking part in a

negotiation process.

Page 8: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 8

Negotiation MetaModel – Core concepts

Page 9: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 9

Information MetaModel

Defines the what? of a negotiation, i.e. information

Core concepts Item represents the subject of the negotiation. It describes

information about products/goods/services which are subject of the negotiation.

Issue represents the matter involved parties dispute about. Criteria, specific type of rules representing link between

information part and protocol part.

Page 10: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 10

Information MetaModel - Core Concepts

Page 11: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 11

Protocol MetaModel

Defines the how? of negotiation representing the process. Allows for transparency of the negotiation process. Core concepts

NegotiationProtocol represents the abstraction of the negotiation process.

NegotiationRole describes the types of actors.

ProtocolBehaviour structures the dynamic aspect of the NegotiationProtocol specifying involvement of particular NegotiationRole during the negotiation.

NegotiationRule governs the NegotiationProtocol.

NegotiationMessage defines the communication between the involved parties.

Page 12: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 12

Protocol MetaModel - Core Concepts

Page 13: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 13

Protocol MetaModel - Core Concepts (cont.)

Two NegotiationRoles: Owner - driving force: instantiates, configures, runs, terminates negotiation. Participant - involved in negotiation.

ProtocolBehaviour describes the dynamic aspects of NegotiationRole in a stage model (statechart) based on three generic negotiation stages: Prenegotiation - all preceding activities

• Admission - admission mechanisms of participant based on admission rules and negotiation visibility.

• Readiness - explicit status announcing readiness to begin negotiating Negotiating - exchange of negotiation messages between parties following

interaction and negotiation rules. Acceptance - agreement reached by accepted offer between two or more

parties.

Page 14: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 14

Protocol MetaModel - Core Concepts (cont.)

Page 15: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 15

Protocol MetaModel - Core Concepts (cont.)

NegotiationMessage specifies interaction part of NegotiationProtocol. RequestForProposal specifies subject and matter (item &

issue), can include negotiation rules. Offer describes business proposal related to item and specifies

values to issue.

Response answers received message depending on its type.

Reason explains response message.

Agreement specifies the mutual arrangement between two or more parties, based on accepted offer.

Notification specifies negotiation information other than the possible negotiation messages types.

Page 16: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 16

Protocol MetaModel - Core Concepts (cont.)

Page 17: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 17

Protocol MetaModel - Core Concepts (cont.)

NegotiationRule

Governs the negotiation protocol.

Defined in correlation to information and protocol.

Public to all parties

Based on expressions that can be evaluated and executed.

Two types• Criteria related to information part.• ProtocolRule related to protocol part.

Page 18: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 18

Protocol MetaModel - Core Concepts (cont.)

Page 19: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 19

Instantiation Example - English Auction

English Auction Properties vs. modelling concepts One seller => Owner One or more buyers => Participant

Public negotiation => visibility Product/goods to sell => item Highest bid designs the winner => price as an issue

Start price defined => criteria Start time and end time => protocol rules

Page 20: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 20

Instantiation Example - English Auction Painting Information Model

Item: painting Issue: price

Criteria (Defined in the Negotiation Model) StartPriceCriteria “price must be higher than start price” CurrencyCriteria “currency must be the same as defined currency” AuctionCriteria “price must be higher than price of current accepted offer”

Page 21: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 21

Instantiation Example - English Auction

Negotiation Model

2 protocol behaviours• For owner: OwnerProtoclBehaviour

• For participant: ParticipantProtoclBehaviour

3 protocol rules• AdmissionRule

• NegotiatingStartTime

• NegotiatingTimeOutRule

Page 22: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 22

Page 23: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 23

Towards the ONE Framework

Negotiation Model Editor Based on Ecore Negotiation MetaModel as DSL Automatic Transformation of the UML Negotiation MetaModel

(EA project) into the Ecore Negotiation MetaModel

Runtime processes Based on the Engine Process Definition language (JPDL) Transform the protocol defined in Negotiation Models to JPDL

processes

Page 24: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 24

Transformation Mechanisms Based on Atlas Transformation Tools

Source MetaModel - Ecore Negotiation MM Target MetaModel - Ecore JPDL MM Transformation rules – conform to the transformation MM

Negotiation MM(Source MM)

(Engine) JPDL MetaModel(Target MM)

TransformationRulesMaps

fromMaps to

Neg. ModelsNeg. Models

Neg. ModelsEng. Models

Eng. ModelsEng. Models

Transformation Tools

input

input output

One Runtime Engine

input

DKB Repository

stored

Instance of Instance of

Page 25: WP3 – Negotiation Framework

Zohra BoudjemilONE Technical Review, Brussels 25

Conclusion

Negotiation MetaModel include the two aspects of negotiation in a separate way allowing to model different business context (Information) combined to different negotiation processes (Protocol).

Addressing the ONE Modelling Requirements Design the different negotiation types based on the common negotiation

concepts of the MetaModel

Support distributed negotiations with the Role and ProtocolBehaviour concepts.

Allowing the transparency of the negotiation rules defined as a public information in the negotiation model.

Design of a formal negotiation process based on the negotiation protocol stage model (statechart).

Page 26: WP3 – Negotiation Framework

Waterford Institute of TechnologyTelecommunication Software & Systems Group

Tasks 3.2, 3.3 & 3.4

Claire Fahy

email: [email protected]

Page 27: WP3 – Negotiation Framework

Claire FahyONE Technical Review, Brussels 27

Task 3.2 Design Tools

Task Objectives: Development of an open source toolkit (or factory) that enables

users to easily design/create their own negotiation. The models created in the Factory (layer M1) are model

instances of the ONE metamodel (layer M2) . Users can “drag and drop” elements from the meta-model (Task

3.1). The models are persisted to the Distributed Knowledge Base

which the factory will be connected to. In order to reuse models, the editor has to load and modify pre-existing models.

The models are instantiated using the “Set-Up” procedure and then run on the ONE Engine.

Page 28: WP3 – Negotiation Framework

Claire FahyONE Technical Review, Brussels 28

Task 3.2 Design Tools

Progress: The ONE factory is built as a rich client application based on

the Eclipse framework. To increase re-usability of the models, they are divided into two

types:• Information Model, the business domain concepts (the “nouns”of the

negotiation) – the information is represented as a class diagram.

• Negotiation Model, the flow and execution of the negotiation – the negotiation is represented as a state flow chart.

Page 29: WP3 – Negotiation Framework

Claire FahyONE Technical Review, Brussels 29

ONE Factory

Page 30: WP3 – Negotiation Framework

Claire FahyONE Technical Review, Brussels 30

Task 3.2 Design Tools

Future Work Actions performed during the state of negotiation will be

represented using a java script language (allowing the business analysis to define the actions).

BeanShell is a small, free, embeddable Java source interpreter with object scripting language features, written in Java.

BeanShell executes standard Java statements and expressions but also extends Java into the scripting domain with common scripting language conventions and syntax.

Page 31: WP3 – Negotiation Framework

Claire FahyONE Technical Review, Brussels 31

Task 3.3 Engine/Runtime Components

Task Objectives Develop runtime tools to support the execution (engine) and

management (console) of negotiations in the ONE distributed environment.

Creation of a P2P platform for inter-actor negotiation. ONE entities will communicate via a platform independent

communication protocol. Interfacing of the runtime with the recommender strategies

(WP4) and the trust and reputation mechanisms (WP5). Towards the realisation of a completed MDA approach, the

model instance outputs from ONE set-up are transformed automatically to a platform specific implementation (M0).

Page 32: WP3 – Negotiation Framework

Claire FahyONE Technical Review, Brussels 32

Task 3.3 Engine/Runtime Components

Task Progress The negotiation state machines defined in the models are run via the JBPM

process language, jPDL and its associated process engine. The Negotiation Console/Manager provides an appropriate GUI for

managing negotiations using the ZK framework. Communication between ONE nodes is realised in the engine via the

MULE Enterprise Service Bus. SOAPOD, a peer-to-peer application server (www.soapod.org), has been

selected to provide a web service container and service registry. The focus of the first version of the Negotiation Engine is on the

implementation of a basic negotiation state machine and node communication(P2P). The relevant action handlers have been implemented.

Initial basic interfaces between recommender and security functionality have been created.

Page 33: WP3 – Negotiation Framework

Claire FahyONE Technical Review, Brussels 33

ONE Engine/Console

Page 34: WP3 – Negotiation Framework

Claire FahyONE Technical Review, Brussels 34

Task 3.3 Engine/Runtime Components

Future Work Full Transformation from the model instances to JPDL

instances. Development of transformation rules to be used with OpenArchitectureWare and ATL.

Enhancements to messaging mechanisms. Creation of more advanced action handlers to deal with more

complex negotiation scenarios. Further co-operation with SOAPOD in enhancing the P2P

service registry to meet the ONE needs.

Page 35: WP3 – Negotiation Framework

Claire FahyONE Technical Review, Brussels 35

Task 3.4 Distributed Knowledge Storage & Sharing

Task Objectives Development of a Distributed Knowledge Base (DKB) that

allow users to store their negotiations, record their progress and share data with other parties.

The P2P nature of the ONE system requires that data should be stored in a distributed fashion.

Data is shared between members of trusted communities and therefore the DKB will work closely together with security and reputation activities (WP5).

Page 36: WP3 – Negotiation Framework

Claire FahyONE Technical Review, Brussels 36

Task 3.4 Distributed Knowledge Storage & Sharing

Task Progress Investigation of the requirements for information sharing relevant to ONE

for e.g. models, negotiation logs, reputation data etc; Analysis of specific characteristics relevant to the data (e.g. sharing policy,

size, frequency of update) which would have an impact on the design of the distributed storage mechanism.

A first prototype of the information repository has been created which is compliant with the Java Content Repository API (JCR, JSR-170). Opensource JackRabbit is used to implement the API.

Support for storage and retrieval of the following files:• Negotiation Models (XML)

• Recommender Models (XML)

• User Profiles (XML)

• Trust and Repuation data (XML) DKB available as a webservice

Page 37: WP3 – Negotiation Framework

Claire FahyONE Technical Review, Brussels 37

Distributed Knowledge Base (<<IMAGE>>)

Page 38: WP3 – Negotiation Framework

Claire FahyONE Technical Review, Brussels 38

Task 3.3 Engine/Runtime Components

Future Work Implementation of P2P dimension to the DKB (JXTA?/DHT?) ….