Transcript
Page 1: Reduction and Slicing of Hierarchical State Machines Mats  Heimdahl et al. University of Minnesota

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

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

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

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

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

6

Problem Space

Page 7: Reduction and Slicing of Hierarchical State Machines Mats  Heimdahl et al. University of Minnesota

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

8

A Quick Refresher…

• Hierarchical State Machines (HSM)

Page 9: Reduction and Slicing of Hierarchical State Machines Mats  Heimdahl et al. University of Minnesota

9

A Quick Refresher…

• Slicing

Page 10: Reduction and Slicing of Hierarchical State Machines Mats  Heimdahl et al. University of Minnesota

10

A quick refresher…

• Program Slicing

Page 11: Reduction and Slicing of Hierarchical State Machines Mats  Heimdahl et al. University of Minnesota

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

12

RSML

Page 13: Reduction and Slicing of Hierarchical State Machines Mats  Heimdahl et al. University of Minnesota

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

14

Page 15: Reduction and Slicing of Hierarchical State Machines Mats  Heimdahl et al. University of Minnesota

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

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

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

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

19

Page 20: Reduction and Slicing of Hierarchical State Machines Mats  Heimdahl et al. University of Minnesota

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

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

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

23

Discussion


Top Related