Formal methods engineering A short overview. Basics The course was given by Hussein Zedan (Leicester, UK) … The course was given by Hussein Zedan (Leicester,

Slides:



Advertisements
Similar presentations
Formal Models of Computation Part III Computability & Complexity
Advertisements

Quality Education for a Healthier Scotland How does Feedback Form 6B work? for Appraisers (Primary and Secondary Care)
Modeling Computation Chapter 13.
Queuing ANSYS jobs on a local machine
Use Case Diagrams Damian Gordon.
DriveWorks – Product Configurator
Details of MTIS Holiday Scheduler are available on
CEG3420 L1 Intro.1 Copyright (C) 1998 UCB CEG3420 Computer Design Lecture 1 Philip Leong.
Engineer Training Media Feeder TJ8300 / TJ8500 Media Feeder.
ATM Security Requirements & Specification Decomposition Team B: Martijn Christiaan Vasilis Benjamin.
9/10/2004Use Case Workshop 1 CSC480 Software Engineering Workshop 1 Requirements Modeling.
Author Instructions How to upload a full session proposal with abstracts – two step process.
INDR 343 Problem Session
1 ECE 355: Software Engineering Bridge Material Object Oriented Design.
Nourish Cafeteria Point-Of-Sales System. ID Form The Cashier Login form displays the first time the Breakfast or Lunch button is selected for the day.
Sequence Diagrams. Introduction A Sequence diagram depicts the sequence of actions that occur in a system. The invocation of methods in each object, and.
January Ron McFadyen1 Ch 9. Use-case model: drawing System Sequence Diagrams Elaboration Iteration 1: a simple cash-only success scenario of.
Academic Advisor: Prof. Ronen Brafman Team Members: Ran Isenberg Mirit Markovich Noa Aharon Alon Furman.
Object Interaction Models - Review The use case and its scenarios serve as a vehicle for organizing the object interactions that take place. Each scenario.
1 Web Search Interfaces. 2 Web Search Interface Web search engines of course need a web-based interface. Search page must accept a query string and submit.
Finite State Machines Control Circuits Example: Vending Machine Takes only quarters and dollar bills Won't hold more than $1.00 Sodas cost $.75 Possible.
Creating And Maintaining A Database. 2 Learn the guidelines for designing databases When designing a database, first try to think of all the fields of.
Marcelo Santos – OOAD-CDT309, Spring 2008, IDE-MdH Object-Oriented Analysis and Design - CDT309 Period 4, Spring 2008 Introduction.
THE OBJECT-ORIENTED DESIGN WORKFLOW Statechart Diagrams.
VMWare Workstation Installation. Starting Vmware Workstation Go to the start menu and start the VMware Workstation program. *Note: The following instructions.
Agenda What is Computer Programming? The Programming Process
Finite State Machines – Page 1CSCI 1900 – Discrete Structures CSCI 1900 Discrete Structures Graphs and Finite State Machines Reading: Kolman, Sections.
1 COMP541 State Machines Montek Singh Feb 8, 2012.
The George Washington University Electrical & Computer Engineering Department ECE 002 Dr. S. Ahmadi Class 2.
Interim Review- Employee 1 This is the place where the employee would input the Interim Review Self Assessment for each one of the job objectives. This.
Risk Assessment/Risk Reduction © Risk Assessment/Risk Reduction Risk Assessment Risk Reduction Software.
Interaction Modeling. Overview The class model describes the objects in a system and their relationships, the state model describes the life cycles of.
Finite-State Machines with Output
Faculty of Computer & Information Software Engineering Third year
Requirements Analysis Visual Modeling] Lab 02 Visual Modeling (from Visual Modeling with Rational Rose and UML) A way of thinking about problems using.
Copyright Jim Martin 2006 Emerging Scholars Computer Science Session Summer 2006 Dr. Jim Martin Rising Seniors Session.
Dina Workshop Analysing Properties of Hybrid Systems Rafael Wisniewski Aalborg University.
- 1 - Embedded Systems - SDL Some general properties of languages 1. Synchronous vs. asynchronous languages Description of several processes in many languages.
CS 152: Programming Language Paradigms May 7 Class Meeting Department of Computer Science San Jose State University Spring 2014 Instructor: Ron Mak
Student Curriculum Planning System MSE Project Presentation I Kevin Sung.
Faculty of Computer & Information
Introduction to State Machine
MVender. Overview  mVender is a m-commerce solution which allows to make vending machines Mobile enabled  mVender includes:  An application platform.
1 Chapter 5 Modeling System Requirements Finding the Use Cases Page
Machine interference problem: introduction
CS 5204 Spring 99 1 A Simple Agent A CCS agent is described both by a structural diagram and one or more algebraic equations. The diagram is for readability.
Potential use case for discussion – Street Light Automation Group Name: WG1/2 Source: Cisco Meeting Date: Joint-REQ-ARC-WGs-call Agenda Item: Use cases.
MANUFACTURING A system or group of systems used in the manufacturing process to make products for an end user ( STL pg. 239)
2004/051 >> Supply Chain Solutions That Deliver Users.
RTM (Robotic Teller Machine) By Jonathan Daudelin Construction Time : February – June 2006 Parts used : 2 RCX’s, 4 Motors, 4 Sensors, Hundreds of Legos.
How to Apply To a Job Online. 1. Decide what kind of job you want. Consider the career field Consider the skills required for a particular position. Consider.
1 COMP541 Finite State Machines - 1 Montek Singh Sep 22, 2014.
Testing and Evaluating Software Solutions Introduction.
Robotics Intensive: Day 5 Gui Cavalcanti 1/17/2012.
AD insertion For commercial insertion. A MERP Approach Use an integrated database. Both planning and playout and media management.
Copyright © 2010 Pearson Education, Inc. or its affiliate(s). All rights reserved.1 | Assessment & Information 1 Online Testing Administrator Training.
Working with Equations Mini Activity I. Objectives: The Learner will be able to: 1. Apply Currency formatting to cells in Excel 2. Use the AutoSum tool.
1 COMP541 Sequential Logic – 2: Finite State Machines Montek Singh Feb 29, 2016.
Concurrent Systems Modeling using Petri Nets
D.Y.O. Web The new and easy way to create and maintain your own professional dynamic website.
Using CADCONNECT to create products MANUALLY
Risk Assessment Risk Reduction Software
Absence Management (formerly AESOP) Training for Staff Members
Sequence Adverbs II.
Marija Rakic Greg Gao Roshanak Roshandel
Lab Exercise 2 (Lab Sessions 2, 3, and 4)
Decidability continued….
Finite State Machine Continued
Test Design Techniques Software Testing: IN3240 / IN4240
Journal of Web Semantics 55 (2019)
Presentation transcript:

Formal methods engineering A short overview

Basics The course was given by Hussein Zedan (Leicester, UK) … The course was given by Hussein Zedan (Leicester, UK) … … over one week = 30 hours … over one week = 30 hours Problem classes and assessment was done by Dragan Mašulović (our own associate professor) Problem classes and assessment was done by Dragan Mašulović (our own associate professor) Problem classes in two sessions = 15 hours Problem classes in two sessions = 15 hours

Agenda  Part I - Rationale: Why do we model?  Part II - Finite state machines (“as the assembly language of modeling”)  Part III – Statecharts  Part IV - Time in statecharts

Students’ background Should know a lot of FSMs Should know a lot of FSMs Use them in: Use them in: compiler constructioncompiler construction OOA/D – dynamic viewOOA/D – dynamic view But had no idea that FSMs are ‘assembly language of modeling’ and that they may have wider application areas But had no idea that FSMs are ‘assembly language of modeling’ and that they may have wider application areas

Problem classes

Coursework 1 You are given the following vending machine specification: The machine has one slot (for inserting coins) and two buttons for selecting the type of coffee. You are given the following vending machine specification: The machine has one slot (for inserting coins) and two buttons for selecting the type of coffee. The vending machine dispenses only two sizes of coffee: big, which costs 50p and ’small’ size costing 25p. The vending machine dispenses only two sizes of coffee: big, which costs 50p and ’small’ size costing 25p. The machine may cheat as it does not return change (nonetheles it gives coffee!). The machine may cheat as it does not return change (nonetheles it gives coffee!). Once a coin is inserted, the customer can not get it back. Once a coin is inserted, the customer can not get it back. After inserting the coins, the customer presses the coffee of choice. If the right amount of money was inserted, the coffee will be dispensed otherwise, the machine waits. Once the coffee is dispensed, all inserted coins are dropped in a money box and the machine waits for the next customer. After inserting the coins, the customer presses the coffee of choice. If the right amount of money was inserted, the coffee will be dispensed otherwise, the machine waits. Once the coffee is dispensed, all inserted coins are dropped in a money box and the machine waits for the next customer. The machine can accept ‘5p’, ‘10p’ and ‘20p’ only. The machine can accept ‘5p’, ‘10p’ and ‘20p’ only. The existing machine only dispenses black coffee and that a customer is provided with milk cartons and/or portions of sugar, both free of charge. However, the company decided to automate these processes (milk and sugar) by designing a milk and a sugar machine! Both machines have only one button each that is if pressed a carton of milk and/or a portion of sugar will be dispensed, respectively. The existing machine only dispenses black coffee and that a customer is provided with milk cartons and/or portions of sugar, both free of charge. However, the company decided to automate these processes (milk and sugar) by designing a milk and a sugar machine! Both machines have only one button each that is if pressed a carton of milk and/or a portion of sugar will be dispensed, respectively.

Coursework Give a Statechart for following informal specification. The objective is to specify a fault- tolerant solution for a computation service P that can be characterised as follows: Give a Statechart for following informal specification. The objective is to specify a fault- tolerant solution for a computation service P that can be characterised as follows: P inputs data provided by a producer on channel A.P inputs data provided by a producer on channel A. For each input x on A, a computation y = f (x) is performed by P and delivered via channel B to a consumer.For each input x on A, a computation y = f (x) is performed by P and delivered via channel B to a consumer. We assume a synchronous communication between server and environment: The producer will only send a new job after having received a NEXT-message from the server computer indicating that P has finished the previous computation.We assume a synchronous communication between server and environment: The producer will only send a new job after having received a NEXT-message from the server computer indicating that P has finished the previous computation.

Coursework Give a Statechart for a Traffic-light Controller, the informal description of which is as follows: Give a Statechart for a Traffic-light Controller, the informal description of which is as follows: There are two sets of lights: one is positioned over the main road (MAIN) entering the cross- junction, and the other is over the secondary road (SEC). During the daytime the controller operates according to one of two possible programs (option externally determined): There are two sets of lights: one is positioned over the main road (MAIN) entering the cross- junction, and the other is over the secondary road (SEC). During the daytime the controller operates according to one of two possible programs (option externally determined): Program A gives two minutes for the vehicles on MAIN, and half a minute for the vehicles on SEC, alternating. Program A gives two minutes for the vehicles on MAIN, and half a minute for the vehicles on SEC, alternating. Program B gives half a minute for the vehicles in SEC once a signal “SEC FULL” goes on (the “SEC FULL” signal coming from an external sensor). Program B gives half a minute for the vehicles in SEC once a signal “SEC FULL” goes on (the “SEC FULL” signal coming from an external sensor).

Tools JFlap JFlap Statemate Statemate

Feedback