Improving the Definition of UML Greg OKeefe Computer Sciences - - PowerPoint PPT Presentation

improving the definition of uml
SMART_READER_LITE
LIVE PREVIEW

Improving the Definition of UML Greg OKeefe Computer Sciences - - PowerPoint PPT Presentation

Improving the Definition of UML Greg OKeefe Computer Sciences Laboratory Australian National University Outline The UML definition claims to be Outline The UML definition claims to be precise Outline The UML definition claims to be


slide-1
SLIDE 1

Improving the Definition of UML

Greg O’Keefe

Computer Sciences Laboratory Australian National University

slide-2
SLIDE 2

Outline

The UML definition claims to be

slide-3
SLIDE 3

Outline

The UML definition claims to be precise

slide-4
SLIDE 4

Outline

The UML definition claims to be precise easy to understand

slide-5
SLIDE 5

Outline

The UML definition claims to be precise easy to understand

(because it avoids mathematical formality)

slide-6
SLIDE 6

Outline

The UML definition claims to be precise easy to understand

(because it avoids mathematical formality)

I will argue that

slide-7
SLIDE 7

Outline

The UML definition claims to be precise easy to understand

(because it avoids mathematical formality)

I will argue that precision and understandability are the right goals

slide-8
SLIDE 8

Outline

The UML definition claims to be precise easy to understand

(because it avoids mathematical formality)

I will argue that precision and understandability are the right goals the current definition does not achieve them

slide-9
SLIDE 9

Outline

The UML definition claims to be precise easy to understand

(because it avoids mathematical formality)

I will argue that precision and understandability are the right goals the current definition does not achieve them mathematics is

slide-10
SLIDE 10

Outline

The UML definition claims to be precise easy to understand

(because it avoids mathematical formality)

I will argue that precision and understandability are the right goals the current definition does not achieve them mathematics is

unavoidable for precision

slide-11
SLIDE 11

Outline

The UML definition claims to be precise easy to understand

(because it avoids mathematical formality)

I will argue that precision and understandability are the right goals the current definition does not achieve them mathematics is

unavoidable for precision compatible with understandability

slide-12
SLIDE 12

Outline

The UML definition claims to be precise easy to understand

(because it avoids mathematical formality)

I will argue that precision and understandability are the right goals the current definition does not achieve them mathematics is

unavoidable for precision compatible with understandability

and I will survey some relevant work

slide-13
SLIDE 13

Criteria for a good definition of UML

slide-14
SLIDE 14

Criteria for a good definition of UML

Criterion 0 it must define UML

slide-15
SLIDE 15

Criteria for a good definition of UML

Criterion 0 it must define UML Criterion 1 it must define UML

slide-16
SLIDE 16

Criteria for a good definition of UML

Criterion 0 it must define UML Criterion 1 it must define UML (5 things to define)

slide-17
SLIDE 17

Criteria for a good definition of UML

Criterion 0 it must define UML Criterion 1 it must define UML

(Σ, ε)

A B A:Class :Property :Association ex:Property B:Class

concretesyntax abstractsytnax semanticdomain notationalconventions semantics

  • wnedEnd
  • wningAssociation

type class

  • wnedAttribute

type memberEnd association ex

slide-18
SLIDE 18

Criteria: semantic applications, agreement

Criterion 2 automatic checking of semantic properties like

slide-19
SLIDE 19

Criteria: semantic applications, agreement

Criterion 2 automatic checking of semantic properties like model satisfiability

slide-20
SLIDE 20

Criteria: semantic applications, agreement

Criterion 2 automatic checking of semantic properties like model satisfiability refinement between models

slide-21
SLIDE 21

Criteria: semantic applications, agreement

Criterion 2 automatic checking of semantic properties like model satisfiability refinement between models transformation “soundness”

slide-22
SLIDE 22

Criteria: semantic applications, agreement

Criterion 2 automatic checking of semantic properties like model satisfiability refinement between models transformation “soundness” Criterion 3 enables agreement on complex ideas

people tools

slide-23
SLIDE 23

Criteria: semantic applications, agreement

Criterion 2 automatic checking of semantic properties like model satisfiability refinement between models transformation “soundness” Criterion 3 enables agreement on complex ideas

people tools

real agreement requires understanding

slide-24
SLIDE 24

Criteria: semantic applications, agreement

Criterion 2 automatic checking of semantic properties like model satisfiability refinement between models transformation “soundness” Criterion 3 enables agreement on complex ideas

people tools

real agreement requires understanding

  • f the models
slide-25
SLIDE 25

Criteria: semantic applications, agreement

Criterion 2 automatic checking of semantic properties like model satisfiability refinement between models transformation “soundness” Criterion 3 enables agreement on complex ideas

people tools

real agreement requires understanding

  • f the models

hence, of the language

slide-26
SLIDE 26

Criteria: reflection and flexibility

Criterion 4 reflective

slide-27
SLIDE 27

Criteria: reflection and flexibility

Criterion 4 reflective language in semantic domain: L = mm ⊆ S

slide-28
SLIDE 28

Criteria: reflection and flexibility

Criterion 4 reflective language in semantic domain: L = mm ⊆ S each model contains its metamodel: c C

  • :C

c

i

  • :C

C

≪instanceOf≫

C

C

i

  • c

C

instanceOfType

slide-29
SLIDE 29

Criteria: reflection and flexibility

Criterion 4 reflective language in semantic domain: L = mm ⊆ S each model contains its metamodel: c C

  • :C

c

i

  • :C

C

≪instanceOf≫

C

C

i

  • c

C

instanceOfType

  • Criterion 5 flexible, to cater for
slide-30
SLIDE 30

Criteria: reflection and flexibility

Criterion 4 reflective language in semantic domain: L = mm ⊆ S each model contains its metamodel: c C

  • :C

c

i

  • :C

C

≪instanceOf≫

C

C

i

  • c

C

instanceOfType

  • Criterion 5 flexible, to cater for

semantic variation points

slide-31
SLIDE 31

Criteria: reflection and flexibility

Criterion 4 reflective language in semantic domain: L = mm ⊆ S each model contains its metamodel: c C

  • :C

c

i

  • :C

C

≪instanceOf≫

C

C

i

  • c

C

instanceOfType

  • Criterion 5 flexible, to cater for

semantic variation points profiles

slide-32
SLIDE 32

Criteria: reflection and flexibility

Criterion 4 reflective language in semantic domain: L = mm ⊆ S each model contains its metamodel: c C

  • :C

c

i

  • :C

C

≪instanceOf≫

C

C

i

  • c

C

instanceOfType

  • Criterion 5 flexible, to cater for

semantic variation points profiles DSL’s interoperable with UML

slide-33
SLIDE 33

Criteria: reflection and flexibility

Criterion 4 reflective language in semantic domain: L = mm ⊆ S each model contains its metamodel: c C

  • :C

c

i

  • :C

C

≪instanceOf≫

C

C

i

  • c

C

instanceOfType

  • Criterion 5 flexible, to cater for

semantic variation points profiles DSL’s interoperable with UML later versions of UML

slide-34
SLIDE 34

Criteria Summary

We want a precise, yet understandable definition of UML.

slide-35
SLIDE 35

Evaluation of the Current Definition of UML

no agreement on meaning of UML models

slide-36
SLIDE 36

Evaluation of the Current Definition of UML

no agreement on meaning of UML models

claims in the literature

slide-37
SLIDE 37

Evaluation of the Current Definition of UML

no agreement on meaning of UML models

claims in the literature discussions with practitioners

slide-38
SLIDE 38

Evaluation of the Current Definition of UML

no agreement on meaning of UML models

claims in the literature discussions with practitioners OMG issues,

  • eg. #5977 association semantics
slide-39
SLIDE 39

Evaluation of the Current Definition of UML

no agreement on meaning of UML models

claims in the literature discussions with practitioners OMG issues,

  • eg. #5977 association semantics

precise understandable definition would resolve disagreements

slide-40
SLIDE 40

Evaluation of the Current Definition of UML

no agreement on meaning of UML models

claims in the literature discussions with practitioners OMG issues,

  • eg. #5977 association semantics

precise understandable definition would resolve disagreements therefore we do not have one (it is neither precise nor understandable!)

slide-41
SLIDE 41

Evaluation of the Current Definition of UML

no agreement on meaning of UML models

claims in the literature discussions with practitioners OMG issues,

  • eg. #5977 association semantics

precise understandable definition would resolve disagreements therefore we do not have one (it is neither precise nor understandable!) it is not easy, we should ask the experts

slide-42
SLIDE 42

Evaluation of the Current Definition of UML

no agreement on meaning of UML models

claims in the literature discussions with practitioners OMG issues,

  • eg. #5977 association semantics

precise understandable definition would resolve disagreements therefore we do not have one (it is neither precise nor understandable!) it is not easy, we should ask the experts precision: mathematics

slide-43
SLIDE 43

Evaluation of the Current Definition of UML

no agreement on meaning of UML models

claims in the literature discussions with practitioners OMG issues,

  • eg. #5977 association semantics

precise understandable definition would resolve disagreements therefore we do not have one (it is neither precise nor understandable!) it is not easy, we should ask the experts precision: mathematics understanding: cognitive psychology

slide-44
SLIDE 44

Survey: Z and Algebra

we survey the literature on semantics for UML

slide-45
SLIDE 45

Survey: Z and Algebra

we survey the literature on semantics for UML most has some other agenda

slide-46
SLIDE 46

Survey: Z and Algebra

we survey the literature on semantics for UML most has some other agenda

Z

slide-47
SLIDE 47

Survey: Z and Algebra

we survey the literature on semantics for UML most has some other agenda

Z

Kim and Carrington 2000, semantic definition by transformation to metamodel of formal language

slide-48
SLIDE 48

Survey: Z and Algebra

we survey the literature on semantics for UML most has some other agenda

Z

Kim and Carrington 2000, semantic definition by transformation to metamodel of formal language many others, but no convincing dynamics (a sequence diagram in Z?)

slide-49
SLIDE 49

Survey: Z and Algebra

we survey the literature on semantics for UML most has some other agenda

Z

Kim and Carrington 2000, semantic definition by transformation to metamodel of formal language many others, but no convincing dynamics (a sequence diagram in Z?)

Algebraic Specification

slide-50
SLIDE 50

Survey: Z and Algebra

we survey the literature on semantics for UML most has some other agenda

Z

Kim and Carrington 2000, semantic definition by transformation to metamodel of formal language many others, but no convincing dynamics (a sequence diagram in Z?)

Algebraic Specification

Reggio et al 2001, seek semantics for whole language, advocate models as axioms, recognise need for temporal

  • perators
slide-51
SLIDE 51

Survey: Logic and OCL

Translating OCL to Logic

slide-52
SLIDE 52

Survey: Logic and OCL

Translating OCL to Logic

OCL to higher order logic, Brucker and Wolff 2002

slide-53
SLIDE 53

Survey: Logic and OCL

Translating OCL to Logic

OCL to higher order logic, Brucker and Wolff 2002 OCL to first order logic, Beckert and Schmitt 2002

slide-54
SLIDE 54

Survey: Logic and OCL

Translating OCL to Logic

OCL to higher order logic, Brucker and Wolff 2002 OCL to first order logic, Beckert and Schmitt 2002

Dynamic Logic

slide-55
SLIDE 55

Survey: Logic and OCL

Translating OCL to Logic

OCL to higher order logic, Brucker and Wolff 2002 OCL to first order logic, Beckert and Schmitt 2002

Dynamic Logic

Beckert 2001, gives a special dynamic logic for Java-Card

slide-56
SLIDE 56

Survey: Logic and OCL

Translating OCL to Logic

OCL to higher order logic, Brucker and Wolff 2002 OCL to first order logic, Beckert and Schmitt 2002

Dynamic Logic

Beckert 2001, gives a special dynamic logic for Java-Card Weiringa and Broerson 1997, use a DL based language to formalise a “methodologically analysed” form of UML

slide-57
SLIDE 57

Survey: Logic and OCL

Translating OCL to Logic

OCL to higher order logic, Brucker and Wolff 2002 OCL to first order logic, Beckert and Schmitt 2002

Dynamic Logic

Beckert 2001, gives a special dynamic logic for Java-Card Weiringa and Broerson 1997, use a DL based language to formalise a “methodologically analysed” form of UML O’Keefe 2006, small UML subset with sequence diagrams translated to DL for satisfiability checking

slide-58
SLIDE 58

Survey: Graphs and STS

Symbolic Transition Systems

slide-59
SLIDE 59

Survey: Graphs and STS

Symbolic Transition Systems

Damm Josko Pnueli and Votintseva 2003, real time semantics used in later work for deductive verification of models

slide-60
SLIDE 60

Survey: Graphs and STS

Symbolic Transition Systems

Damm Josko Pnueli and Votintseva 2003, real time semantics used in later work for deductive verification of models ignores UML abstract syntax, very complex, strong execution assumptions

slide-61
SLIDE 61

Survey: Graphs and STS

Symbolic Transition Systems

Damm Josko Pnueli and Votintseva 2003, real time semantics used in later work for deductive verification of models ignores UML abstract syntax, very complex, strong execution assumptions

Graph Transformation Systems

slide-62
SLIDE 62

Survey: Graphs and STS

Symbolic Transition Systems

Damm Josko Pnueli and Votintseva 2003, real time semantics used in later work for deductive verification of models ignores UML abstract syntax, very complex, strong execution assumptions

Graph Transformation Systems

several groups persuing the same basic idea

slide-63
SLIDE 63

Survey: Graphs and STS

Symbolic Transition Systems

Damm Josko Pnueli and Votintseva 2003, real time semantics used in later work for deductive verification of models ignores UML abstract syntax, very complex, strong execution assumptions

Graph Transformation Systems

several groups persuing the same basic idea a system state is an object diagram = a graph

slide-64
SLIDE 64

Survey: Graphs and STS

Symbolic Transition Systems

Damm Josko Pnueli and Votintseva 2003, real time semantics used in later work for deductive verification of models ignores UML abstract syntax, very complex, strong execution assumptions

Graph Transformation Systems

several groups persuing the same basic idea a system state is an object diagram = a graph evolution defined by graph transformation rules (perhaps given as UML interaction diagrams)

slide-65
SLIDE 65

Conclusions

What Formalism?

slide-66
SLIDE 66

Conclusions

What Formalism?

graph transformation for understandability

slide-67
SLIDE 67

Conclusions

What Formalism?

graph transformation for understandability dynamic logic for expressiveness

slide-68
SLIDE 68

Conclusions

What Formalism?

graph transformation for understandability dynamic logic for expressiveness a new logic with graphs as static statements, graph transformation rules as atomic programs?

slide-69
SLIDE 69

Conclusions

What Formalism?

graph transformation for understandability dynamic logic for expressiveness a new logic with graphs as static statements, graph transformation rules as atomic programs? we must gain precision and understandability,

  • therwise model driven development will fail