230 likes | 347 Vues
This paper discusses the complexity of Hierarchical State Machines (HSMs) and proposes methods to address it by simplifying and slicing based on scenarios. It presents a case study on applying these techniques to the TCAS II system, highlighting benefits and limitations.
E N D
Reduction and Slicing of Hierarchical State MachinesMats Heimdahlet al.University of Minnesota Presented by Tom McMullen For CISC836
Outline • Primer • Problem Space • Paper Overview • Application (Case Study) • Limitations • Critique • Discussion
Primer • Presented at 1997 Proceedings 6th European Software Engineering Conference • Cited by 65 (source: Google Scholar)
Problem Space • Formal Specification Languages • Difficult to understand and use • Not well understood by application experts
Problem Space • State Machine Representation • Better, but… Inevitable Complexity for large systems
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
A Quick Refresher… • Hierarchical State Machines (HSM)
A Quick Refresher… • Slicing
A quick refresher… • Program Slicing
Application • Applied to HSMs • RSML (Requirements State Machine Language) • Specification of safety-critical systems
Testbed Specification • TCAS II • Traffic alert and Collision Avoidance System
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?
Step 1: Reduce • Eliminate infeasible columns for scenario • Reduction Algorithm limited to enumerated vars
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
Step 3: Profit?... • Iterative slices are then combined • Attempt to answer our questions • Reduced complexity • Increased Understandability
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
Case Study • Results • Promising • Significant reduction in table size • But.. • Reduction in # of transitions not as expected
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