Top Banner
Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1
23

Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

Dec 24, 2015

Download

Documents

Brian Walker
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

1

Reduction and Slicing of Hierarchical State MachinesMats Heimdahl et al.

University of Minnesota

Presented by Tom McMullenFor CISC836

Page 2: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

2

Outline

• Primer • Problem Space• Paper Overview• Application (Case Study)• Limitations• Critique• Discussion

Page 3: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

3

Primer

• Presented at 1997 Proceedings 6th European Software Engineering Conference

• Cited by 65 (source: Google Scholar)

Page 4: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

4

Problem Space

• Formal Specification Languages– Difficult to understand and use– Not well understood by application experts

Page 5: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

5

Problem Space

• State Machine Representation– Better, but…

Inevitable Complexity for large systems

Page 6: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

6

Problem Space

Page 7: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

7

What this paper proposes…

• Address complexity of HSMs• In Order To:– Present information in digestible chunks

• Method:– Step 1: Simplify based on scenario– Step 2: Slice for desired values

Page 8: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

8

A Quick Refresher…

• Hierarchical State Machines (HSM)

Page 9: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

9

A Quick Refresher…

• Slicing

Page 10: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

10

A quick refresher…

• Program Slicing

Page 11: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

11

Application

• Applied to HSMs– RSML (Requirements State Machine Language)• Specification of safety-critical systems

Page 12: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

12

RSML

Page 13: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

13

Testbed Specification

• TCAS II– Traffic alert and Collision Avoidance System

Page 14: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

14

Page 15: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

15

Step 1: Reduce

• Produce simplified RSML model• Interpretation based on scenario– Domain restriction of next-state relation– How do we classify an intruder who has stopped

reporting altitude?

Page 16: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

16

Step 1: Reduce

• Eliminate infeasible columns for scenario• Reduction Algorithm limited to enumerated vars

Page 17: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

17

Step 2: Slice

• Slicing Algorithm– Based on marking of Abstract Syntax Tree– RSML parser part of earlier research

• Data Flow Slices (if a transition can be taken)– Data Dependency of Guarding Transition

• Control Flow Slices (when a transition is taken)– Generation of a trigger event

Page 18: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

18

Step 3: Profit?...

• Iterative slices are then combined• Attempt to answer our questions• Reduced complexity• Increased Understandability

Page 19: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

19

Page 20: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

20

Case Study

• Applied to most complex part of TCAS II RSML Model

• Subjective notion of complexity / understandability

• Metrics:– # of transitions– Perceived Table Size– Effective Table Size

Page 21: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

21

Case Study

• Results– Promising• Significant reduction in table size

– But..• Reduction in # of transitions not as expected

Page 22: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

22

Critique

• Case Study details lacking– Which TCAS model? What Questions/Scenario?– 1998 paper has a more detailed case

study/empirical data• Too much emphasis on RSML– Small application– More detail on slicing HSM in general

• Reduction and Slicing algorithms not presented– Data flow / control flow slices not explained in depth

Page 23: Reduction and Slicing of Hierarchical State Machines Mats Heimdahl et al. University of Minnesota Presented by Tom McMullen For CISC836 1.

23

Discussion