Dynamic software reconfiguration using control supervisors Ugo Buy 13 June 2005.

Slides:



Advertisements
Similar presentations
The Quest for Correctness Joseph Sifakis VERIMAG Laboratory 2nd Sogeti Testing Academy April 29th 2009.
Advertisements

ECOE 560 Design Methodologies and Tools for Software/Hardware Systems Spring 2004 Serdar Taşıran.
Knowledge Based Synthesis of Control for Distributed Systems Doron Peled.
Formal Methods for Real- Time Embedded Software Engineering 正規方法應用於即時嵌入式 軟體工程 熊博安 國立中正大學資訊工程學系 民國九十一年五月二十二日.
26 September 2003U. Buy -- SEES 2003 Sidestepping verification complexity with supervisory control Ugo Buy Department of Computer Science Houshang Darabi.
Model Checker In-The-Loop Flavio Lerda, Edmund M. Clarke Computer Science Department Jim Kapinski, Bruce H. Krogh Electrical & Computer Engineering MURI.
Software Engineering 1. Software development – the grand view 2. Requirements engineering.
ECE 720T5 Fall 2012 Cyber-Physical Systems Rodolfo Pellizzoni.
4.1.5 System Management Background What is in System Management Resource control and scheduling Booting, reconfiguration, defining limits for resource.
Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
Net-Centric Software and Systems I/UCRC Copyright © 2011 NSF Net-Centric I/UCRC. All Rights Reserved. High-Confidence SLA Assurance for Cloud Computing.
Software Reliability CIS 640 Adapted from the lecture notes by Doron Pelel (
1 Formal Methods in SE Qaisar Javaid Assistant Professor Lecture 05.
Automatic Verification of Component-Based Real-Time CORBA Applications Gabor Madl Sherif Abdelwahed
Formal Methods in Software Engineering Credit Hours: 3+0 By: Qaisar Javaid Assistant Professor Formal Methods in Software Engineering1.
FIN 685: Risk Management Topic 5: Simulation Larry Schrenk, Instructor.
Systems Engineering for Automating V&V of Dependable Systems John S. Baras Institute for Systems Research University of Maryland College Park
Vertically Integrated Analysis and Transformation for Embedded Software John Regehr University of Utah.
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
ECE Synthesis & Verification1 ECE 667 Spring 2011 Synthesis and Verification of Digital Systems Verification Introduction.
Chess Review May 11, 2005 Berkeley, CA Composable Code Generation for Distributed Giotto Tom Henzinger Christoph Kirsch Slobodan Matic.
Review of “Embedded Software” by E.A. Lee Katherine Barrow Vladimir Jakobac.
Models of Computation for Embedded System Design Alvise Bonivento.
Modeling State-Dependent Objects Using Colored Petri Nets
1 Model-based Software Engineering 師大資工鄭永斌. 2 History While dealing with complex entity, other engineering has learned not to learn it by building it.
Verifying Distributed Real-time Properties of Embedded Systems via Graph Transformations and Model Checking Gabor Madl
Report WG1 Software-Intensive Systems and New Computing Paradigms Cannes November 12-14, 2008 WG Leader: Martin Wirsing WG Depu ty Leaders: Jean-Pierre.
Department of Computer Science & Engineering College of Engineering Dr. Betty H.C. Cheng, Laura A. Campbell, Sascha Konrad The demand for distributed real-time.
Real-Time System Requirements & Design Specs Shaw - Chapters 3 & 4 Homework #2: 3.3.1, 3.4.1, Add Error states to Fig 4.1 Lecture 4/17.
Formal verification Marco A. Peña Universitat Politècnica de Catalunya.
Towards a Logic for Wide- Area Internet Routing Nick Feamster Hari Balakrishnan.
© Siemens AG, CT SE 1, Dr. A. Ulrich C O R P O R A T E T E C H N O L O G Y Research at Siemens CT SE Software & Engineering Development Techniques.
Instructore: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Concurrent and.
On the relation between software development and control function development in automotive embedded systems Stefan Kowalewski Embedded Software Laboratory.
ECE 720T5 Winter 2014 Cyber-Physical Systems Rodolfo Pellizzoni.
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 A Discipline of Software Design.
Software Testing Course Shmuel Ur
Benjamin Gamble. What is Time?  Can mean many different things to a computer Dynamic Equation Variable System State 2.
Reliable Design of Safety Critical Systems Dr. Abhik Roychoudhury School of Computing
Real-Time Embedded Software Synthesis 即時嵌入式軟體合成 熊博安國立中正大學資訊工程學系民國九十年十一月廿九日.
Requirements Engineering ments_analysis.
Institute e-Austria in Timisoara 1 Author: prep. eng. Calin Jebelean Verification of Communication Protocols using SDL ( )
Software Engineering Research paper presentation Ali Ahmad Formal Approaches to Software Testing Hierarchal GUI Test Case Generation Using Automated Planning.
CY2003 Computer Systems Lecture 7 Petri net. © LJMU, 2004CY2003- Week 72 Overview Petri net –concepts –Petri net representation –Firing a transition –Marks.
1 Hybrid-Formal Coverage Convergence Dan Benua Synopsys Verification Group January 18, 2010.
1 Introduction to Software Engineering Lecture 1.
Responding to the Unexpected Yigal Arens Paul Rosenbloom Information Sciences Institute University of Southern California.
Polymorphous Computing Architectures Run-time Environment And Design Application for Polymorphous Technology Verification & Validation (READAPT V&V) Lockheed.
1 Formal Synthesis and Control of Soft Embedded Real-Time Systems Pao-Ann Hsiung National Chung Cheng University Dept. of Computer Science and Information.
Historical Aspects Origin of software engineering –NATO study group coined the term in 1967 Software crisis –Low quality, schedule delay, and cost overrun.
Major Disciplines in Computer Science Ken Nguyen Department of Information Technology Clayton State University.
Basic Concepts of Component- Based Software Development (CBSD) Model-Based Programming and Verification.
PROC-1 1. Software Development Process. PROC-2 A Process Software Development Process User’s Requirements Software System Unified Process: Component Based.
Formal Methods.
Author Software Engineering Institute
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
CSCI1600: Embedded and Real Time Software Lecture 11: Modeling IV: Concurrency Steven Reiss, Fall 2015.
Course: COMS-E6125 Professor: Gail E. Kaiser Student: Shanghao Li (sl2967)
CrossCheckSimulation Results Conclusions References Model Instrumentation Modeling with CUTS Property Specification SPRUCE Challenge Problem Checking Model.
Version 02U-1 Computer Security: Art and Science1 Correctness by Construction: Developing a Commercial Secure System by Anthony Hall Roderick Chapman.
International Telecommunication Union © ITU-T Study Group 17 Integrated Application of SDL Amardeo Sarma NEC Europe Ltd.
Introduction to Simulink Matlab based Both Continuous Time and Discrete Time Simulation Based on Blocksets Model Based Design: a software model of the.
Model Checking Lecture 1. Model checking, narrowly interpreted: Decision procedures for checking if a given Kripke structure is a model for a given formula.
MOPS: an Infrastructure for Examining Security Properties of Software Authors Hao Chen and David Wagner Appears in ACM Conference on Computer and Communications.
Model Checking Lecture 1: Specification Tom Henzinger.
Copyright 1999 G.v. Bochmann ELG 7186C ch.1 1 Course Notes ELG 7186C Formal Methods for the Development of Real-Time System Applications Gregor v. Bochmann.
Software Design Methodology
Gabor Madl Ph.D. Candidate, UC Irvine Advisor: Nikil Dutt
Automatic Derivation, Integration and Verification
Presentation transcript:

Dynamic software reconfiguration using control supervisors Ugo Buy 13 June 2005

Background Concurrent, distributed applications are commonplace –Often subject to real-time constraints Possibility of concurrency errors (e.g., mutex violations, deadlocks) and real-time errors (e.g., missed deadlines) Difficult errors to detect through traditional testing –Non-deterministic behavior –Non-repeatable errors Solution: Model relevant aspects of software behavior; analyze with formal methods and simulation

Analysis strategies Formal verification: Automatically check whether a system model satisfies desired concurrency and timing properties –Can exhaustively detect all potential defects –High computational complexity; difficult to scale –Widely explored, mature technologies –Applied to real-world design problems (both hardware and software) with increasing frequency –Typically work on finite state automata or Petri nets

Analysis strategies Supervisory control of discrete event systems Given system model, add controller enforcing desired concurrency and timing properties to model –Often more tractable than verification –Support dynamic reconfiguration through automatic supervisor synthesis –Similar models to verification (e.g., finite state automata and Petri nets)

Current project Dynamic reconfiguration of discrete manufacturing systems Funding from NIST in collaboration with Starthis, Inc. Rationale: –Control programs are hard to write and maintain –Flexible manufacturing demands rapid reconfiguration –Possibility of deadlock, mutex violations, deadline violations in manufacturing plants –Disastrous consequences sometimes possible

Approach Avoid verification complexity with supervisory control Petri nets vs. finite state automata Synthesis of deadline-enforcing supervisors using net unfolding Compositional methods (e.g., hierarchical control)

Flow of supervisory synthesis GUI Translator Supervisor generator SFCs Plant spec ConstraintsTPNs Refined TPNs Code generator Control code 1.Specify plant behavior and correctness properties 2.Generate Petri net 3.Synthesize control supervisor 4.Generate target code

Achievements to date System for enforcing deadlines on transition firing in time Petri nets Integration of methods for enforcing mutual exclusion and freedom from deadlock Framework for compositional analysis (hierarchical control)

Additional research Decision support for emergency response during mass casualty situations –Collaboration with Prof. Houshang Darabi and his group in Industrial Engineering –Model healthcare, transportation and communication systems needed for emergency response –Work local government agencies involved in emergency response

Potential collaborations Strong software engineering group at UIC –Tadao Murata –Sol Shatz –Jeffrey Tsai –Prasad Sistla –Lenore Zuck Additional strengths in computer security, transportation systems