Random Logic l Forum.NET l 20061 State Machine Mechanism Forum.NET 1 st Meeting ● December 27, 2005.

Slides:



Advertisements
Similar presentations
Network II.5 simulator ..
Advertisements

The map and reduce functions in MapReduce are easy to test in isolation, which is a consequence of their functional style. For known inputs, they produce.
TSpaces Services Suite: Automating the Development and Management of Web Services Presenter: Kevin McCurley IBM Almaden Research Center Contact: Marcus.
COMP 121 Week 9: AbstractList and ArrayList. Objectives List common operations and properties of Lists as distinct from Collections Extend the AbstractCollection.
Chapter 16 Graphical User Interfaces John Keyser’s Modifications of Slides by Bjarne Stroustrup
CSCI3170 Introduction to Database Systems
Chapter 10 Introduction to Arrays
Peoplesoft Fundamentals David Lewis 10/18/02 (adapted from Psoft Training Materials)
ISBN Chapter 11 Abstract Data Types and Encapsulation Concepts.
A CHAT CLIENT-SERVER MODULE IN JAVA BY MAHTAB M HUSSAIN MAYANK MOHAN ISE 582 FALL 2003 PROJECT.
CompuNet Grid Computing Milena Natanov Keren Kotlovsky Project Supervisor: Zvika Berkovich Lab Chief Engineer: Dr. Ilana David Spring, /
CIS101 Introduction to Computing Week 11. Agenda Your questions Copy and Paste Assignment Practice Test JavaScript: Functions and Selection Lesson 06,
Page 1 Building Reliable Component-based Systems Chapter 18 - A Framework for Integrating Business Applications Chapter 18 A Framework for Integrating.
Abstract Data Types and Encapsulation Concepts
Batch VIP — A backend system of video processing VIEW Technologies The Chinese University of Hong Kong.
Pattern Abstract Factory
UNIT-V The MVC architecture and Struts Framework.
Web Database Design Session 6 and 7 Matakuliah: Web Database Tahun: 2008.
Introduction To System Analysis and design
SCRAM Software Configuration, Release And Management Background SCRAM has been developed to enable large, geographically dispersed and autonomous groups.
Smith’s Aerospace © P. Bailey & K. Vander Linden, 2005 Architecture: Component and Deployment Diagrams Patrick Bailey Keith Vander Linden Calvin College.
StateCAD FPGA Design Workshop. For Academic Use Only Presentation Name 2 Objectives After completing this module, you will be able to:  Describe how.
1 DAN FARRAR SQL ANYWHERE ENGINEERING JUNE 7, 2010 SCHEMA-DRIVEN EXPERIMENT MANAGEMENT DECLARATIVE TESTING WITH “DEXTERITY”
Spreadsheet-Based Decision Support Systems Chapter 22:
Eric Westfall – Indiana University Jeremy Hanson – Iowa State University Building Applications with the KNS.
RM2D Let’s write our FIRST basic SPIN program!. The Labs that follow in this Module are designed to teach the following; Turn an LED on – assigning I/O.
1 CMPT 275 Software Engineering Requirements Analysis Phase Requirements Analysis Activity (Identifying Objects, Scenarios) Janice Regan,
Exploring an Open Source Automation Framework Implementation.
1 CMPT 275 Software Engineering Requirements Gathering Activity Janice Regan,
Key Applications Module Lesson 21 — Access Essentials
Session 8: Databases Teaching Computing to GCSE Level with Python.
Submitted By: Memon Khurshed (Group Leader) Hamed Abdollahpur
Clicker questions and stuff 12/5/13 CSE 1102 Fall 2013.
Programming with Visual C++: Concepts and Projects Chapter 2B: Reading, Processing and Displaying Data (Tutorial)
Chapter 7 Database Basics Tables, Records, and Fields 7 Exploring Microsoft Visual Basic 6.0 Copyright © 1999 Prentice-Hall, Inc. By Carlotta Eaton.
Framework for MDO Studies Amitay Isaacs Center for Aerospace System Design and Engineering IIT Bombay.
1 DATA FLOW DIAGRAM. 2 Outline Process decomposition diagrams Data flow diagram (DFD)
Computers in the Library A database application. Input and Output Devices Input Keyboard Mouse Scanner / light pen Output VDU / screen / monitor Printer.
OCLC SiteSearch User Group Meeting Implementing Interface Gadgets SiteSearch User Group Workshop 3/23/1999.
IBC233 Lecture 2 Updated Winter 2008 Agenda Test next Week – Jan 23 ISeries Architecture CL (Control Language) Library Lists Operations Navigator.
2-1 A Federation of Information Systems. 2-2 Information System Applications.
Visual C++ Programming: Concepts and Projects Chapter 12B: Linked List (Tutorial)
GUIs Basic Concepts. GUI GUI : Graphical User Interface Window/Frame : a window on the screen Controls/Widgets : GUI components.
Session 1 Module 1: Introduction to Data Integrity
Separate Compilation Bryce Boe 2013/10/09 CS24, Fall 2013.
1 CS Programming Languages Class 22 November 14, 2000.
Chapter 2. System Structures
STL CSSE 250 Susan Reeder. What is the STL? Standard Template Library Standard C++ Library is an extensible framework which contains components for Language.
Recursion A recursive definition is one which uses the word or concept being defined in the definition itself Example: “A computer is a machine.
LCG Distributed Databases Deployment – Kickoff Workshop Dec Database Lookup Service Kuba Zajączkowski Chi-Wei Wang.
ProShell Procedure Framework Status MedAustron Control System Week 2 October 7 th, 2010 Roland Moser PR a-RMO, October 7 th, 2010 Roland Moser 1.
CPSC 203 Introduction to Computers T59 & T64 By Jie (Jeff) Gao.
Department of Communication Engineering, NCTU 1 Title of Your Project Name.
Advanced Task Engine Doing Cool Stuff with Cool stuff!
XML scheme for configuration data V.Černý on behalf of the Bratislava group Initiated by Marco’s call:...a software layer for implementing the handling.
Data Integrity & Indexes / Session 1/ 1 of 37 Session 1 Module 1: Introduction to Data Integrity Module 2: Introduction to Indexes.
Mohammed I DAABO COURSE CODE: CSC 355 COURSE TITLE: Data Structures.
The Components of Information Systems
Architecture Concept Documents
System Programming and administration
Getting Started with LabVIEW Virtual Instruments
Integrated ILL GUI desktop
The Components of Information Systems
Programming Logic and Design Fourth Edition, Comprehensive
Creating and Managing Fees
Software Architecture
Information System Building Blocks
Chapter 7 Database Basics
Presentation transcript:

Random Logic l Forum.NET l State Machine Mechanism Forum.NET 1 st Meeting ● December 27, 2005

Random Logic l Forum.NET l Agenda  State Machine Definition  Why do we need it?  The General State Machine Library  Using the Machine  Summary

Random Logic l Forum.NET l State Machine Definition  In general, a state machine is any device that stores the status of something at a given time and can operate on input to change the status and/or cause an action to take place when status is changed

Random Logic l Forum.NET l State Machine Definition cont. A state machine can be described as:  An initial state or record of a generic object  A set of possible input events  A set of new states that may result from the input  A set of possible actions or output events that result from a new state

Random Logic l Forum.NET l Why do we need it?  Generic method to navigate through a module independent process graph  dynamically configure a process graph  Very easy to add new states to the process

Random Logic l Forum.NET l The State Machine Library Concept:  Start from first node (state) in graph.  Create the state using a Factory.  Call its Handle() method and get the result in return.  If state type is final – finish.  If not final - Based on the result, get the next node in graph (and loop).

Random Logic l Forum.NET l The State Machine Library Internal Singleton 2

Random Logic l Forum.NET l The State Machine Library cont.

Random Logic l Forum.NET l The State Machine Library cont. View Code 1

Random Logic l Forum.NET l Using the Machine The Process: Search Available Book in a library The Entities: Library, Book, BookCopy, SearchRequest (1) Enter Book Title (2) Check that title exists (State 1) (3) Check that copy available (State 2) UILogicMachine

Random Logic l Forum.NET l Using the Machine UILogic State Machine

Random Logic l Forum.NET l Using the Machine cont. View Code 2

Random Logic l Forum.NET l Using the Machine cont. The Process: Search Available Book in a library The Entities: Library, Book, BookCopy, SearchRequest (1) Enter Book Title (2) Check that title exists (State 1) (3) Check that copy available (State 2) (4) Assign copy (State 3)

Random Logic l Forum.NET l Using the Machine cont. Adding New State Actions:  Create new class which implements the IState Interface (AssignBookState)  Add State to configuration file  Add node to Graph in configuration file

Random Logic l Forum.NET l Using the Machine cont. View / Add Code 3

Random Logic l Forum.NET l Summary  The State Machine library manages a generic process based on configuration file.  Using the Interfaces, a specific client can declare states and data, and let the machine manage the process itself.  Addition of new state to a process or changing the order of existing states in a process becomes a very simple task.  Defining specific order to specific cases in a process, is a simple task as well.

Random Logic l Forum.NET l State Machine Mechanism Thank you!