Framework for the Development and Testing of Dependable and Safety-Critical Systems IKTA 065/2000. 2001-2003. Supported by the Information and Communication.

Slides:



Advertisements
Similar presentations
1 Verification by Model Checking. 2 Part 1 : Motivation.
Advertisements

1 UML ++ Mohamed T IBRAHIM University of Greenwich -UK.
ECOE 560 Design Methodologies and Tools for Software/Hardware Systems Spring 2004 Serdar Taşıran.
Introducing Formal Methods, Module 1, Version 1.1, Oct., Formal Specification and Analytical Verification L 5.
LIFE CYCLE MODELS FORMAL TRANSFORMATION
Software system modeling
Background information Formal verification methods based on theorem proving techniques and model­checking –to prove the absence of errors (in the formal.
Software Reliability CIS 640 Adapted from the lecture notes by Doron Pelel (
Automated creation of verification models for C-programs Yury Yusupov Saint-Petersburg State Polytechnic University The Second Spring Young Researchers.
Formal Methods in Software Engineering Credit Hours: 3+0 By: Qaisar Javaid Assistant Professor Formal Methods in Software Engineering1.
Introduction To System Analysis and Design
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
Establishing the overall structure of a software system
8/3/011 Formal methods for CARA development Insup Lee (Univ. of Pennsylvania) Rance Cleaveland (SUNY at Stony Brook) Elsa Gunter (NJIT)
Formal verification Marco A. Peña Universitat Politècnica de Catalunya.
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
System Integration Management (SIM)
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Romaric GUILLERM Hamid DEMMOU LAAS-CNRS Nabil SADOU SUPELEC/IETR.
Formal Methods 1. Software Engineering and Formal Methods  Every software engineering methodology is based on a recommended development process  proceeding.
Cheng/Dillon-Software Engineering: Formal Methods Model Checking.
Bernd Bruegge & Allen H. Dutoit Object-Oriented Software Engineering: Using UML, Patterns, and Java 1 Introduction to Software Engineering CEN 4010.
Chapter 7: Architecture Design Omar Meqdadi SE 273 Lecture 7 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Requirements Expression and Modelling
UML based dependability modeling, analysis and synthesis Proposers: TU Budapest: A. Pataricza, Gy. Csertán, I. Majzik, D. Varró PDCC Pisa: L. Simoncini,
 Dipl.-Ing. Lars Grunske, 1 Hasso-Plattner-Institute for Software System Engineering at the University of Potsdam Department of Software Engineering and.
Chapter 10 Information Systems Analysis and Design
Research Heaven, West Virginia A Compositional Approach for Validation of Formal Models Bojan Cukic, Dejan Desovski West Virginia University NASA OSMA.
Overview of Formal Methods. Topics Introduction and terminology FM and Software Engineering Applications of FM Propositional and Predicate Logic Program.
WSMX Execution Semantics Executable Software Specification Eyal Oren DERI
Architectural Design Yonsei University 2 nd Semester, 2014 Sanghyun Park.
Ihr Logo Chapter 5 Business Intelligence: Data Warehousing, Data Acquisition, Data Mining, Business Analytics, and Visualization Turban, Aronson, and Liang.
Formal Verification Lecture 9. Formal Verification Formal verification relies on Descriptions of the properties or requirements Descriptions of systems.
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
UHD::3320::CH121 DESIGN PHASE Chapter 12. UHD::3320::CH122 Design Phase Two Aspects –Actions which operate on data –Data on which actions operate Two.
Model Checking and Model-Based Design Bruce H. Krogh Carnegie Mellon University.
Safety-Critical Systems 5 Testing and V&V T
BY OKAY ASLAN CMPE 516 FAULT TOLERANT COMPUTING A Formal Object-Oriented Analysis for Software Reliability: Design for Verification.
Fault-Tolerant Parallel and Distributed Computing for Software Engineering Undergraduates Ali Ebnenasir and Jean Mayo {aebnenas, Department.
Quality Assurance.
Formal Methods.
Slide 13.1 © The McGraw-Hill Companies, 2002 Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach.
Toulouse, September 2003 Page 1 JOURNEE ALTARICA Airbus ESACS  ISAAC.
Verification & Validation By: Amir Masoud Gharehbaghi
LSR Test purposes: adapting the notion of specification to testing Yves Ledru, L. du Bousquet, P. Bontron, O. Maury, C. Oriat, M.-L. Potet LSR/IMAG Grenoble,
SSQSA present and future Gordana Rakić, Zoran Budimac Department of Mathematics and Informatics Faculty of Sciences University of Novi Sad
Properties Incompleteness Evaluation by Functional Verification IEEE TRANSACTIONS ON COMPUTERS, VOL. 56, NO. 4, APRIL
Prof. Hany H. Ammar, CSEE, WVU, and
XASTRO-2 Presentation CCSDS SAWG th November 2004.
College of Computer Science, SCU Computer English Lecture 1 Computer Science Yang Ning 1/46.
Static Techniques for V&V. Hierarchy of V&V techniques Static Analysis V&V Dynamic Techniques Model Checking Simulation Symbolic Execution Testing Informal.
Formal Verification. Background Information Formal verification methods based on theorem proving techniques and model­checking –To prove the absence of.
ANALISA & PERANCANGAN SISTEM Disusun Oleh : Dr. Lily Wulandari Program Pasca Sarjana Magister Sistem Informasi Universitas Gunadarma.
Duminda WijesekeraSWSE 623: Introduction1 Introduction to Formal and Semi- formal Methods Based on A Specifier's Introduction to Formal Methods (J. Wing)
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
CS223: Software Engineering
CS223: Software Engineering Lecture 15: Software construction.
Automated Formal Verification of PLC (Programmable Logic Controller) Programs
CMPB454 ARTIFICIAL INTELLIGENCE (AI) CHAPTER 1.1 Background Information CHAPTER 1.1 Background Information Instructor: Alicia Tang Y. C.
CS223: Software Engineering Lecture 14: Architectural Patterns.
© Andrew IrelandGrand Challenges for Computing Research 2004 The Verifying Compiler Andrew Ireland Dependable Systems Group School of Mathematical & Computer.
Lectures 2 & 3: Software Process Models Neelam Gupta.
URL: by Wishnu Prasetya Course on Program Verification 2015/2016.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 10Slide 1 Chapter 5:Architectural Design l Establishing the overall structure of a software.
Sub-fields of computer science. Sub-fields of computer science.
IS 2935: Developing Secure Systems
UML profiles.
Department of Computer Science Abdul Wali Khan University Mardan
Software system modeling
Presentation transcript:

Framework for the Development and Testing of Dependable and Safety-Critical Systems IKTA 065/ Supported by the Information and Communication Technology Programme of the Ministry of Education

Partners Coordinator: Budapest University of Technology and Economics, Dept. of Measurement and Information Systems Industrial partners: –Prolan Process Control Co. –B.Braun Medical Hungary Ltd. –Magic Onyx Hungary Ltd.

Goals Improving quality of system design by –model analysis tools and techniques for embedded and reactive systems –applied formal mathematics (hidden from the designer) Support of standardized languages and tools –UML for visual design –off-the-shelf tools for analysis Transfer of know-how and tools for verification

Background Convergence of communication and information technologies –Embedded systems: Computer controlled network of intelligent sensors and actors Convergence of the design methodologies of everyday and mission critical systems –computer systems supervised by non-professionals –fault tolerance required

Embedded systems Long life is expected Continuous interaction with the environment Faults: not a simple implementation issue –Specification faults –Software design faults –Transient (physical) faults –Permanent physical faults

The subject of the project Guaranteeing QoS by checking and proving –completeness and consistency of the specification –correct operation of the system in presence of anticipated faults –functional correctness of control flow (dynamic behaviour)

Additional requirements Standard languages –data exchange formats (XML) –tool independence (UML  XMI) –readiness for new checking/analysis methods ISO 9000 conform (UML-based) tools Reuse of existing methods and tools

(Semi-)formal specification, system model (UML) Implementation Design of an IT system Mathematical model Automated model generation Analysis Mathematical analysis Back-annotation Code generation Novel approach

Visualization of dynamic sequences UML system model Implementation Design of an IT system Mathematical model Automated model generation Analysis Mathematical analysis Back-annotation Code generation Fundamental questions UML dialect (restrictions) Problem specific UML extensions Transformation semantics Proof of correctness Redundancy of the model Efficiency of the analysis Control heuristics Reversibility of the transformation

Fault simulation, Dependability analysis CTL DFN Proof of Correctness Central repository relational database XMI modelling back- annotation UML model commercial tool Model library Performability Semi-formal specification DocumentationPrototyping (simulation) Database design Object code ISO 9000 SPN Fault model, typical solutions Deductive database Transformation Rule Description (TRD) TRD 2 TRD 3 Transformation Engine Prolog XMI Planner XMI System architecture

Applied analysis methods 1. Analysis of the completeness and consistency of the specification 2. Analysis of fault propagation and testability 3. Formal verification of control flow

Analysis of the specification Safety criteria –Completeness and consistency of the semi-formal specification (UML) Analysis techniques: –static analysis –reachability analysis (model checking) –theorem proving Constructive methods: –design patterns (correctness proved)

Analysis of fault propagation Extension of the model by fault effects + fault propagation Checking the operation in the presence of expected faults Proving coverage of fault tolerance techniques Risk analysis

Analysis of fault propagation II. Extended model  complexity explosion Hierarchical view: –hierarchic checking and model refinement –non-determinism Applied formalism: Data flow networks Proposed methods: –testability analysis (list based fault propagation) –test generation (adaptation of gate-level techniques)

Formal verification of control flow Critical points of embedded systems: –Complex control algorithms –Event driven, asynchronous operation  Exhaustive testing is not possible Classical formal methods: –Temporal logic model checking Proposed additional techniques: –Petri-nets + linear algebra + operation research

Expected results Tool prototypes –completeness and consistency checker –fault proparation and testability analyzer –model verifier Demonstration by industrial examples –functions of an artificial kidney machine –modules of a train control application Education materials –application of the analysis tools and techniques