SLIDE 1
Modelling Languages: (mostly) Concrete (Visual) Syntax Hans - - PowerPoint PPT Presentation
Modelling Languages: (mostly) Concrete (Visual) Syntax Hans - - PowerPoint PPT Presentation
Modelling Languages: (mostly) Concrete (Visual) Syntax Hans Vangheluwe Antwerp 26 August 2014 2 3 4 5 6 Causal Block Diagrams (syntax) 7 Causal Block Diagrams (semantics) 8 Operational Semantics 9 Causal Block Diagrams (semantics)
SLIDE 2
SLIDE 3
3
SLIDE 4
4
SLIDE 5
5
SLIDE 6
6
SLIDE 7
7 Causal Block Diagrams (syntax)
SLIDE 8
8 Causal Block Diagrams (semantics)
SLIDE 9
9 Operational Semantics
SLIDE 10
10 Causal Block Diagrams (semantics)
SLIDE 11
11 Formalism Transformation Graph (FTG)
SLIDE 12
12 Modelling Languages/Formalisms Syntax and Semantics
SLIDE 13
13
Explicit Modelling of Modelling Languages/Formalisms
Modelling Languages/Formalisms Syntax and Semantics
SLIDE 14
14 Semantics of Meta-models
What is the semantic domain of the Class Diagram formalism (when used as a meta-modelling language)?
SLIDE 15
15 Textual Languages
Modelling Languages/Formalisms
SLIDE 16
16 Textual Languages
Textual Languages
“this sentence is very short”
- Individual letters in an alphabet
- Combined into words
- Combined in to sentences in a language
- Letters in words specifjed by regular expressions
- Words in a language specifjed by a grammar
- Symbols are combined by “is to the right of”
SLIDE 17
17 Textual Languages
SLIDE 18
18 Visual Languages
SLIDE 19
SLIDE 20
20
Plex
Visual Languages
SLIDE 21
21
Graph
Visual Languages
SLIDE 22
22
Connection Types
Visual Languages
SLIDE 23
23
Iconic
Visual Languages
SLIDE 24
24
Box
Visual Languages
SLIDE 25
25
Visual Language Classes
Visual Languages
SLIDE 26
26
Hybrid Languages
Visual Languages
SLIDE 27
27
Syntax-directed Visual Editors: model behaviour
Visual Languages
SLIDE 28
28
Syntax-directed Visual Editors: model behaviour
Visual Languages
SLIDE 29
29
Syntax-directed Visual Editors: model behaviour
Visual Languages
SLIDE 30
30
Syntax-directed Visual Editors: freehand (early stages of multi-domain project)
Visual Languages
SLIDE 31
31
Different Media: Gestural Interaction, Sound, ...
Visual Languages
SLIDE 32
SLIDE 33
33
Introduction
- Visual notations pre-date textual ones
- Visual notations are important for
Modelling and Software Engineering
- Humans are excellent pattern
recognizers
- Need cognitively effjcient and effective
notations. Cognitive effectiveness = speed, ease and accuracy with which a representation can be processed by the human mind
``Physics'' of Notations
a DSVL @ Lascaux
SLIDE 34
34
Introduction/Rationale
Visual notations are often introduced without underlying theory or rationale
``Physics'' of Notations
Many visual notations for same concepts. No rigorous way to compare effectiveness and hence no clear design goal.
SLIDE 35
SLIDE 36
SLIDE 37
SLIDE 38
SLIDE 39
SLIDE 40
40
Communication Theory
``Physics'' of Notations
SLIDE 41
41
Encoding: 8 visual variables to (graphically) encode information
``Physics'' of Notations
SLIDE 42
42
Decoding
``Physics'' of Notations
automatic, fast, parallel slow, large effort, sequential Appropriate notations » offmoad some of the burden from cognitive to perceptual Note: “dual channel theory”: brain processes textual/audio in parallel with visual data
SLIDE 43
43
Principles for Designing Effjcient and Effective Visual Notations
``Physics'' of Notations
SLIDE 44
44
Semiotic Clarity (semiotics = study of signs and sign processes)
``Physics'' of Notations
1 to 1
SLIDE 45
45
Perceptual Discriminability
``Physics'' of Notations
SLIDE 46
46
Perceptual Discriminability
``Physics'' of Notations
should be easy to distinguish visual symbols ability to distinguish is determined by visual distance larger visual distance » faster, more accurate recognition
- number of visual variables on which they differ and the size of the differences
- shape is the main visual variable
13
SLIDE 47
47
Perceptual Discriminability
Software Enginering notations mostly use rectangle variants Use redundant visual encoding to increase distance (e.g., textual + visual)
``Physics'' of Notations
SLIDE 48
48
Semantic Transparency
The meaning of a symbol can be inferred from its appearance (intuitive) Symbols can be:
``Physics'' of Notations
- Semantically Immediate
- Semantically Opaque
- Semantically Perverse
Software Engineering notations are usually abstract (non-intuitive) Domain-specifjc icons are intuitive
SLIDE 49
49
Semantic Transparency
``Physics'' of Notations
SLIDE 50
50
Complexity management (# elements in diagram » cognitive overload)
``Physics'' of Notations
SLIDE 51
51
Modularization/Hierarchy
``Physics'' of Notations
SLIDE 52
52
Cognitive Integration (different notations)
``Physics'' of Notations
- Conceptual integration (coherent mental model)
- Enable navigation and transition between notations
SLIDE 53
53
Visual Expressiveness
Number of visual variables used (UML, mostly shape, no colour) 8 degrees of visual freedom (0 = non-visual – 8 = visually saturated)
``Physics'' of Notations
SLIDE 54
54
Visual Expressiveness
Different visual variables have different capacity to encode information
``Physics'' of Notations
SLIDE 55
55
Dual Encoding
Combine Textual and Visual Supplement rather than duplicate (e.g., cardinality values) Reinforce meaning
``Physics'' of Notations
SLIDE 56
56
Graphic Economy
- Not too many symbols. If many, provide legend
- Limit on human discrimination capability (6 levels per variable)
- Upper limit on graphic complexity
How?
``Physics'' of Notations
SLIDE 57
57
Cognitive Fit
Adapt choice of visual notation to
- Task
- Audience novices and experts
Adaptation may be dynamic (“learn” about Task/User profjciency) Representation medium
``Physics'' of Notations
SLIDE 58