Data and Knowledge Representation Lecture 6 Qing Zeng, Ph.D.

Slides:



Advertisements
Similar presentations
Finite State Machines (FSM)
Advertisements

Finite State Machines (FSMs)
1 SE-561 Formal Methods in Software Petri Nets - I.
Principles of Engineering System Design Dr T Asokan
Introduction to Petri Nets Hugo Andrés López
Based on: Petri Nets and Industrial Applications: A Tutorial
Interaction Modeling for Testing We would generate the test cases based on our understanding of the interactions that may happen. The source is, again,
Give qualifications of instructors: DAP
IE 469 Manufacturing Systems
Discrete Interaction Design Specification Prof. Dr. Matthias Rauterberg Faculty Industrial Design Technical University of Eindhoven
CS 151 Digital Systems Design Lecture 37 Register Transfer Level
Synthesis of Embedded Software Using Free-Choice Petri Nets.
Petri Nets Overview 1 Definition of Petri Net C = ( P, T, I, O) Places P = { p 1, p 2, p 3, …, p n } Transitions T = { t 1, t 2, t 3, …, t n } Input.
CS447/ECE453/SE465 Prof. Alencar University of Waterloo 1 CS447/ECE453/SE465 Software Testing Tutorial Winter 2008 Based on the tutorials by Prof. Kontogiannis,
© 2005 Prentice Hall12-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
1 Gas Station and Cruise Control Specifications Ronnie Apcar Edwin Chiu Hasmik Jerejian November 2, 2000 CSCI 599 Formal Methods November 2, 2000 Concurrency.
FunState – An Internal Design Representation for Codesign A model that enables representations of different types of system components. Mixture of functional.
12/07/2007Jiacun Wang1 SE-561 Math Foundations Petri Nets - II Dr. Jiacun Wang Department of Software Engineering Monmouth University.
1 COMP541 State Machines Montek Singh Feb 6, 2007.
Data and Knowledge Representation Lecture 6 Qing Zeng, Ph.D.
Modeling State-Dependent Objects Using Colored Petri Nets
Requirements Techniques, cont. Brief review Formal Requirements Techniques –Finite State Machines –Petri Nets.
Distributed, Collaborative Processing System (COBRA Virtual Office)
PETRINETS Nipun Devlekar Zauja Lahtau. PETRINETS DEFINITION : DEFINITION :  PETRINET (place/ transition net): a formal, graphical, executable technique.
Chapter 5: Specification Yuanfang Cai CS751 Jan 29, 2003.
程建群 博士(Dr. Jason Cheng) 年03月
Homework 3 – Sample Solution Targeted Application –Electronic medical records (EMR) system in the “Designing Human-Centered Distributed Information Systems”
Modeling with ordinary Petri Nets Events: Actions that take place in the system The occurrence of these events is controlled by the state of the system.
 Dr. Syed Noman Hasany.  Review of known methodologies  Analysis of software requirements  Real-time software  Software cost, quality, testing and.
Chapter 4 – Requirements Engineering Lecture 3 1Chapter 4 Requirements engineering.
CY2003 Computer Systems Lecture 7 Petri net. © LJMU, 2004CY2003- Week 72 Overview Petri net –concepts –Petri net representation –Firing a transition –Marks.
Stochastic Activity Networks ( SAN ) Sharif University of Technology,Computer Engineer Department, Winter 2013 Verification of Reactive Systems Mohammad.
Computer Organization & Programming Chapter 5 Synchronous Components.
Hardware Design and The Petri Net Abhijit K. Deb SAM, LECS, IMIT, KTH Kista, Stockholm.
Petri Nets Lecturer: Roohollah Abdipour. Agenda Introduction Petri Net Modelling with Petri Net Analysis of Petri net 2.
PROGRAM DEVELOPMENT CYCLE. Problem Statement: Problem Statement help diagnose the situation so that your focus is on the problem, helpful tools at this.
CAP 4800/CAP 5805: Computer Simulation Concepts
Modelling by Petri nets
Ch5: Software Specification. 1 Petri Nets  Introduced by C. Adams Petri in  Widely used in the modeling and analysis of computer systems.  Basic.
CS212: Object Oriented Analysis and Design Lecture 34: UML Activity and Collaboration diagram.
1 Copyright  2001 Pao-Ann Hsiung SW HW Module Outline l Introduction l Unified HW/SW Representations l HW/SW Partitioning Techniques l Integrated HW/SW.
School of Computer Science & Software Engineering
CAP 4800/CAP 5805: Computer Simulation Concepts
Dynamic Models - Page L M.E. Fayad Lesson 30: Dynamic Models Object- Oriented Modeling & Application s.
1 Specification A broad term that means definition Used at different stages of software development for different purposes Generally, a statement of agreement.
Review n System dynamics : A sequence of state transition n model : A set of rules for state transition System S X Y Discrete event system FSM (Automata)
1 Functional Modeling Lecture # Recap We had talked about object-oriented static modeling in quite detail We had developed a OO static model of.
Turing Machine Model Are there computations that no “reasonable” computing machine can perform? –the machine should not store the answer to all possible.
Theory of Computation Automata Theory Dr. Ayman Srour.
From requirements to specification Specification is a refinement of requirements Can be included together as Software Requirements Specifications (SRS)
Week 8 Computational Level
Laurea Triennale in Informatica – Corso di Ingegneria del Software I – A.A. 2006/2007 Andrea Polini VIII. Specifications (II)
Data and Knowledge Representation Lecture 6
Modeling for Testing Interactions
Requirements Techniques, cont.
Chapter 5 System modeling
Advantages of FSM Their simplicity make it easy for inexperienced developers to implement with little to no extra knowledge (low entry level)
Concurrent Systems Modeling using Petri Nets
Superbills.
Dr. Eng Amr T. Abdel-Hamid
Model-Based Testing Model the system
Week 8 Computational Level
Activity Diagrams Activity diagrams describe the workflow behavior of a system.  The diagrams describe the state of activities by showing the sequence.
Workflow Management Systems
CAP 4800/CAP 5805: Computer Simulation Concepts
CAP 4800/CAP 5805: Computer Simulation Concepts
Dynamic Modeling Lecture # 37.
CAP 4800/CAP 5805: Computer Simulation Concepts
Petri Net :Abstract formal model of information flow Major use:
Petri Nets Laurie Frazier.
Presentation transcript:

Data and Knowledge Representation Lecture 6 Qing Zeng, Ph.D.

Last Time We Talked About UMLS UMLS

Today We Will Talk About Process Process Finite state machine Finite state machine Flow chart Flow chart Petri Net Petri Net

Process Object: continuant Object: continuant E.g. diagnosis, medication, data repository E.g. diagnosis, medication, data repository Process: occurrent Process: occurrent E.g. diagnose, treat, retrieve E.g. diagnose, treat, retrieve

Describing Process Predicate logic Predicate logic treat (Dr. Jones, Ms. List) treat (Dr. Jones, Ms. List) Frame-based system Frame-based system Patient Frame has a slot “primary care” or “attending physician” Patient Frame has a slot “primary care” or “attending physician” There are more about “treat” to specify There are more about “treat” to specify When, where, how, why, what result When, where, how, why, what result

Types of Process Process Continuous Process Discrete Process Initiation Continuation Cessation Event State

Example Continuous Process Continuous Process Aging Aging Discrete Process Discrete Process Out patient visit (make appointment, check in with nurse, see a doctor, have test/receive medication) Out patient visit (make appointment, check in with nurse, see a doctor, have test/receive medication)

Basic Distinctions Discrete or continuous Discrete or continuous Linear or branching Linear or branching Independent or ramified Independent or ramified Immediate or delayed Immediate or delayed Sequential or concurrent Sequential or concurrent Predictable or surprising Predictable or surprising

Basic Distinctions Normal or equinomral Normal or equinomral Flat or hierarchical Flat or hierarchical Timeless or time-bound Timeless or time-bound Forgetful or memory-bound Forgetful or memory-bound

Process, Procedure and History Sequence of events and state Sequence of events and state Process: one event or state is current Process: one event or state is current Procedure: abstract (pattern or script of processes) Procedure: abstract (pattern or script of processes) History: record of a past process History: record of a past process

Finite State Machine (FSM) Discrete process (continuous process can be simulated with fine time steps) Discrete process (continuous process can be simulated with fine time steps) State transition diagram State transition diagram Formal Definition: Formal Definition: A finite set of states: Q A finite set of states: Q A finite set of inputs: I A finite set of inputs: I A transition function F(Q, I) -> Q, F can be a partial Function A transition function F(Q, I) -> Q, F can be a partial Function

FSM Basic components: state (circle), transition (arrow), input (label on the arrow) Basic components: state (circle), transition (arrow), input (label on the arrow) End state can be marked with double circles End state can be marked with double circles

Suspect DB Confirmed DB Highly suspect DB High blood sugar in test 1 High blood sugar in test 2 No DB normal blood sugar in test 1 normal blood sugar in test 2 FSM

Flow Chart Event (box) and decision (diamond) Event (box) and decision (diamond) Arrow (transition) and label on the arrow (condition for decision) Arrow (transition) and label on the arrow (condition for decision) Start and end can be specified with double box Start and end can be specified with double box

Petri Net A finite set of places (circle) A finite set of places (circle) A finite set of transactions (line) A finite set of transactions (line) A finite set of arrows connecting either places to transactions or transactions to places A finite set of arrows connecting either places to transactions or transactions to places

Petri Net Petri Net Marking: assign a non-negative integer to each place. (dot/token) Marking: assign a non-negative integer to each place. (dot/token) Firing: a transaction take place after enabled Firing: a transaction take place after enabled Firing sequence: the sequence of transaction firings for a given PN with a given initial marking Firing sequence: the sequence of transaction firings for a given PN with a given initial marking

Petri Net Conflict Conflict Starvation Starvation Deadlock Deadlock

Petri Net Assign values to tokens Assign values to tokens Define functions for transaction Define functions for transaction Specify scheduling policies Specify scheduling policies Timed Petri Net Timed Petri Net

Exercise Overweight patients should be instructed either excise regularly or keep a healthy diet for 3 months. When one fails, try both for 3 months. When both fail, a patient should be given medication x for 2 months.

Reading Sowa Chap. 3 Sowa Chap. 3