Family Mining on Statecharts Masters thesis ideas David Wille, May - - PowerPoint PPT Presentation

family mining on statecharts
SMART_READER_LITE
LIVE PREVIEW

Family Mining on Statecharts Masters thesis ideas David Wille, May - - PowerPoint PPT Presentation

Family Mining on Statecharts Masters thesis ideas David Wille, May 5, 2014 Motivation Background Current approach Ideas Overview Motivation Background Current approach Ideas May 5, 2014 David Wille Family Mining on Statecharts Page 2


slide-1
SLIDE 1

Family Mining on Statecharts

Master’s thesis ideas

David Wille, May 5, 2014

slide-2
SLIDE 2

Motivation Background Current approach Ideas

Overview

Motivation Background Current approach Ideas

May 5, 2014 David Wille Family Mining on Statecharts Page 2

slide-3
SLIDE 3

Motivation Background Current approach Ideas

Motivation

Identifying differences and commonalities is crucial!

May 5, 2014 David Wille Family Mining on Statecharts Page 3

slide-4
SLIDE 4

Motivation Background Current approach Ideas Family Models vs. Feature Models

Family Models vs. Feature Models

Feature Models

problem domain

  • nly models variability

without further details

Stack Base Undo Peek Implementation ArrayList LinkedList Legend: Mandatory Optional Or Abstract Concrete

Family Models

solution space concrete design implementation details

May 5, 2014 David Wille Family Mining on Statecharts Page 4

slide-5
SLIDE 5

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Creating Compare Elements

1

1

2

5

1

2 3 4

1

Ou t1

Figure 1: Variant 1

slide-6
SLIDE 6

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Creating Compare Elements

1

1

2

5

1

2 3 4

1

Ou t1

Figure 1: Variant 1

slide-7
SLIDE 7

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Creating Compare Elements

1

1

2

5

1

2 3 4

1

Ou t1

Figure 1: Variant 1 Figure 2: Variant 2 1 6

90% e1

5 6

85% e2

May 5, 2014 David Wille Family Mining on Statecharts Page 5

slide-8
SLIDE 8

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Creating Compare Elements

1

1

2

5

1

2 3 4

1

Ou t1

Figure 1: Variant 1

slide-9
SLIDE 9

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Creating Compare Elements

1

1

2

5

1

2 3 4

1

Ou t1

Figure 1: Variant 1

slide-10
SLIDE 10

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Creating Compare Elements

1

1

2

5

1

2 3 4

1

Ou t1

Figure 1: Variant 1 Figure 2: Variant 2 1 6

90% e1

5 6

85% e2

3 8

10% e3

3 7

10% e4

2 8

10% e5

May 5, 2014 David Wille Family Mining on Statecharts Page 5

slide-11
SLIDE 11

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Creating Compare Elements

1

1

2

5

1

2 3 4

1

Ou t1

Figure 1: Variant 1 Figure 2: Variant 2 1 6

90% e1

5 6

85% e2

3 8

10% e3

3 7

10% e4

2 8

10% e5

2 7

85% e6

May 5, 2014 David Wille Family Mining on Statecharts Page 5

slide-12
SLIDE 12

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Creating Compare Elements

1

1

2

5

1

2 3 4

1

Ou t1

Figure 1: Variant 1

e6

slide-13
SLIDE 13

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Creating Compare Elements

1

1

2

5

1

2 3 4

1

Ou t1

Figure 1: Variant 1 Figure 2: Variant 2 1 6

90% e1

5 6

85% e2

3 8

10% e3

3 7

10% e4

2 8

10% e5

2 7

85% e6

4 9

5% e7

Out1

0% e8

May 5, 2014 David Wille Family Mining on Statecharts Page 5

slide-14
SLIDE 14

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Matching

Current element

1 6

90% e1

5 6

85% e2

3 8

10% e3

3 7

10% e4

2 8

10% e5

2 7

85% e6

4 9

5% e7

Out1

0% e8

May 5, 2014 David Wille Family Mining on Statecharts Page 6

slide-15
SLIDE 15

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Matching

Current element

1 6

90% e1

5 6

85% e2

3 8

10% e3

3 7

10% e4

2 8

10% e5

2 7

85% e6

4 9

5% e7

Out1

0% e8

Found element e2 with same block, but less similarity. So e1 is op- timal.

May 5, 2014 David Wille Family Mining on Statecharts Page 6

slide-16
SLIDE 16

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Matching

Current element

3 8

10% e3

3 7

10% e4

2 8

10% e5

2 7

85% e6

4 9

5% e7

Out1

0% e8

1 6

90% e1

May 5, 2014 David Wille Family Mining on Statecharts Page 6

slide-17
SLIDE 17

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Matching

Current element

3 8

10% e3

3 7

10% e4

2 8

10% e5

2 7

85% e6

4 9

5% e7

Out1

0% e8

Found element e4 and e5. All have similarity of 10% so e3 and e4 are ambiguous.

1 6

90% e1

May 5, 2014 David Wille Family Mining on Statecharts Page 6

slide-18
SLIDE 18

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Matching

Current element

2 8

10% e5

2 7

85% e6

4 9

5% e7

Out1

0% e8

3 8

10% e3

3 7

10% e4

Sorted e3 and e4 to the end of list.

1 6

90% e1

May 5, 2014 David Wille Family Mining on Statecharts Page 6

slide-19
SLIDE 19

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Matching

Current element

2 8

10% e5

2 7

85% e6

4 9

5% e7

Out1

0% e8

3 8

10% e3

3 7

10% e4

Found a better match. e6 > e5.

1 6

90% e1

May 5, 2014 David Wille Family Mining on Statecharts Page 6

slide-20
SLIDE 20

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Matching

Current element

4 9

5% e7

Out1

0% e8

3 8

10% e3

1 6

90% e1

2 7

85% e6

May 5, 2014 David Wille Family Mining on Statecharts Page 6

slide-21
SLIDE 21

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Matching

Current element

4 9

5% e7

Out1

0% e8

3 8

10% e3

No better match found. e7 is optimal.

1 6

90% e1

2 7

85% e6

May 5, 2014 David Wille Family Mining on Statecharts Page 6

slide-22
SLIDE 22

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Matching

Current element

Out1

0% e8

3 8

10% e3

1 6

90% e1

2 7

85% e6

4 9

5% e7

May 5, 2014 David Wille Family Mining on Statecharts Page 6

slide-23
SLIDE 23

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Matching

Current element

Out1

0% e8

3 8

10% e3

No better match found. e8 is optimal.

1 6

90% e1

2 7

85% e6

4 9

5% e7

May 5, 2014 David Wille Family Mining on Statecharts Page 6

slide-24
SLIDE 24

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Matching

Current element

3 8

10% e3

1 6

90% e1

2 7

85% e6

4 9

5% e7

Out1

0% e8

May 5, 2014 David Wille Family Mining on Statecharts Page 6

slide-25
SLIDE 25

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Matching

Current element

3 8

10% e3

No better match found. e3 is optimal.

1 6

90% e1

2 7

85% e6

4 9

5% e7

Out1

0% e8

May 5, 2014 David Wille Family Mining on Statecharts Page 6

slide-26
SLIDE 26

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Matching

Current element

1 6

90% e1

2 7

85% e6

4 9

5% e7

Out1

0% e8

3 8

10% e3

May 5, 2014 David Wille Family Mining on Statecharts Page 6

slide-27
SLIDE 27

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Matching

Current element

Block 5 was not yet considered, so it is an optional block.

1 6

90% e1

2 7

85% e6

4 9

5% e7

Out1

0% e8

3 8

10% e3

5

0% e9

May 5, 2014 David Wille Family Mining on Statecharts Page 6

slide-28
SLIDE 28

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Merging

1 6

90% e1

2 7

85% e6

4 9

5% e7

Out1

0% e8

3 8

10% e3

5

0% e9

1

1

2

5

1

2 3 4

1

Ou t1 May 5, 2014 David Wille Family Mining on Statecharts Page 7

slide-29
SLIDE 29

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Merging

1 6

90% e1

2 7

85% e6

4 9

5% e7

Out1

0% e8

3 8

10% e3

5

0% e9

1

1

2

5

1

2 3 4

1

Ou t1 May 5, 2014 David Wille Family Mining on Statecharts Page 7

slide-30
SLIDE 30

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Merging

1 6

90% e1

2 7

85% e6

4 9

5% e7

Out1

0% e8

3 8

10% e3

5

0% e9

1

1

2

5

1

2 3 4

1

Ou t1 May 5, 2014 David Wille Family Mining on Statecharts Page 7

slide-31
SLIDE 31

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Merging

1 6

90% e1

2 7

85% e6

4 9

5% e7

Out1

0% e8

3 8

10% e3

5

0% e9

1

1

2

5

1

2 3 4

1

Ou t1 May 5, 2014 David Wille Family Mining on Statecharts Page 7

slide-32
SLIDE 32

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Merging

1 6

90% e1

2 7

85% e6

4 9

5% e7

Out1

0% e8

3 8

10% e3

5

0% e9

1

1

2

5

1

2 3 4

1

Ou t1 May 5, 2014 David Wille Family Mining on Statecharts Page 7

slide-33
SLIDE 33

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Merging

1 6

90% e1

2 7

85% e6

4 9

5% e7

Out1

0% e8

3 8

10% e3

5

0% e9

1

1

2

5

1

2 3 4

1

Ou t1 May 5, 2014 David Wille Family Mining on Statecharts Page 7

slide-34
SLIDE 34

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Merging

1 6

90% e1

2 7

85% e6

4 9

5% e7

Out1

0% e8

3 8

10% e3

5

0% e9

1

1

2

5

1

2 3 4

1

Ou t1 May 5, 2014 David Wille Family Mining on Statecharts Page 7

slide-35
SLIDE 35

Motivation Background Current approach Ideas Creating Compare Elements Matching Merging Summary

Summary

What has been done?

Approach applied to MATLAB/Simulink models Create family models:

Understand relations between compared models Improves maintainability of models

Current work

Validation of the approach with industrial scale models:

The general approach, the metric, …

Logging for large models Refactoring in order to support multiple block-based languages:

e.g., MATLAB/Simulink, CoDeSys, …

May 5, 2014 David Wille Family Mining on Statecharts Page 8

slide-36
SLIDE 36

Motivation Background Current approach Ideas Analysis Identified concepts Create a Meta-Model Challenges Next steps

Analysis

Analyze statechart representations of the following tools:

Esterel Technologies SCADE Math Works Stateflow ETAS ASCET IBM Rational Rhapsody

Also consider the journal article by Harel1

1David Harel, Statecharts: a visual formalism for complex systems, 1987

May 5, 2014 David Wille Family Mining on Statecharts Page 9

slide-37
SLIDE 37

Motivation Background Current approach Ideas Analysis Identified concepts Create a Meta-Model Challenges Next steps

Identified concepts

S1 D S2 S3 D H S4 S5

States

Represented as a box Name is distinctive State actions:

e.g., entry, exit, during, … in SCADE defined by block-based models

Start States

Different notations:

Marked with “S” Default transition

May 5, 2014 David Wille Family Mining on Statecharts Page 10

slide-38
SLIDE 38

Motivation Background Current approach Ideas Analysis Identified concepts Create a Meta-Model Challenges Next steps

Identified concepts

S1 S2 S3 D H S4 S5 D

Special States

Hierarchical states Parallel states

May 5, 2014 David Wille Family Mining on Statecharts Page 10

slide-39
SLIDE 39

Motivation Background Current approach Ideas Analysis Identified concepts Create a Meta-Model Challenges Next steps

Identified concepts

S1 S2 S3 D H S4 S5 D

Transitions

event [condition] / action event: triggering the transition condition: e.g., x < 2 action: e.g., x = 2

Special Transitions

Self-Loops Junctions Spontaneous transitions

May 5, 2014 David Wille Family Mining on Statecharts Page 10

slide-40
SLIDE 40

Motivation Background Current approach Ideas Analysis Identified concepts Create a Meta-Model Challenges Next steps

Identified concepts

S1 D S2 S3 D H S4 S5

Special concepts

History junctions Diagram connectors “goto” Forks / Joins for parallel states

May 5, 2014 David Wille Family Mining on Statecharts Page 10

slide-41
SLIDE 41

Motivation Background Current approach Ideas Analysis Identified concepts Create a Meta-Model Challenges Next steps

Create a Meta-Model

May 5, 2014 David Wille Family Mining on Statecharts Page 11

slide-42
SLIDE 42

Motivation Background Current approach Ideas Analysis Identified concepts Create a Meta-Model Challenges Next steps

Identified challenges

No distinct attributes

Names can change All elements have the same type (“state”) in contrast to Simulink with different types (e.g., Gain, Sum, Product, …) Vocabulary can change between models (e.g., different names for the same event) Actions are defined by code and not by unique block types ⇒ Find a way to compare ambiguous elements and identify relations

May 5, 2014 David Wille Family Mining on Statecharts Page 12

slide-43
SLIDE 43

Motivation Background Current approach Ideas Analysis Identified concepts Create a Meta-Model Challenges Next steps

Next steps: Approach & Evaluation

Metric

Find a suitable metric to identify the variability of:

States Transitions

Should work with hierarchies and differing interfaces

Approach

Find an approach with following requirements:

Efficient (preferably no n × m comparison) Correct (i.e., meeting the stakeholders’ expectations)

Should work with all identified concepts

May 5, 2014 David Wille Family Mining on Statecharts Page 13

slide-44
SLIDE 44

Motivation Background Current approach Ideas Analysis Identified concepts Create a Meta-Model Challenges Next steps

Next steps: Approach & Evaluation

Evaluation

Extend the architecture generator developed at the ISF to generate

… different related statecharts. … statecharts with differing complexity and size.

Use the generated statecharts to evaluate the results of the approach

May 5, 2014 David Wille Family Mining on Statecharts Page 13

slide-45
SLIDE 45

Motivation Background Current approach Ideas

Thank you!

Thank you for your attention!

May 5, 2014 David Wille Family Mining on Statecharts Page 14