the rea-dsl

28
Business Informatics Group Institute of Software Technology and Interactive Systems Vienna University of Technology Favoritenstraße 9-11/188-3, 1040 Vienna, Austria phone: +43 (1) 58801-18804 (secretary), fax: +43 (1) 58801-18896 [email protected], www.big.tuwien.ac.at The REA-DSL A Domain Specific Language For The Resource-Event-Agent Ontology C. Sonnenberg, C. Huemer, B. Hofreiter, D. Mayrhofer, A. Braccini TU Vienna, University of Liechtenstein, LUISS University Dieter Mayrhofer

Upload: zia

Post on 24-Jan-2016

45 views

Category:

Documents


0 download

DESCRIPTION

The REA-DSL. A Domain Specific Language For The Resource-Event-Agent Ontology. C. Sonnenberg , C. Huemer , B. Hofreiter , D. Mayrhofer , A. Braccini TU Vienna , University of Liechtenstein , LUISS University. Dieter Mayrhofer. Background and Motivation. Fish Company Business Model. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: The REA-DSL

Business Informatics Group

Institute of Software Technology and Interactive Systems Vienna University of Technology

Favoritenstraße 9-11/188-3, 1040 Vienna, Austriaphone: +43 (1) 58801-18804 (secretary), fax: +43 (1) [email protected], www.big.tuwien.ac.at

The REA-DSL

A Domain Specific Language For The Resource-Event-Agent Ontology

C. Sonnenberg, C. Huemer, B. Hofreiter, D. Mayrhofer, A. BracciniTU Vienna, University of Liechtenstein, LUISS University

Dieter Mayrhofer

Page 2: The REA-DSL

Background and Motivation

2

Fish Company Business Model

Sy’s Fish Sale Company

Page 3: The REA-DSL

The REA Ontology

3

REA Example

• REA meta model

• REA object constellation

inside outside

Page 4: The REA-DSL

Motivation

4

Complex REA Models

Creating an easy to understand domain specific language for REA

Page 5: The REA-DSL

Systematic Development of Domain Specific Languages

5

By Strembeck and Zdun

1. Identify elements in the REA ontology2. Derive the abstract syntax of the REA model including the core

language model and the language model constraints (multiple revision cycles)

3. Define the DSL behavior, i.e. determining how the language elements of the DSL interact to produce the intended behavior

4. Define the DSL concrete syntax 5. Implement a modeling tool support for the DSL

6. Skipped integrating the DSL into a software platform

Page 6: The REA-DSL

The REA-DSL

6

Overview

• Old model

• New REA-DSL model: three model types• Duality model• Value chain model• Resource model

Page 7: The REA-DSL

Element Description

Event/EventType.

InsideAgent or InsideAgentType.

OutsideAgent or OutsideAgentType.

Resource or Resource Type.

Commitment. An obligation to perform an event in the near future.

Solid Reference. EventType referencing a Resource or Agent.“reserves”

Dotted Reference. EventType referencing a ResourceType or AgentType. “specifies

Element Description

Event(Type)Series. Indicating multiple Event(Types).

InsideAgentSeries. Indicating multiple InsideAgents

OutsideAgentSeries. Indicating multiple OutsideAgents

ResourceSeries. Indicating multiple Resources.

BulkResource (NailResource). Storing not each individual Resource, just quantity on hold.

BulkResourceSeries. Indicating multiple BulkResources.

T The T indicates, if a resource, agent, or event is an instance or a type

Event

REA Commitments

R1

R3

RS2

RS4

IEventSeries

Page 8: The REA-DSL

The REA-DSL

8

Duality Model

Meta model Model instance

Page 9: The REA-DSL

The REA-DSL

9

Page 10: The REA-DSL

The REA-DSL

10

Value Chain Model

Meta model Model instance

Page 11: The REA-DSL

11

Page 12: The REA-DSL

PayrollProcess Buying

TruckAcquisition Transport Cleaning Selling

CashDisbursementLabor

LaborAquisition

PaymentForFish

FishObtained

PaymentForTruck

TruckLease

TransportIn

TransportOut

CleanIn

CleanOut

FishSale

Payment

Cash Cash

Cash

Cash

Labor

Labor

Labor

Labor

Labor

Fish

Fish Fish

Fish

FishFishTruck

Truck

Logistics Truck Rental

Cashier Truck Rental

Cashier CashierWorker

Worker

Fisherman

FishermanPurchaserHuman Resource

Driver

Driver

Cleaner

Cleaner Cashier

Salesman Customer

Customer

Page 13: The REA-DSL

class REA-PlanningMM

Reciprocity

IncrementPlan DecrementPlan

PlanEntitySet

CommitmentLayer TypeLayer

CommitmentCommits EconomicEv entType

EconomicEv entTypeSeries

Reserv eResource

EconomicResource EconomicResourceType

EconomicResourceSeries

Reserv eAgent

EconomicAgent EconomicAgentType

{XOR} {XOR}

InsideAgent OutsideAgent

InsideAgentSeries OutsideAgentSeries

1 1..*

1

1

1

1

1

1

1

1

1

1

1..* 1

0..*

1 1

0..* 0..*

1

11..*

0..*

1

0..*

1

0..*

1..*

Page 14: The REA-DSL

Reci

proc

ityPlanning TypeLevel

Salesman

Customer

CarSale

MechanicSalesman

Car

Customer

IPayment Cash

Cashier Customer

Extras

CarSellCommitment

PayCommitment

T T

T

T

T

Page 15: The REA-DSL

DU

ALIT

YOperational Level

CarSale

MechanicSalesman

Car

Customer

IPayment Cash

Cashier Customer

Extras

Page 16: The REA-DSL

CommitmentCarSale

Order1/1.3.2011

Order2/4.3.2011

EmployeeType

Salesman

Cashier

Mechanic

Customer

Mr. Woodfield

Mr. Penney

Car

Ferrari/#2S34XXZ

CarType

Ferrari F40

Jaguar RX

VW Golf

CustomerType

RegularCustomer

SpecialCustomer

Employee

John

Max

Rudi

Alex

Mat

Commits

Order1 is made on 1.3.2011. Salesman John commits to sell a specific car Ferrari #2S34XXZ of Type Ferrari F40 to the customer Mr. Woodfield.

CarSaleType

Regular Sale

Page 17: The REA-DSL

CommitmentCarSale

Order1/1.3.2011/

Order2/4.3.2011/

Extra

TomTom/#234ASD

TomTom/#235XYZ

CarCover Fer/#1XXX

EmployeeType

Salesman

Cashier

Mechanic

CarSaleType

Regular Sale

Customer

Mr. Woodfield

Mr. Penney

Car

Ferrari/#2S34XXZ

CarType

Ferrari F40

Jaguar RX

VW Golf

ExtraType

TomTom

CarCover

SaleCommitExtra

Order1/TomTom1

Order1/TomTom2

Order1/CarCover1

CustomerType

RegularCustomer

SpecialCustomer

Employee

John

Max

Rudi

Alex

Mat

Commits

Reserves

Order1 is made on 1.3.2011. Salesman John commits to sell a specific car Ferrari #2S34XXZ of Type Ferrari F40 to the customer Mr. Woodfield. Additionally 2 extras of Type TomTom and 1 extra of Type CarCover are reserved. For the actual day of the CarSale Event Salesman Max and two not yet known employees of type Mechanic are reserved.

Specify #Mechanics

2

Page 18: The REA-DSL

CommitmentCarSale

Order1/1.3.2011/2Mecha

Order2/4.3.2011/1Mecha

Extra

TomTom/#234ASD

TomTom/#235XYZ

CarCover Fer/#1XXX

EmployeeType

Salesman

Cashier

Mechanic

CarSaleType

Regular Sale

CarSale

Sale1/7.3.2011

Customer

Mr. Woodfield

Mr. Penney

Car

Ferrari/#2S34XXZ

CarType

Ferrari F40

Jaguar RX

VW Golf

ExtraType

TomTom

CarCover

SaleCommitExtra

Order1/TomTom1

Order1/TomTom2

Order1/CarCover1

SaleStockFlowExtra

Sale1/TomTom1

Sale1/TomTom2

Sale1/CarCover1

CustomerType

RegularCustomer

SpecialCustomer

Employee

John

Max

Rudi

Alex

Mat

Commits

Reserves

Order1 is made on 1.3.2011. Salesman John commits to sell a specific car Ferrari #2S34XXZ of Type Ferrari F40 to the customer Mr. Woodfield. Additionally 2 extras of Type TomTom and 1 extra of Type CarCover is reserved. For the actual day of the CarSale Event Salesman Max and two not yet known employees of type Mechanic are reserved.

Sale1 happens on the 7.3.2011 and is connected to the Commitment Order1. The Ferrari #2S34XXZ, two specific TomToms and one specific CarCover is sold by Salesman Max to the Customer Mr. Woodfield.

Specify #Mechanics

2

Page 19: The REA-DSL

CommitmentCarSale

Order1/1.3.2011/2Mecha

Order2/4.3.2011/1Mecha

Extra

TomTom/#234ASD

TomTom/#235XYZ

CarCover Fer/#1XXX

EmployeeType

Salesman

Cashier

Mechanic

CarSaleType

Regular Sale

CarSale

Sale1/7.3.2011

Customer

Mr. Woodfield

Mr. Penney

MechParticipateSale

Sale1/Rudi

Sale1/Alex

Car

Ferrari/#2S34XXZ

CarType

Ferrari F40

Jaguar RX

VW Golf

ExtraType

TomTom

CarCover

SaleCommitExtra

Order1/TomTom1

Order1/TomTom2

Order1/CarCover1

SaleStockFlowExtra

Sale1/TomTom1

Sale1/TomTom2

Sale1/CarCover1

CustomerType

RegularCustomer

SpecialCustomer

Employee

John

Max

Rudi

Alex

Mat

Commits

Reserves

Order1 is made on 1.3.2011. Salesman John commits to sell a specific car Ferrari #2S34XXZ of Type Ferrari F40 to the customer Mr. Woodfield. Additionally 2 extras of Type TomTom and 1 extra of Type CarCover is reserved. For the actual day of the CarSale Event Salesman Max and two not yet known employees of type Mechanic are reserved.

Sale1 happens on the 7.3.2011 and is connected to the Commitment Order1. The Ferrari #2S34XXZ, two specific TomToms and one specific CarCover is sold by Salesman Max to the Customer Mr. Woodfield. The two Mechanics Rudi and Alex prepare the car.

Specify #Mechanics

2

Page 20: The REA-DSL

Conclusion

20

• Unambiguous domain specific language

• Easier to understand

• Less complexity

• Tool support

Page 21: The REA-DSL

Thank you

21

Thank you!

Page 22: The REA-DSL

Backup

22

Backup

Page 23: The REA-DSL

The REA-DSL

23

Resource Model

Meta model Model instance

Page 24: The REA-DSL

Future Work

24

• Adding commitments to REA

Sale

SalesPerson Customer

Fish Book

Storekeeper

RestaurantSale

PrivateSale

Quantity:int

Page 25: The REA-DSL

Future Work

25

• Add properties and derive DB design for enterprise information systems

Page 26: The REA-DSL

Future Work

26

• Adding types to REA

Page 27: The REA-DSL

Future Work

27

• Extending REA to support policy infrastructure

Page 28: The REA-DSL

Future Work

28

• Car and nail resources