8/3/011 Formal methods for CARA development Insup Lee (Univ. of Pennsylvania) Rance Cleaveland (SUNY at Stony Brook) Elsa Gunter (NJIT)

Slides:



Advertisements
Similar presentations
Introducing Formal Methods, Module 1, Version 1.1, Oct., Formal Specification and Analytical Verification L 5.
Advertisements

Bernd Bruegge & Allen Dutoit Object-Oriented Software Engineering: Conquering Complex and Changing Systems 1 Software Engineering September 12, 2001 Capturing.
Verification of Hybrid Systems An Assessment of Current Techniques Holly Bowen.
Alternate Software Development Methodologies
ISBN Chapter 3 Describing Syntax and Semantics.
Formal Methods in Software Engineering Credit Hours: 3+0 By: Qaisar Javaid Assistant Professor Formal Methods in Software Engineering1.
6/22/011 Case Study: Computer Assisted Resuscitation Algorithm (CARA) System Insup Lee Department of Computer and Information Science University of Pennsylvania.
Infusion Pump Controller Requirements Definition A Decision-Table Approach by Richard Riehle.
Course Summary. © Katz, 2003 Formal Specifications of Complex Systems-- Real-time 2 Topics (1) Families of specification methods, evaluation criteria.
VERTAF: An Application Framework for Design and Verification of Embedded Real-Time Software Pao-Ann Hsiung, Shang-Wei Lin, Chih-Hao Tseng, Trong-Yen Lee,
Chapter 6 Methodology Conceptual Databases Design Transparencies © Pearson Education Limited 1995, 2005.
Analysis Stage (Phase I) The goal: understanding the customer's requirements for a software system. n involves technical staff working with customers n.
Property-Based Test Generation Li Tan, Oleg Sokolsky, and Insup Lee University of Pennsylvania.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
CIS 700-3: Selected Topics in Embedded Systems Insup Lee University of Pennsylvania June 24, 2015 Introduction.
SDRL & RTG University of Pennsylvania 8/3/2001 Formalization of CARA system requirements Oleg Sokolsky Department of Computer and Information Science University.
Course Summary. © Katz, 2007 Formal Specifications of Complex Systems-- Real-time 2 Topics (1) Families of specification methods, evaluation criteria.
© 2006 Pearson Addison-Wesley. All rights reserved2-1 Chapter 2 Principles of Programming & Software Engineering.
End-to-End Design of Embedded Real-Time Systems Kang G. Shin Real-Time Computing Laboratory EECS Department The University of Michigan Ann Arbor, MI
5/24/011 Advanced Tool Integration for Embedded Systems Assurance Insup Lee Department of Computer and Information Science University of Pennsylvania.
Course Instructor: Aisha Azeem
1 CMPT 275 Software Engineering Requirements Analysis Process Janice Regan,
Verification technique on SA applications using Incremental Model Checking 컴퓨터학과 신영주.
Formal Methods 1. Software Engineering and Formal Methods  Every software engineering methodology is based on a recommended development process  proceeding.
PROGRAMMING LANGUAGES The Study of Programming Languages.
Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 1 Introduction to Software Engineering CEN 4010.
Overview of the Database Development Process
Copyright © Siemens AG All rights reserved. Essential Criteria on MBT to Ensure Quality of Software in Industry PVR Murthy Andreas Ulrich Siemens.
 Dipl.-Ing. Lars Grunske, 1 Hasso-Plattner-Institute for Software System Engineering at the University of Potsdam Department of Software Engineering and.
Methodology - Conceptual Database Design Transparencies
Methodology Conceptual Databases Design
1 Chapter 15 Methodology Conceptual Databases Design Transparencies Last Updated: April 2011 By M. Arief
Overview of Formal Methods. Topics Introduction and terminology FM and Software Engineering Applications of FM Propositional and Predicate Logic Program.
Intent Specification Intent Specification is used in SpecTRM
Framework for the Development and Testing of Dependable and Safety-Critical Systems IKTA 065/ Supported by the Information and Communication.
Methodology - Conceptual Database Design. 2 Design Methodology u Structured approach that uses procedures, techniques, tools, and documentation aids to.
1/26/2004TCSS545A Isabelle Bichindaritz1 Database Management Systems Design Methodology.
5/27/03MDES Supporting Model-Based Validation at Run-time Insup Lee and Oleg Sokolsky Department of Computer and Information Science University of.
1 Introduction to Software Engineering Lecture 1.
Methodology - Conceptual Database Design
Interactive CARA Simulation Prof. Insup Lee. Hierarchical EFSM Specification for CARA.
Haptic Interfaces and Force-Control Robotic Application in Medical and Industrial Contexts Applicants Prof. Doo Yong Lee, KAIST Prof. Rolf Johansson,
Model Checking and Model-Based Design Bruce H. Krogh Carnegie Mellon University.
Object-Oriented Software Engineering using Java, Patterns &UML. Presented by: E.S. Mbokane Department of System Development Faculty of ICT Tshwane University.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
McGraw-Hill/Irwin Copyright © 2013 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 12 Implementing Business/IT Solutions.
The Software Development Process
Formal Methods.
Requirements Engineering-Based Conceptual Modelling From: Requirements Engineering E. Insfran, O. Pastor and R. Wieringa Presented by Chin-Yi Tsai.
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
Lecture 5 1 CSP tools for verification of Sec Prot Overview of the lecture The Casper interface Refinement checking and FDR Model checking Theorem proving.
System Monitoring using Constraint Checking as part of Model Based System Management 2007 Monitoring using Constraint Checking as part.
Formal Methods in Software Engineering1 Today’s Agenda  Mailing list  Syllabus  Introduction.
Duminda WijesekeraSWSE 623: Introduction1 Introduction to Formal and Semi- formal Methods Based on A Specifier's Introduction to Formal Methods (J. Wing)
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
Be.wi-ol.de User-friendly ontology design Nikolai Dahlem Universität Oldenburg.
From Natural Language to LTL: Difficulties Capturing Natural Language Specification in Formal Languages for Automatic Analysis Elsa L Gunter NJIT.
Introduction to Software Engineering 1. Software Engineering Failures – Complexity – Change 2. What is Software Engineering? – Using engineering approaches.
Software Design and Development Development Methodoligies Computing Science.
CHESS Methodology and Tool Federico Ciccozzi MBEES Meeting Sälen, January 2011 January 2011.
Methodology Conceptual Databases Design
Methodology Conceptual Database Design
SYSTEM ANALYSIS AND DESIGN
IEEE Std 1074: Standard for Software Lifecycle
Software Design Methodology
Chapter 12 Implementing Business/IT Solutions.
Model Base Validation Techniques for Software
Methodology Conceptual Databases Design
Department of Computer Science Abdul Wali Khan University Mardan
Presentation transcript:

8/3/011 Formal methods for CARA development Insup Lee (Univ. of Pennsylvania) Rance Cleaveland (SUNY at Stony Brook) Elsa Gunter (NJIT)

SDRL & RTG University of Pennsylvania 8/3/01 2 CARA Case Study Thanks –… for giving us the opportunity to study CARA –… for sharing documents and providing domain expertise Our goals: –Study applicability of state-of-the-art formal techniques for development of safety critical embedded systems –Phase I: system modeling from requirements –Phase II: formulation and checking of properties on models General properties Specific safety properties (from requirements) –Phase III: implementation validation from models What we are not trying to do: –Develop a working system –Replace other existing efforts

SDRL & RTG University of Pennsylvania 8/3/01 3 Properties of high-confidence embedded systems Adherence to safety-critical properties Meeting timing constraints Satisfaction of resource constraints Confinement of resource accesses Supporting fault tolerance Domain specific requirements

SDRL & RTG University of Pennsylvania 8/3/01 4 Hoped-for outcome of CARA study Enriched methodologies for the development of reliable and robust CARA-like systems that incorporate formal modeling and analysis Requirement capture and analyzer, model checker, equivalence checker, test generator, etc. Evaluate the effectiveness of existing tools Development of domain specific framework and methodology

SDRL & RTG University of Pennsylvania 8/3/01 5 Development Process Requirements capture and analysis –Informal to formal –Consistency and completeness –Assumptions and interfaces between system components –Application-specific properties Design specifications and analysis –Formal modeling notations –Abstractions –Analysis techniques (simulation, model checking, equivalence checking, testing, etc.) Implementation –Manual/automatic code generation –Validation (testing, model extraction, etc.) Requirements Design specification Implementation

SDRL & RTG University of Pennsylvania 8/3/01 6 Ideal Requirement Capture Process Informal requirements Formal requirements Analysis results Requirement Analyzer Restricted NL Translator

SDRL & RTG University of Pennsylvania 8/3/01 7 Phases of Requirements Development Identify concepts and interfaces User Requirements System Specification World Knowledge Programming Platform Capture first using English, then formal languages such as (finite) state machines, process algebra, temporal logic, higher order logic

SDRL & RTG University of Pennsylvania 8/3/01 8 Top Level View of System CARA resuscitation unit Saline

SDRL & RTG University of Pennsylvania 8/3/01 9 Identify Interface Visibility – System, Environment Control – System, Environment Examples: –Infusate contents (saline/glucose/water): Environment controlled, System hidden –Infusate impedance: Environment controlled, System visible –Alarm for infusate impedance out of range: System controlled, Environment visible EnvironmentSystem

SDRL & RTG University of Pennsylvania 8/3/01 10 User Requirements Expressed only in terms of concepts visible to Environment Meaningful to end user, not programmer Example: –If a bag of pure water is attached to pump, within 10 seconds the pump will stop and an alarm will be sounded (for user) –Checking impedance (for programmer)

SDRL & RTG University of Pennsylvania 8/3/01 11 System specification Expressed only in terms of concepts visible to both Environment and System Meaningful to programmer, not to end user Implies User Requirements, when supplemented by World Knowledge Example: –If infusate impedance goes out of range, then within 10 seconds an alarm will be rung.

SDRL & RTG University of Pennsylvania 8/3/01 12 World (or Domain) Knowledge Expressed only in terms of concepts visible to Environment Bridges gap between User Requirements and System Specification Can be viewed as a specification of suitable environment for system Example: –Water has an impedance outside range for acceptable infusates (saline/glucose)

SDRL & RTG University of Pennsylvania 8/3/01 13 CARA Resuscitation Unit - Components Pump CARA Propaq

SDRL & RTG University of Pennsylvania 8/3/01 14 Programming Platform, or Machine Description of components used to construct the System Expressed only in terms of concepts visible to System Individual components may be viewed as systems themselves; other components are in there environment Examples: –Blood pressure monitor – Propaq, pump, display unit, resuscitation file (?), hardware for running algorithm

SDRL & RTG University of Pennsylvania 8/3/01 15 How to generate design specifications? By (informal) refinement of requirements specification Constructing from scratch based on requirements By extracting models from implementation

SDRL & RTG University of Pennsylvania 8/3/01 16 Formalism Design Specification and Analysis abstraction System specificatio n Requirement s formalization Formal model Properties Analysis abstraction 1 TCCS formalization 1 CTL* Model checking Formalism 1 abstraction 2 formalization 2 Timed automata CTL Model checking UPPAAL ACSR Monitors State-space exploration PARAGON abstraction 3 formalization 3

SDRL & RTG University of Pennsylvania 8/3/01 17 Implementation Validation Requirements Test generator Specifications Test suite Implementation Test results Test executor

SDRL & RTG University of Pennsylvania 8/3/01 18 Other issues Maintenance Documentation Traceability Dealing non-functional aspects such as resource constraints Code generation …