Object-Oriented Analysis and Design
|
|
- Homer Walters
- 5 years ago
- Views:
Transcription
1 Object-Oriented Analysis and Design Session 5: Behavioral Modeling State machine diagrams Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 1
2 2 Outline Introduction to State Machine State Machine Diagrams Syntax and Semantics State Hierarchy State History Mechanism State Concurrency Concluding Example State Machine Diagrams and UML Summary
3 Introduction to State Machine Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 3
4 Characterization of reactive systems Continuous interaction with the environment inputs and outputs are asynchronous in time. Respond to interrupts. Stringent time requirements. Multiple possible scenarios of operation, depending on the history of previous behavior. Based on interacting processes that operate in parallel. Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 4
5 Automata A machine whose output behavior is not only a direct consequence of the current input, but also of some past history of its inputs. Characterized by an internal state which represents this past experience. ON OFF Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 5
6 What are Statecharts? Statecharts are visual formalism for specifying behavior of complex systems. Developed by David Harel. Employee rest[break] Working Resting Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 6
7 7 State Machine (Automaton) Diagram Graphical rendering of automata behavior Lamp On on on off off Lamp Off
8 8 Outputs and Actions As the automaton changes state it can generate outputs: off Lamp On Lamp Off on on/print( on ) off Lamp On print( on ) off Lamp Off on on off Mealy automaton Moore automaton
9 9 Extended State Machines (1) Addition of variables ( extended state ) on ctr : Integer Lamp On on/ctr := ctr + 1 off off Lamp Off
10 Extended State Machines (2) An extended (Mealy) state machine is defined by: a set of input signals (input alphabet) a set of output signals (output alphabet) a set of states a set of transitions triggering signal action a set of extended state variables an initial state designation a set of final states (if terminating automaton) Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 10
11 State Machine Diagrams Syntax and Semantics Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 11
12 12 State Machine Diagram Initial pseudostate top top state State Trigger Ready Transition Final state Done stop/ctr := 0 stop Action
13 States Statechart Diagram Elements Any component or object within the system can be at a specific state in a given time. When holding the state, an object (or a component) can perform activities (which can be interrupted). Transitions Specification of rules for moving between states. A transition may consist of a trigger, condition, and an action. Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 13
14 14 Initial and Final States start black moves White s turn Black s turn checkmate Black wins stalemate white Draw moves stalemate checkmate White wins
15 15 Activity and Action An activity: can be performed within a state. can be continuous. can be sequential. takes time. An action: can be performed within a state or during a transition. can not be interrupted. is atomic. can take time.
16 Event-Driven Behavior Event = a type of observable occurrence interactions: object operation invocation (call event). asynchronous signal reception (signal event). occurrence of time instants (time event) interval expiry. calendar/clock time. change in value of some entity (change event). Event Instance = an instance of an event (type) occurs at a particular time instant and has no duration. Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 16
17 17 Transitions A transition is enabled if the object is at a state preceding the transition. An enabled transition is activated upon its trigger activation. S1 E1 S2 E2 S3 An initial transition indicates that the default is entering S2. A transition can connect the same state.
18 18 State Entry and Exit Actions LampOn entry/lamp.on(); exit/lamp.off(); e2 e1
19 Order of Actions: Simple Case Entry actions are performed after (entering) transition actions. Exit actions are performed before (exiting) transition actions. LampOn entry/lamp.on(); exit/printf( exiting ); off/printf( to off ); LampOff entry/lamp.off(); exit/printf( exiting ); Resulting action sequence: printf( exiting ); printf( to off ); lamp.off(); off/printf( needless ); printf( exiting ); printf( needless ); lamp.off(); Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 19
20 20 Internal Transitions Self-transitions that bypass entry and exit. actions Internal transition triggered by an off event LampOff entry/lamp.off(); exit/printf( exiting ); off/null;
21 State ( Do ) Activities Forks a concurrent thread that executes until: the action completes or the state is exited. Error do activity entry/printf( error! ) do/while (true) alarm.ring(); Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 21
22 22 Guards Conditional execution of transitions side-effect free bid [value < 100] /reject Selling bid [value >= 200] /sell Happy bid [(value >= 100) & (value < 200)] /sell Unhappy
23 23 Guards and Events (1) S1 E1 S2 Entered C S3 S1 E1 S2 [C] S3
24 24 Traffic Light Example N/S may go straight tm(1) [cars in N/S left lanes] N/S may turn left tm(1) tm(1)[no cars in E/W left lanes] tm(1)[no cars in N/S left lanes] tm(1) E/W may turn left tm(1)[cars in E/W left lanes] E/W may go straight
25 25 Phone Line Example on hook on hook Busy tone do: sound busy tone digit (n) on hook on hook busy on hook / disconnect line on hook Idle Dial tone do: sound dial tone Dialing Ringing Connected Disconnected off hook digit (n) valid number Connecting do: find connection routed time out time out on hook invalid number called phone answers / connect line called phone hangs up / disconnect line Time out Recorded message do: play message message done
26 26 Static Conditional Branching Merely a graphical shortcut for convenient rendering of decision trees. Selling Happy bid [value < 100] /reject [value >= 200] /sell [(value >= 100) & (value < 200)] /sell Unhappy
27 27 Dynamic Conditional Branching Choice pseudostate: guards are evaluated only when the decision point is reached. Selling Happy bid /gain := calculatepotentialgain(value) [gain < 100] /reject [gain >= 200] /sell Dynamic choicepoint Unhappy [(gain >= 100) & (gain < 200)] /sell
28 State Hierarchy Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 28
29 States Hierarchy (1) Intended to cluster together alternative states of a single aspect / object. Results: OR states. An OR state is a super-state of its sub-states. A state that has no sub-states is a basic state. Indentation-status On The states in an IndentationStatus statechart: Off Left Right Center Justify Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 29
30 30 States Hierarchy (2) States hierarchy is used for describing different levels of abstraction. High Level Detailed Level
31 31 States Hierarchy (3) States hierarchy is used for clustering. Un clustered clustered
32 States Hierarchy (4) Initial States one per state. To be in a state is to be in ONE of its sub states. Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 32
33 33 States Hierarchy (5) Graduated attack on complexity states decomposed into state machines off/ LampOff entry/lamp.off() flash/ LampFlashing FlashOn entry/lamp.on() LampOn on/ entry/lamp.on() on/ on/ 1sec/ 1sec/ FlashOff entry/lamp.off()
34 34 States Hierarchy (6) Higher-level transitions Default transition to the initial pseudostate LampOff entry/lamp.off() off/ on/ LampOn entry/lamp.on() flash/ on/ LampFlashing FlashOn entry/lamp.on() 1sec/ 1sec/ FlashOff entry/lamp.off()
35 35 States Hierarchy (7) Triggered by a completion event generated automatically when an immediately nested state machine terminates. Committing Phase1 completion transition (no trigger) Phase2 CommitDone
36 States Hierarchy (8) Two or more transitions may have the same triggered event inner transition takes precedence. if no transition is triggered, event is discarded. LampFlashing FlashOn on/ off/ FlashOff on/ Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 36
37 37 States Hierarchy (9) Same approach as for the simple case S1 exit/exs1 S11 exit/exs11 E/actE S2 entry/ens2 inits2 S21 entry/ens21 Actions execution sequence: exs11 exs1 acte ens2 inits2 ens21
38 State History Mechanism Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 38
39 History Mechanism (1) Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 39
40 History Mechanism (2) Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 40
41 41 History Mechanism (3) G
42 History Mechanism (4) Return to a previously visited hierarchical state deep and shallow history options suspend/ Diagnostic1 Diagnosing Diagnostic2 Step11 Step21 resume/ H* Step12 Step22 Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 42
43 State Concurrency Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 43
44 44 Orthogonality and Concurrency (1) Multiple simultaneous perspectives on the same entity age employee Child Adult Staff Member Retiree Manager
45 45 Orthogonality and Concurrency (2) Describe independent components of a behavior. Behavior of parts of an aggregate object. Enforce synchronization of concurrent activities. Concurrency is an AND-decomposition of a state. To be in a state S is to be in ALL of its components. S is an AND state.
46 46 Orthogonality and Concurrency (3) Combine multiple simultaneous descriptions age employee Child Adult age employee Staff Member Retiree Child Adult Staff Member Manager Retiree Manager
47 Orthogonality and Concurrency (4) A a B C b (in G) D g E G d a m F Use of Orthogonal Regions B,E m g B,F d B,G No Use of Orthogonal Regions a C,E m g C,F a a d a b C,G Object-Oriented Analysis and Design 47
48 48 Orthogonality and Concurrency (5) All mutually orthogonal regions detect the same events and respond to them simultaneously. legalstatus financialstatus LawAbiding Poor Outlaw robbank/ Rich robbank/
49 49 Orthogonality and Concurrency (6) Typically through shared variables or awareness of other regions state changes. sane : Boolean Catch22 sanitystatus flying : Boolean flightstatus request Grounding/ Crazy entry/sane := false; (flying)/ Sane entry/sane := true; Flying entry/flying := true; (~sane)/ Grounded entry/flying := false; (sane)/
50 Transition Sequence A transition might be a trigger An event can trigger additional transitions Several transition can be triggered within a single step Solution The number of triggered transition should be limited A C b/d a/c d/a c/b B D Object-Oriented Analysis and Design 50
51 51 Transition Forks and Joins For transitions into/out of orthogonal regions: age Child Adult Retiree Staff Member Manager employee
52 Reducing Multiple Transitions (1) Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 52
53 Reducing Multiple Transitions (2) Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 53
54 Concluding Example Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 54
55 55 Mini Organ Example (1) ON\OFF a Display STYLE b Name Mode SONG c Number START
56 56 Mini Organ Example (2) 1. The button a is used for switch the organ on and off 2. The organ enables a song selection and its style. When the organ is turned on the display shows the mode: STYLE or SONG and its number. The default is song #1/sytle #1 and the mode is STYLE. 3. To select a style one need to press the b button and the required style number (1-9). Each style has a function that return its name StyleName(x). 4. To select a song one need to press the c button and the required song number(1-9). Each song has a function that return its name SongName(x). 5. Pressing the start button plays the current song following the current style. Another press stop the music. It is possible to change the song or style during music playing.
57 57 Mini Organ Example (3) Events a - pressing the a button b - pressing the b button c - pressing the c button s - pressing the START button i - pressing the a digit button (2-9) 1 - pressing the 1 button songend end of song playing Variables i,j can get values between 2-9 k,m can get values between 1-9 w can get a song or style name
58 58 Mini Organ Example (4) off a a on play mode song# style# display s or songend disable enable s Do: if song# in k and style# in m then play song k in style m style b song c 1[c1] j[c1] 1 j i[c2] 1 i 1[c2] disp-mode x style name [c4] b w [c2] c [c1] song number k y [c3]
59 State Machine and UML Mira Balaban & Arnon Sturm Object-Oriented Analysis and Design 59
60 60 Dishwasher Class Diagram Dishwasher cycles : int rinsetime : int washtime : int drytime : int Tank evtankdrain() evtankfill() 1 itstank Dishwasher() setup() evstart() evopen() evclose() evquick() evnormal() evintensive() evservice() 1 itsjet Jet evjetoff() evjetspray() evjetpulse() itsheater 1 Heater evheateroff() evheateron()
61 61 Dishwasher State Machine Diagram AcmeHeater AcmeJet Dishwasher off evheateron evheateroff idle on evjetspray evjetoff evjetpulse AcmeTank evtankfill tm(4000)/ itsdishwasher->gen(evfull); filling running spraying pulsing empty> full> tm(4000)/ itsdishwasher->gen(evempty); draining evtankdrain
62 62 Summary UML uses a variant of Harel s statecharts adjusted to software modeling needs Used to model event-driven (reactive) behavior well-suited to the server model inherent in the object paradigm Includes a number of sophisticated features that realize common state-machine usage patterns: entry/exit actions state activities dynamic and static conditional branching Also, provides hierarchical modeling for dealing with very complex systems hierarchical states hierarchical transitions orthogonality
State modeling. Marlon Dumas. Institute of Computer Science
State modeling Marlon Dumas Institute of Computer Science Where are we? Notation Class diagrams Use case diagrams/use cases Sequence diagrams Statecharts Petri nets Decision trees & DMN Purpose Domain
More informationObject Modeling Approach! Object Modeling Approach!
Object Modeling Approach! 1 Object Modeling Approach! Start with a problem statement! High-level requirements! Define object model! Identify objects and classes! Prepare data dictionary! Identify associations
More informationInformation System Design IT60105
n IT60105 Lecture 13 Statechart Diagrams Lecture #13 What is a Statechart diagram? Basic components in a state-chart diagram and their notations Examples: Process Order in OLP system What is a Statechart
More informationEmbedded Systems 2. REVIEW: Actor models. A system is a function that accepts an input signal and yields an output signal.
Embedded Systems 2 REVIEW: Actor models A system is a function that accepts an input signal and yields an output signal. The domain and range of the system function are sets of signals, which themselves
More informationDesign and Analysis of Distributed Interacting Systems
Design and Analysis of Distributed Interacting Systems Organization Prof. Dr. Joel Greenyer April 11, 2013 Organization Lecture: Thursdays, 10:15 11:45, F 128 Tutorial: Thursdays, 13:00 13:45, G 323 first
More informationEmbedded Systems Development
Embedded Systems Development Lecture 2 Finite Automata & SyncCharts Daniel Kästner AbsInt Angewandte Informatik GmbH kaestner@absint.com Some things I forgot to mention 2 Remember the HISPOS registration
More informationTRANSITION CONFLICTS DETECTION IN BINARY MODULAR STATECHART DIAGRAMS 1. Grzegorz Łabiak
TRANSITION CONFLICTS DETECTION IN BINARY MODULAR STATECHART DIAGRAMS 1 Grzegorz Łabiak Computer Engineering & Electronics Department, University of Zielona Góra, Podgórna 50, 65-246 Zielona Góra, Poland.
More informationOpus: University of Bath Online Publication Store
Lam, V. S. W. (2006) A formal execution semantics and rigorous analytical approach for communicating UML statechart diagrams. Other. Department of Computer Science, University of Bath. Link to official
More informationTheoretical Foundations of the UML Lecture 18: Statecharts Semantics (1)
Theoretical Foundations of the UML Lecture 18: Statecharts Semantics (1) Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group http://moves.rwth-aachen.de/teaching/ws-1415/uml/
More informationFinite State Machines. CS 447 Wireless Embedded Systems
Finite State Machines CS 447 Wireless Embedded Systems Outline Discrete systems Finite State Machines Transitions Timing Update functions Determinacy and Receptiveness 1 Discrete Systems Operates in sequence
More informationModule 7. Software Engineering Issues. Version 2 EE IIT, Kharagpur 1
Module 7 Software Engineering Issues Version 2 EE IIT, Kharagpur 1 Lesson 35 Modelling Timing Constraints Version 2 EE IIT, Kharagpur 2 Specific Instructional Objectives At the end of this lesson, the
More informationFormal Methods in Software Engineering
Formal Methods in Software Engineering Modeling Prof. Dr. Joel Greenyer October 21, 2014 Organizational Issues Tutorial dates: I will offer two tutorial dates Tuesdays 15:00-16:00 in A310 (before the lecture,
More informationUML Model Refactoring
UML Model Refactoring Viktor Stojkovski University of Antwerpen, Faculty of Computer Science, Master Studies - Software Engineering, Antwerpen, Belgium Abstract Creating a complex UML statechart diagrams
More informationFoundations of System Development
Foundations of System Development Martin Wirsing in cooperation with Axel Rauschmayer WS 05/06 Ausblick: Systematische Entwicklung Mobiler Systeme 2 Goals Modelling and Developing Systems Using UML and
More informationOutline F eria AADL behavior 1/ 78
Outline AADL behavior Annex Jean-Paul Bodeveix 2 Pierre Dissaux 3 Mamoun Filali 2 Pierre Gaufillet 1 François Vernadat 2 1 AIRBUS-FRANCE 2 FéRIA 3 ELLIDIS SAE AS2C Detroit Michigan April 2006 FéRIA AADL
More informationLogic Model Checking
Logic Model Checking Lecture Notes 10:18 Caltech 101b.2 January-March 2004 Course Text: The Spin Model Checker: Primer and Reference Manual Addison-Wesley 2003, ISBN 0-321-22862-6, 608 pgs. the assignment
More information7. Queueing Systems. 8. Petri nets vs. State Automata
Petri Nets 1. Finite State Automata 2. Petri net notation and definition (no dynamics) 3. Introducing State: Petri net marking 4. Petri net dynamics 5. Capacity Constrained Petri nets 6. Petri net models
More informationThe STATEMATE Semantics of Statecharts. Presentation by: John Finn October 5, by David Harel
The STATEMATE Semantics of Statecharts Presentation by: John Finn October 5, 2010 by David Harel Outline Introduction The Basics System Reactions Compound Transitions History Scope of Transitions Conflicting
More informationEECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization
EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Discrete Systems Lecture: Automata, State machines, Circuits Stavros Tripakis University of California, Berkeley Stavros
More informationFormal Methods Engineering Nasreen Iqbal De Montfort University
Formal Methods Engineering Nasreen Iqbal De Montfort University EX: 2.C13. DESCRIBE THE FINITE STATE MACHINE The finite state machine is an approach to the mathematical model of computation, exploited
More informationFormalizing Non-Concurrent UML State Machines Using Colored Petri Nets
1 Formalizing Non-Concurrent UML State Machines Using Colored Petri Nets Étienne André, Christine Choppy, Kais Klai LIPN, CNRS UMR 7030, Université Paris 13, France e-mail: {first.last}@lipn.univ-paris13.fr
More informationDiscrete Dynamics Finite State Machines גרא וייס המחלקה למדעי המחשב אוניברסיטת בן-גוריון
Discrete Dynamics Finite State Machines גרא וייס המחלקה למדעי המחשב אוניברסיטת בן-גוריון 2 Recap: Actor Model An actor is a mapping of input signals to output signals S: R R k R R m where k is the number
More informationKing Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department
King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department Page 1 of 13 COE 202: Digital Logic Design (3-0-3) Term 112 (Spring 2012) Final
More informationExpressing Dynamics of Mobile Programs by Typing
5 th Slovakian-Hungarian Joint Symposium on Applied Machine Intelligence and Informatics January 25-26, 2007 Poprad, Slovakia Expressing Dynamics of Mobile Programs by Typing Martin Tomášek Department
More informationReview for B33DV2-Digital Design. Digital Design
Review for B33DV2 The Elements of Modern Behaviours Design Representations Blocks Waveforms Gates Truth Tables Boolean Algebra Switches Rapid Prototyping Technologies Circuit Technologies TTL MOS Simulation
More informationLinear Temporal Logic and Büchi Automata
Linear Temporal Logic and Büchi Automata Yih-Kuen Tsay Department of Information Management National Taiwan University FLOLAC 2009 Yih-Kuen Tsay (SVVRL @ IM.NTU) Linear Temporal Logic and Büchi Automata
More informationA test sequence selection method for statecharts
SOFTWARE TESTING, VERIFICATION AND RELIABILITY Softw. Test. Verif. Reliab. 2000; 10: 203 227 A test sequence selection method for statecharts Hyoung Seok Hong 1,*, Young Gon Kim 1, Sung Deok Cha 1,*, Doo
More informationA Sample State Machine
A Sample State Machine Environment Signatures An environment signature is a triple of sets of guards, actions, and messages. H = (G H, A H, M H ) Guards: formulas in some logical language, e.g. OCL. Actions
More informationEmbedded Systems 5. Synchronous Composition. Lee/Seshia Section 6.2
Embedded Systems 5-1 - Synchronous Composition Lee/Seshia Section 6.2 Important semantic model for concurrent composition Here: composition of actors Foundation of Statecharts, Simulink, synchronous programming
More information6.852: Distributed Algorithms Fall, Class 10
6.852: Distributed Algorithms Fall, 2009 Class 10 Today s plan Simulating synchronous algorithms in asynchronous networks Synchronizers Lower bound for global synchronization Reading: Chapter 16 Next:
More informationProcess Algebras and Concurrent Systems
Process Algebras and Concurrent Systems Rocco De Nicola Dipartimento di Sistemi ed Informatica Università di Firenze Process Algebras and Concurrent Systems August 2006 R. De Nicola (DSI-UNIFI) Process
More informationDiscrete Event Systems
DI DIPARTIMENTO DI INGEGNERIA DELL INFORMAZIONE E SCIENZE MATEMATICHE Lecture notes of Discrete Event Systems Simone Paoletti Version 0.3 October 27, 2015 Indice Notation 1 Introduction 2 1 Basics of systems
More informationFinite-state machines (FSMs)
Finite-state machines (FSMs) Dr. C. Constantinides Department of Computer Science and Software Engineering Concordia University Montreal, Canada January 10, 2017 1/19 Finite-state machines (FSMs) and state
More informationLecture 05: High-Level Design with SysML. An Introduction to SysML. Where are we? What is a model? The Unified Modeling Language (UML)
Where are we? Systeme hoher Sicherheit und Qualität Universität Bremen, WS 2017/2018 Lecture 05: High-Level Design with SysML Christoph Lüth, Dieter Hutter, Jan Peleska 01: Concepts of Quality 02: Legal
More informationLet s now begin to formalize our analysis of sequential machines Powerful methods for designing machines for System control Pattern recognition Etc.
Finite State Machines Introduction Let s now begin to formalize our analysis of sequential machines Powerful methods for designing machines for System control Pattern recognition Etc. Such devices form
More informationPart I. Principles and Techniques
Introduction to Formal Methods Part I. Principles and Techniques Lecturer: JUNBEOM YOO jbyoo@konkuk.ac.kr Introduction Text System and Software Verification : Model-Checking Techniques and Tools In this
More informationActions and Activities
STATE DIAGRAM Actions and Activities Internal transition compartmen t State Name Internal actions and activities for a state Name compartment entry / action expression exit/ action expression do / activity
More informationFormal Conformance Testing 2006
Formal Conformance Testing 2006 Lecture 1 14th Sep 2006 Welcome! This is T-79.5304: Formal Conformance Testing Lectures from 10 to 12 am, no regular tutorials Cancellations and other notes at the web page
More informationThe Discrete EVent System specification (DEVS) formalism
The Discrete EVent System specification (DEVS) formalism Hans Vangheluwe The DEVS formalism was conceived by Zeigler [Zei84a, Zei84b] to provide a rigourous common basis for discrete-event modelling and
More informationSemantics of S.S.M. (Safe State Machine)
Semantics of S.S.M. (Safe State Machine) Charles André I3S Laboratory UMR 6070 University of Nice-Sophia Antipolis / CNRS BP 121 F 06903 Sophia Antipolis cédex andre@unice.fr April 2003 1 2 Semantics of
More informationFormal Semantics for Grafcet Controlled Systems 1 Introduction 2 Grafcet
Formal Semantics for Grafcet Controlled Systems JANAN ZAYTOON Laboratoire d'automatique et de Microélectronique Faculté des Sciences Moulin de la Housse, BP 1039, 51687 Reims cedex 2 FRANCE Abstract: Grafcet
More informationCo-simulation of embedded systems: a PVS-Simulink integrated environment
Co-simulation of embedded systems: a PVS-Simulink integrated environment Cinzia Bernardeschi 1 Andrea Domenici 1 Paolo Masci 2 1 Department of Information Engineering, University of Pisa 2 INESC-TEC and
More informationChapter 5: Linear Temporal Logic
Chapter 5: Linear Temporal Logic Prof. Ali Movaghar Verification of Reactive Systems Spring 94 Outline We introduce linear temporal logic (LTL), a logical formalism that is suited for specifying LT properties.
More informationFormal Verification Techniques. Riccardo Sisto, Politecnico di Torino
Formal Verification Techniques Riccardo Sisto, Politecnico di Torino State exploration State Exploration and Theorem Proving Exhaustive exploration => result is certain (correctness or noncorrectness proof)
More informationAutomata-based Verification - III
COMP30172: Advanced Algorithms Automata-based Verification - III Howard Barringer Room KB2.20: email: howard.barringer@manchester.ac.uk March 2009 Third Topic Infinite Word Automata Motivation Büchi Automata
More informationProperty of Monitronics Inc
Enter Program 4140 + 8 + 0 + 0 (Display should show 00, also try 4130 and 5130) or Power down then back up and press * and # within 1 minute (If exiting programming you can re-enter within 1 minute by
More informationA Random Walk from Async to Sync. Paul Cunningham & Steev Wilcox
A Random Walk from Async to Sync Paul Cunningham & Steev Wilcox Thank You Ivan In the Beginning March 2002 Azuro Day 1 Some money in the bank from Angel Investors 2 employees Small Office rented from Cambridge
More informationChapter 5. Finite Automata
Chapter 5 Finite Automata 5.1 Finite State Automata Capable of recognizing numerous symbol patterns, the class of regular languages Suitable for pattern-recognition type applications, such as the lexical
More informationDistributed Deadlock-Avoidance. IMDEA Software Institute, Spain
Distributed Deadlock-voidance César Sánchez IMDE Software Institute, Spain DRV Workshop, ertinoro 19-May, 216 Distributed Deadlock-voidance little story about how static knowledge can help solve unsolvable
More informationEmbedded Systems. Embedded Systems
Embedded Systems - 1 - Embedded Systems Bernd Finkbeiner (finkbeiner@cs.uni-sb.de) Rüdiger Ehlers (ehlers@cs.uni-sb.de) Hans-Jörg Peter (peter@cs.uni-sb.de) Michael Gerke (micge@hotmail.com) Lectures:
More informationEECS150 - Digital Design Lecture 23 - FSMs & Counters
EECS150 - Digital Design Lecture 23 - FSMs & Counters April 8, 2010 John Wawrzynek Spring 2010 EECS150 - Lec22-counters Page 1 One-hot encoding of states. One FF per state. State Encoding Why one-hot encoding?
More informationECE 407 Computer Aided Design for Electronic Systems. Simulation. Instructor: Maria K. Michael. Overview
407 Computer Aided Design for Electronic Systems Simulation Instructor: Maria K. Michael Overview What is simulation? Design verification Modeling Levels Modeling circuits for simulation True-value simulation
More informationSoftware Verification
Software Verification Grégoire Sutre LaBRI, University of Bordeaux, CNRS, France Summer School on Verification Technology, Systems & Applications September 2008 Grégoire Sutre Software Verification VTSA
More informationT4 TIMER - PROJECT DESCRIPTION - rev. 5.10
1. Display Logic A. When displaying in HH:MM, it will not be obvious from the display that the timer is counting, the 4 dots at the bottom of the display chase from left to right to indicate its counting
More information{},{a},{a,c} {},{c} {c,d}
Modular verication of Argos Programs Agathe Merceron 1 and G. Michele Pinna 2 1 Basser Department of Computer Science, University of Sydney Madsen Building F09, NSW 2006, Australia agathe@staff.cs.su.oz.au
More informationAlgorithmic verification
Algorithmic verification Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2018 Outline Overview Model checking Symbolic execution Outline Overview Model checking Symbolic execution Program verification
More informationThe AADL behavior annex - experiments and roadmap
The AADL behavior annex - experiments and roadmap R. B. França 1 J-P. Bodeveix 1 M. Filali 1 J-F. Rolland 1 D. Chemouil 2 D. Thomas 3 1 Institut de Recherche en Informatique de Toulouse Université Paul
More informationEmbedded Systems 14. Overview of embedded systems design
Embedded Systems 14-1 - Overview of embedded systems design - 2-1 Point of departure: Scheduling general IT systems In general IT systems, not much is known about the computational processes a priori The
More informationSEMANTICS OF SYNCCHARTS
LABORATOIRE INFORMATIQUE, SIGNAUX ET SYSTÈMES DE SOPHIA ANTIPOLIS UMR 6070 SEMANTICS OF SYNCCHARTS Charles André Projet SPORTS Rapport de recherche ISRN I3S/RR 2003-24 FR Octobre2003 LABORATOIRE I3S: Les
More informationECE 448 Lecture 6. Finite State Machines. State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts, and VHDL Code. George Mason University
ECE 448 Lecture 6 Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts, and VHDL Code George Mason University Required reading P. Chu, FPGA Prototyping by VHDL Examples
More informationLab 1 Uniform Motion - Graphing and Analyzing Motion
Lab 1 Uniform Motion - Graphing and Analyzing Motion Objectives: < To observe the distance-time relation for motion at constant velocity. < To make a straight line fit to the distance-time data. < To interpret
More informationSPECIFICATION MODELS. Chapter 3. Overview. Introducing Hierarchy. StateCharts
hapter SPEIFITION MOELS Overview Stateharts Hierarchy oncurrency Events and ctions Simulation Semantics Non-eterminism and onflicts Petri Nets Notation oncurrency Petri Net Languages ehavioral Properties
More informationAutomata-Theoretic Model Checking of Reactive Systems
Automata-Theoretic Model Checking of Reactive Systems Radu Iosif Verimag/CNRS (Grenoble, France) Thanks to Tom Henzinger (IST, Austria), Barbara Jobstmann (CNRS, Grenoble) and Doron Peled (Bar-Ilan University,
More informationAutomata-based Verification - III
CS3172: Advanced Algorithms Automata-based Verification - III Howard Barringer Room KB2.20/22: email: howard.barringer@manchester.ac.uk March 2005 Third Topic Infinite Word Automata Motivation Büchi Automata
More informationComputer Science 520/620 Spring 2013 Prof. L. Osterweil" Software Models and Representations" Part 3" Graphs Other than DFGs"
Computer Science 520/620 Spring 2013 Prof. L. Osterweil Software Models and Representations Part 3 Graphs Other than DFGs Formalizing DFGs as Relations (i, j) ε DataFlow G if de i creates data that de
More informationMODEL CHECKING. Arie Gurfinkel
1 MODEL CHECKING Arie Gurfinkel 2 Overview Kripke structures as models of computation CTL, LTL and property patterns CTL model-checking and counterexample generation State of the Art Model-Checkers 3 SW/HW
More informationComputer Science 520/620 Spring 2013 Prof. L. Osterweil" Software Models and Representations" Part 3" Graphs Other than DFGs" Hierarchy"
Computer Science 520/620 Spring 2013 Prof. L. Osterweil Software Models and Representations Part 3 Graphs Other than DFGs Formalizing DFGs as Relations (i, j) ε DataFlow G if de i creates data that de
More informationIntroduction to Computers & Programming
16.070 Introduction to Computers & Programming Theory of computation: What is a computer? FSM, Automata Prof. Kristina Lundqvist Dept. of Aero/Astro, MIT Models of Computation What is a computer? If you
More informationCombining STATEMATE and FNLOG for the specification and the verification of complex real time systems
GESTS Int l Trans. Computer Science and Engr., Vol.20, No.1 65 Combining STATEMATE and FNLOG for the specification and the verification of complex real time systems Leila JEMNI BEN AYED 1 and Olfa MOSBAHI
More informationMODELLING THE WORLD IN STATES
INTERNATIONAL CONFERENCE ON ENGINEERING DESIGN, ICED 07 28-31 AUGUST 2007, CITE DES SCIENCES ET DE L'INDUSTRIE, PARIS, FRANCE MODELLING THE WORLD IN STATES Tapio Korpela 1 and Jussi A. Karjalainen 1 1
More informationTest Statistique Structurel et Fonctionnel
Test Statistique Structurel et Fonctionnel Pascale Thévenod-Fosse, Hélène Waeselynck {thevenod,waeselyn}@laas.fr Journée Club SEE "Systèmes informatiques de confiance" Thème : Test Paris, le 1er juin 1999
More informationTECHNICAL MANUAL 820 LX / 910 LX / 1300 LX
TECHNICAL MANUAL 820 LX / 910 LX / 1300 LX LANCER reserves the right to modify, constantly its documentation for its improvement. The values of adjustments indicated in the displays of this manual are
More informationFormal Verification of Mobile Network Protocols
Dipartimento di Informatica, Università di Pisa, Italy milazzo@di.unipi.it Pisa April 26, 2005 Introduction Modelling Systems Specifications Examples Algorithms Introduction Design validation ensuring
More informationEDA045F: Program Analysis LECTURE 10: TYPES 1. Christoph Reichenbach
EDA045F: Program Analysis LECTURE 10: TYPES 1 Christoph Reichenbach In the last lecture... Performance Counters Challenges in Dynamic Performance Analysis Taint Analysis Binary Instrumentation 2 / 44 Types
More informationAbstractions and Decision Procedures for Effective Software Model Checking
Abstractions and Decision Procedures for Effective Software Model Checking Prof. Natasha Sharygina The University of Lugano, Carnegie Mellon University Microsoft Summer School, Moscow, July 2011 Lecture
More informationOverview. Discrete Event Systems Verification of Finite Automata. What can finite automata be used for? What can finite automata be used for?
Computer Engineering and Networks Overview Discrete Event Systems Verification of Finite Automata Lothar Thiele Introduction Binary Decision Diagrams Representation of Boolean Functions Comparing two circuits
More informationReal Time Operating Systems
Real Time Operating ystems Luca Abeni luca.abeni@unitn.it Interacting Tasks Until now, only independent tasks... A job never blocks or suspends A task only blocks on job termination In real world, jobs
More informationSynthesis of Designs from Property Specifications
Synthesis of Designs from Property Specifications Amir Pnueli New York University and Weizmann Institute of Sciences FMCAD 06 San Jose, November, 2006 Joint work with Nir Piterman, Yaniv Sa ar, Research
More informationInteracting Vehicles: Rules of the Game
Chapter 7 Interacting Vehicles: Rules of the Game In previous chapters, we introduced an intelligent control method for autonomous navigation and path planning. The decision system mainly uses local information,
More informationFinite Automata. Mahesh Viswanathan
Finite Automata Mahesh Viswanathan In this lecture, we will consider different models of finite state machines and study their relative power. These notes assume that the reader is familiar with DFAs,
More informationDigital Control of Electric Drives
Digital Control of Electric Drives Logic Circuits - equential Description Form, Finite tate Machine (FM) Czech Technical University in Prague Faculty of Electrical Engineering Ver.. J. Zdenek 27 Logic
More informationIntroduction to Model Checking. Debdeep Mukhopadhyay IIT Madras
Introduction to Model Checking Debdeep Mukhopadhyay IIT Madras How good can you fight bugs? Comprising of three parts Formal Verification techniques consist of three parts: 1. A framework for modeling
More informationInformation System Design IT60105
Information System Design IT60105 Lecture 6 Object-Oriented Design Paradigms Concepts of objects Lecture #5 Object-Oriented Paradigms Class Encapsulation Relation between classes Association Aggregation
More informationA Theory for Composing Distributed Components, Based on Temporary Interference
A Theory for Composing Distributed Components, Based on Temporary Interference I.S.W.B. Prasetya T.E.J. Vos S.D. Swierstra B. Widjaja Abstract Compositionality provides the foundation of software modularity,
More informationSequential programs. Uri Abraham. March 9, 2014
Sequential programs Uri Abraham March 9, 2014 Abstract In this lecture we deal with executions by a single processor, and explain some basic notions which are important for concurrent systems as well.
More informationSecurity as a Resource in Process-Aware Information Systems
Security as a Resource in Process-Aware Information Systems 14 October 2011 Joint Work with: Jason Crampton Information Security Group Royal Holloway Jim Huan-Pu Kuo Department of Computing Imperial College
More informationComplex Systems Design & Distributed Calculus and Coordination
Complex Systems Design & Distributed Calculus and Coordination Concurrency and Process Algebras: Theory and Practice Francesco Tiezzi University of Camerino francesco.tiezzi@unicam.it A.A. 2014/2015 F.
More informationHow to deal with uncertainties and dynamicity?
How to deal with uncertainties and dynamicity? http://graal.ens-lyon.fr/ lmarchal/scheduling/ 19 novembre 2012 1/ 37 Outline 1 Sensitivity and Robustness 2 Analyzing the sensitivity : the case of Backfilling
More informationIntroduction to Automata
Introduction to Automata Seungjin Choi Department of Computer Science and Engineering Pohang University of Science and Technology 77 Cheongam-ro, Nam-gu, Pohang 37673, Korea seungjin@postech.ac.kr 1 /
More informationKing Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department
King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department Page of COE 22: Digital Logic Design (3--3) Term (Fall 22) Final Exam Sunday January
More informationCIS 842: Specification and Verification of Reactive Systems. Lecture Specifications: Specification Patterns
CIS 842: Specification and Verification of Reactive Systems Lecture Specifications: Specification Patterns Copyright 2001-2002, Matt Dwyer, John Hatcliff, Robby. The syllabus and all lectures for this
More informationAn Indian Journal FULL PAPER ABSTRACT KEYWORDS. Trade Science Inc.
[Type text] [Type text] [Type text] ISSN : 0974-7435 Volume 10 Issue 11 BioTechnology 2014 An Indian Journal FULL PAPER BTAIJ, 10(11), 2014 [5576-5583] Research on the probability of extended UML state
More informationLogic and Computer Design Fundamentals. Chapter 8 Sequencing and Control
Logic and Computer Design Fundamentals Chapter 8 Sequencing and Control Datapath and Control Datapath - performs data transfer and processing operations Control Unit - Determines enabling and sequencing
More informationTime and Schedulability Analysis of Stateflow Models
Time and Schedulability Analysis of Stateflow Models Marco Di Natale Scuola Superiore S. Anna Haibo Zeng Mc Gill University Outline Context: MBD of Embedded Systems Relationship with PBD An Introduction
More informationIntroduction: Computer Science is a cluster of related scientific and engineering disciplines concerned with the study and application of computations. These disciplines range from the pure and basic scientific
More informationRecoverable Robustness in Scheduling Problems
Master Thesis Computing Science Recoverable Robustness in Scheduling Problems Author: J.M.J. Stoef (3470997) J.M.J.Stoef@uu.nl Supervisors: dr. J.A. Hoogeveen J.A.Hoogeveen@uu.nl dr. ir. J.M. van den Akker
More informationHybrid Control and Switched Systems. Lecture #4 Simulation of hybrid systems
Hybrid Control and Switched Systems Lecture #4 Simulation of hybrid systems João P. Hespanha University of California at Santa Barbara Summary 1. Numerical simulation of hybrid automata simulations of
More informationSynchronous Sequential Circuit Design. Dr. Ehab A. H. AL-Hialy Page 1
Synchronous Sequential Circuit Design Dr. Ehab A. H. AL-Hialy Page Motivation Analysis of a few simple circuits Generalizes to Synchronous Sequential Circuits (SSC) Outputs are Function of State (and Inputs)
More informationHRML: a hybrid relational modelling language. He Jifeng
HRML: a hybrid relational modelling language He Jifeng Hybrid Systems Systems are composed by continuous physical component and discrete control component The system state evoles over time according to
More informationTheoretical Foundations of the UML
Theoretical Foundations of the UML Lecture 17+18: A Logic for MSCs Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group moves.rwth-aachen.de/teaching/ws-1718/fuml/ 5.
More information