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

Slides:



Advertisements
Similar presentations
European Modelling Symposium 2009 EMS2009 UKSim 3 rd European Symposium on Computer Modelling and Simulation 25 – 27 November, Athens, Greece Guidelines.
Advertisements

The Chinese Room: Understanding and Correcting Machine Translation This work has been supported by NSF Grants IIS Solution: The Chinese Room Conclusions.
CSE594 Fall 2009 Jennifer Wong Oct. 14, 2009
Prescriptive Process models
 Over-all: Very good idea to use more than one source. Good motivation (use of graphics). Good use of simplified, loosely defined -- but intuitive --
ANTLR in SSP Xingzhong Xu Hong Man Aug Outline ANTLR Abstract Syntax Tree Code Equivalence (Code Re-hosting) Future Work.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 12Slide 1 Software Design l Objectives To explain how a software design may be represented.
CS 290C: Formal Models for Web Software Lecture 4: Implementing and Verifying Statecharts Specifications Using the Spin Model Checker Instructor: Tevfik.
SOUND METHODS and EFFECTIVE TOOLS for ENGINEERING MODELING and ANALYSIS _________________ by David Coppit, College of William and Mary, and Kevin J. Sullivan,
Predicting Text Quality for Scientific Articles Annie Louis University of Pennsylvania Advisor: Ani Nenkova.
Train Control Language Teaching Computers Interlocking By: J. Endresen, E. Carlson, T. Moen1, K. J. Alme, Haugen, G. K. Olsen & A. Svendsen Synthesizing.
Cpeg421-08S/final-review1 Course Review Tom St. John.
On-the-fly Model Checking from Interval Logic Specifications Manuel I. Capel & Miguel J. Hornos Dept. Lenguajes y Sistemas Informáticos Universidad de.
CS189A/172 - Winter 2008 Lecture 7: Software Specification, Architecture Specification.
Multiscale Visualization Using Data Cubes Chris Stolte, Diane Tang, Pat Hanrahan Stanford University Information Visualization October 2002 Boston, MA.
Recall The Team Skills 1. Analyzing the Problem (with 5 steps) 2. Understanding User and Stakeholder Needs 3. Defining the System 4. Managing Scope 5.
Handouts Software Testing and Quality Assurance Theory and Practice Chapter 11 System Test Design
Advanced Research Methodology
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Bridging the chasm between MDE and the world of compilation Nondini Das 1.
Reverse Engineering State Machines by Interactive Grammar Inference Neil Walkinshaw, Kirill Bogdanov, Mike Holcombe, Sarah Salahuddin.
DOPROPC: a domain property pattern system helping to specify control system requirements Fan WuHehua ZhangMing Gu School of Software, Tsinghua University.
Artificial Intelligence Dr. Paul Wagner Department of Computer Science University of Wisconsin – Eau Claire.
Parallel Programming Models Jihad El-Sana These slides are based on the book: Introduction to Parallel Computing, Blaise Barney, Lawrence Livermore National.
Enhancing Understanding of Model Behavior Through Collaborative Interactions: Explaining Why C. M. Overstreet I.B. Levinstein Computer Science Dept. Old.
1 Formal Models for Expert Finding on DBLP Bibliography Data Presented by: Hongbo Deng Co-worked with: Irwin King and Michael R. Lyu Department of Computer.
SWE 623Duminda Wijesekera1 Requirements, their Consistency and Completeness RSML Formulation of TCAS II Discussed as an example of a precise and formal.
B. Fernández, D. Darvas, E. Blanco Formal methods appliedto PLC code verification Automation seminar CERN – IFAC (CEA) 02/06/2014.
Software Engineering Research paper presentation Ali Ahmad Formal Approaches to Software Testing Hierarchal GUI Test Case Generation Using Automated Planning.
A Language Independent Method for Question Classification COLING 2004.
Overview of the language A table generation language Initialize and manipulate columns and finally generate a table The values in the column are numbers.
How to Read Research Papers? Xiao Qin Department of Computer Science and Software Engineering Auburn University
ECE450 - Software Engineering II1 ECE450 – Software Engineering II Today: Design Patterns IX Interpreter, Mediator, Template Method recap.
Ecological Interface Design in Aviation Domains Improving Pilot Trust in Automated Collision Detection and Avoidance Advanced Interface Design Laboratory.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
1 What is OO Design? OO Design is a process of invention, where developers create the abstractions necessary to meet the system’s requirements OO Design.
The Unified Modeling Language Part II Omar Meqdadi SE 2730 Lecture 9 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Bibliometrics toolkit Website: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Further info: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Scopus Scopus was launched by Elsevier in.
Automata Based Method for Domain Specific Languages Definition Ulyana Tikhonova PhD student at St. Petersburg State Politechnical University, supervised.
COP 4620 / 5625 Programming Language Translation / Compiler Writing Fall 2003 Lecture 1, 08/28/03 Prof. Roy Levow.
Theory of Programming Languages Introduction. What is a Programming Language? John von Neumann (1940’s) –Stored program concept –CPU actions determined.
© 2005 Prentice Hall1-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Compiler Introduction 1 Kavita Patel. Outlines 2  1.1 What Do Compilers Do?  1.2 The Structure of a Compiler  1.3 Compilation Process  1.4 Phases.
Generating Software Documentation in Use Case Maps from Filtered Execution Traces Edna Braun, Daniel Amyot, Timothy Lethbridge University of Ottawa, Canada.
Problem solving in control of discrete-event systems Lenko Grigorov and Karen Rudie Queen’s University Kingston, Canada.
Models and Diagrams. Models A model is an abstract representation of something real or imaginary. Like a map, a model represents something A useful model.
DESIGNING AN ARTICLE Effective Writing 3. Objectives Raising awareness of the format, requirements and features of scientific articles Sharing information.
Requirements Analysis
"Tabular Representation of Relations" and "Predicate Logic for Software Engineering" Presented by: Grant Birchmeier and Jesse Sowell Tech. Rep. 260, McMaster.
Yu, et al.’s “A Model-Driven Development Framework for Enterprise Web Services” In proceedings of the 10 th IEEE Intl Enterprise Distributed Object Computing.
Beyond Scenarios: Generating State Models from Use Cases An approach for the synthesis of State transition graphs from Use Cases Supporting Use Cases Based.
 Problem Analysis  Coding  Debugging  Testing.
1 Visual Computing Institute | Prof. Dr. Torsten W. Kuhlen Virtual Reality & Immersive Visualization Till Petersen-Krauß | GUI Testing | GUI.
Defects of UML Yang Yichuan. For the Presentation Something you know Instead of lots of new stuff. Cases Instead of Concepts. Methodology instead of the.
Visualization in Process Mining
Technical Methods for Specifying Requirements
IT316 Software Requirement Engineering
Introduction to Compiler Construction
Graph Coverage for Specifications CS 4501 / 6501 Software Testing
Project Management Dr. Aravind Banakar –
Project Management Dr. Aravind Banakar –
Project Management
Project Management
Project Management
Project Management
Knowledge Representation
ISTE Workshop Research Methods in Educational Technology
Introduction.
3.1.1 Introduction to Machine Learning
Intermediate Representations Hal Perkins Autumn 2005
Presentation transcript:

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 6 th 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