Using Ontologies for Flexibly Specifying Multi-User Processes ICSE - - PowerPoint PPT Presentation

using ontologies for flexibly specifying multi user
SMART_READER_LITE
LIVE PREVIEW

Using Ontologies for Flexibly Specifying Multi-User Processes ICSE - - PowerPoint PPT Presentation

Using Ontologies for Flexibly Specifying Multi-User Processes ICSE 2010 Workshop on Flexible Modeling Tools Cape Town, South Africa, 2 May 2010 Gregor Gabrysiak , Holger Giese and Andreas Seibel System Analysis and Modeling Group Hasso Plattner


slide-1
SLIDE 1

Using Ontologies for Flexibly Specifying Multi-User Processes

ICSE 2010 Workshop on Flexible Modeling Tools Cape Town, South Africa, 2 May 2010 Gregor Gabrysiak, Holger Giese and Andreas Seibel System Analysis and Modeling Group Hasso Plattner Institute University of Potsdam

slide-2
SLIDE 2

Formal Tools

Pros

  • automatic detection of errors
  • maintenance throughout the

model is simple

  • reusable throughout a project

Cons

  • restricted by metamodel
  • early commitment
  • overhead for small projects

Figure: UML Model (MS Visio)

Gregor Gabrysiak, FlexiTools 2010, 2 May 2010 Formal vs. Informal Tools 2

slide-3
SLIDE 3

Informal and General-Purpose Tools

Pros

  • easy to use
  • everything can be captured
  • degrees of freedom are

similar to whiteboards Cons

  • no metamodel
  • changing references
  • presentable, rarely reusable

D A B1 B2 C

Figure: Process Model (Keynote)

Gregor Gabrysiak, FlexiTools 2010, 2 May 2010 Formal vs. Informal Tools 3

slide-4
SLIDE 4

Bridging the Gap

Formal Informal Flexible Metamodel Ontologies as Flexible Metamodels

  • less restrictive
  • missing concepts can be added on demand
  • capable of capturing the modeler’s intent
  • a model can always be interpreted with its

corresponding metamodel

Gregor Gabrysiak, FlexiTools 2010, 2 May 2010 Introducing Ontologies 4

slide-5
SLIDE 5

Using a Formal Modelling Tool

customer:Role boss:Role assistant:Role

M2 M1

<<instanceOf>> <<instanceOf>> <<instanceOf>> Gregor Gabrysiak, FlexiTools 2010, 2 May 2010 Introducing Ontologies 5

Metamodel (Formal Tool) User Generated Model

slide-6
SLIDE 6

Extending the Meta Model

jane:Boss john:Assistant max:Customer

M1

<<instanceOf>> <<instanceOf>> <<instanceOf>>

M2

Gregor Gabrysiak, FlexiTools 2010, 2 May 2010 Introducing Ontologies 6

Metamodel Project- Specific User Generated Model

slide-7
SLIDE 7

Using Ontologies as Meta Model

M1 M2

<<instanceOf>> <<instanceOf>> <<instanceOf>> jane:Boss john:Assistant max:Customer Gregor Gabrysiak, FlexiTools 2010, 2 May 2010 Introducing Ontologies 7

Basic Ontology Project- Specific User Generated Model

slide-8
SLIDE 8

Creating Behavioral Specifications I

Using the terminology defined in the ontology, an analyst can...

  • describe an observed situation
  • describe the follow-up state
  • the difference between both specifies an action
  • specified in the terminology defined in the ontology

receiver

Gregor Gabrysiak, FlexiTools 2010, 2 May 2010 Modelling with Ontologies 8

Initial state Follow-up state

slide-9
SLIDE 9

Creating Behavioral Specifications II

receiver

  • ++

,"-").", ++ /"#$", ++%%(00(-1"$ %2%&'()* 01)/%2%34/056", 7%2%8//)/0(#0 %2%9,5:5/(* 1(/

!"#$%9,5:5/(*

Gregor Gabrysiak, FlexiTools 2010, 2 May 2010 Modelling with Ontologies 9

slide-10
SLIDE 10

So, what do we have?

  • behavioral and situational

specification of a process

  • formal specifications that

can be simulated

  • all specifications reference

elements of the flexible metamodel

  • specified in the

terminology defined in the

  • ntology
  • specification is affected by

changes in the ontology

++ ,"-").", ++ /"#$", ++%%(00(-1"$ %2%&'()* 01)/%2%34/056", 7%2%8//)/0(#0 %2%9,5:5/(* 1(/

!"#$%9,5:5/(*

Gregor Gabrysiak, FlexiTools 2010, 2 May 2010 Modelling with Ontologies 10

slide-11
SLIDE 11

So, what do we have?

  • behavioral and situational

specification of a process

  • formal specifications that

can be simulated

  • all specifications reference

elements of the flexible metamodel

  • specified in the

terminology defined in the

  • ntology
  • specification is affected by

changes in the ontology

++ ,"-").", ++ /"#$", ++%%(00(-1"$ %2%&'()* 01)/%2%34/056", 7%2%8//)/0(#0 %2%9,5:5/(* 1(/

!"#$%9,5:5/(*

Gregor Gabrysiak, FlexiTools 2010, 2 May 2010 Modelling with Ontologies 10

slide-12
SLIDE 12

So, what do we have?

  • behavioral and situational

specification of a process

  • formal specifications that

can be simulated

  • all specifications reference

elements of the flexible metamodel

  • specified in the

terminology defined in the

  • ntology
  • specification is affected by

changes in the ontology

++ ,"-").", ++ /"#$", ++%%(00(-1"$ %2%&'()* 01)/%2%34/056", 7%2%8//)/0(#0 %2%9,5:5/(* 1(/

!"#$%9,5:5/(*

Gregor Gabrysiak, FlexiTools 2010, 2 May 2010 Modelling with Ontologies 10

slide-13
SLIDE 13

When Working with Flexible Metamodels...

We have to deal with ...

  • addition, modification, and removal of
  • classes, properties, methods, and associations

+

2

Gregor Gabrysiak, FlexiTools 2010, 2 May 2010 Handling Ontology Modifications 11

slide-14
SLIDE 14

When Working with Flexible Metamodels...

We have to deal with ...

  • addition, modification, and removal of
  • classes, properties, methods, and associations

+

2

Worst Case Scenario modeled specifications become unreadable with modified metamodel

Gregor Gabrysiak, FlexiTools 2010, 2 May 2010 Handling Ontology Modifications 11

slide-15
SLIDE 15

Modifications of the Ontology

Addition Removal Modification Class

  • Property
  • Association
  • Gregor Gabrysiak, FlexiTools 2010, 2 May 2010

Handling Ontology Modifications 12

Addition of any new Element

  • not referenced yet =

⇒ no action necessary

  • save as often as possible
  • small deltas between versions
  • old version of the ontology is kept
  • when saving, IDs can be added
slide-16
SLIDE 16

Modifications of the Ontology

Addition Removal Modification Class

  • Property
  • (user assisted)
  • Association
  • (user assisted)
  • Gregor Gabrysiak, FlexiTools 2010, 2 May 2010

Handling Ontology Modifications 12

Removal of any referenced Element

  • Class: dangling references are redirected (recursively) to

the corresponding superclass

  • Property: either delete references or move to superclass
  • Association
  • pointing to deleted class: redirect to superclass
  • else: either delete references or propose substitutes
slide-17
SLIDE 17

Modifications of the Ontology

Addition Removal Modification Class

  • (user assisted)

Property

  • (user assisted)
  • (user assisted)

Association

  • (user assisted)
  • (user assisted)

Gregor Gabrysiak, FlexiTools 2010, 2 May 2010 Handling Ontology Modifications 12

Modification of any referenced Element

  • modeler’s intent is unclear
  • syntactical change (Bosss becomes Boss):
  • same concepts apply, references still valid
  • IDs can be used to redirect from Bosss to Boss
  • semantical change (+getX() becomes +setX()):
  • different concepts apply, references invalid
  • remove old version + add new version
slide-18
SLIDE 18

Conclusions

++ ,"-").", ++ /"#$", ++%%(00(-1"$ %2%&'()* 01)/%2%34/056", 7%2%8//)/0(#0 %2%9,5:5/(* 1(/

!"#$%9,5:5/(*

2

b:Role

+age: int

this:Customer2

+ + +

value: int

+

  • ontologies as flexible metamodels
  • concepts for handling metamodel changes
  • implementation in Eclipse & EMF
  • automatic reload of changes in metamodel
  • Addition of elements fully functional

Gregor Gabrysiak, FlexiTools 2010, 2 May 2010 Handling Ontology Modifications 13