Reduction and Slicing of Hierarchical State Machines Mats

Reduction and Slicing of
Hierarchical State Machines
Mats Heimdahl et al.
University of Minnesota
Presented by Tom McMullen
For CISC836
1
Outline
•
•
•
•
•
•
•
Primer
Problem Space
Paper Overview
Application (Case Study)
Limitations
Critique
Discussion
2
Primer
• Presented at 1997 Proceedings 6th European
Software Engineering Conference
• Cited by 65 (source: Google Scholar)
3
Problem Space
• Formal Specification Languages
– Difficult to understand and use
– Not well understood by application experts
4
Problem Space
• State Machine Representation
– Better, but…
Inevitable Complexity for large
systems
5
Problem Space
6
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
7
A Quick Refresher…
• Hierarchical State Machines (HSM)
8
A Quick Refresher…
• Slicing
9
A quick refresher…
• Program Slicing
10
Application
• Applied to HSMs
– RSML (Requirements State Machine Language)
• Specification of safety-critical systems
11
RSML
12
Testbed Specification
• TCAS II
– Traffic alert and Collision Avoidance System
13
14
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?
15
Step 1: Reduce
• Eliminate infeasible columns for scenario
• Reduction Algorithm limited to enumerated vars
16
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
17
Step 3: Profit?...
•
•
•
•
Iterative slices are then combined
Attempt to answer our questions
Reduced complexity
Increased Understandability
18
19
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
20
Case Study
• Results
– Promising
• Significant reduction in table size
– But..
• Reduction in # of transitions not as expected
21
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
22
Discussion
23