F-22 Raptor. Agenda. 1. Motivation



Similar documents
Certification of a Scade 6 compiler

Critical Systems and Software Solutions

Software Engineering for Software-Intensive Systems: III The Development Life Cycle

Advisory Circular. U.S. Department of Transportation Federal Aviation Administration

SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCE. Cheryl A. Dorsey Digital Flight / Solutions cadorsey@df-solutions.

Outline. III The Development Life Cycle. Characteristics of Software Development Methodologies. The Prototyping Process

SCADE SUITE SOFTWARE VERIFICATION PLAN FOR DO-178B LEVEL A & B

Automating Code Reviews with Simulink Code Inspector

Safety-Critical Systems: Processes, Standards and Certification

ARINC 653. An Avionics Standard for Safe, Partitioned Systems

Formal Specification and Verification of Avionics Software

Methodological Handbook. Efficient Development of Safe Avionics Software with DO-178B Objectives Using SCADE Suite

Creating Competitive Advantage: The role for ALM in the PLM world

Requirements Engineering Management Findings Report

Meeting DO-178B Software Verification Guidelines with Coverity Integrity Center

Parameters for Efficient Software Certification

Reduce Medical Device Compliance Costs with Best Practices.

Rigorous Methods for Software Engineering (F21RS1) High Integrity Software Development

Certification Authorities Software Team (CAST) Position Paper CAST-13

The new software standard for the avionic industry: goals, changes and challenges

Criteria for Software Tools Evaluation in the Development of Safety-Critical Real-Time Systems 1

Software Development Tools for Safety-Critical, Real-Time Systems Handbook

SCADE Suite in Space Applications

The Impact of RTCA DO-178C on Software Development

Abstract Interpretation-based Static Analysis Tools:

AC REUSABLE SOFTWARE COMPONENTS

Technical Data Sheet SCADE R17 Solutions for ARINC 661 Compliant Systems Design Environment for Aircraft Manufacturers, CDS and UA Suppliers

TITLE: Control of Software

Requirements-driven Verification Methodology for Standards Compliance

ENEA: THE PROVEN LEADER IN SAFETY CRITICAL AVIONICS SYSTEMS

asuresign Aero (NATEP Grant MA005)

The Comprehensive and Fully Compliant Certification Solution. Certification Services

Best practices for developing DO-178 compliant software using Model-Based Design

Design of automatic testing tool for railway signalling systems software safety assessment

Introduction to a Requirements Engineering Framework for Aeronautics

Quality Assurance of Models for Autocoding

4 Applying DO-178B for safe airborne software

Best Practices for Verification, Validation, and Test in Model- Based Design

ANSYS SCADE Model-Based Development Solutions for Industrial Equipment and Energy. Critical Systems & Software Development Solutions

INTEGRATION OF THE CODE GENERATION APPROACH IN THE MODEL-BASED DEVELOPMENT PROCESS BY MEANS OF TOOL CERTIFICATION

Software Production. Industrialized integration and validation of TargetLink models for series production

Subject Software Aspects of Certification

DO-178B compliance: turn an overhead expense into a competitive advantage

SOFTWARE VERIFICATION RESEARCH CENTRE SCHOOL OF INFORMATION TECHNOLOGY THE UNIVERSITY OF QUEENSLAND. Queensland 4072 Australia TECHNICAL REPORT

Introduction of ISO/DIS (ISO 26262) Parts of ISO ASIL Levels Part 6 : Product Development Software Level

1. Software Engineering Overview

Software in safety critical systems

New Challenges In Certification For Aircraft Software

WORKSHOP RC EVI Integração de Sistemas Junho de 2011 Eng. Nelson José Wilmers Júnior

Understanding DO-254 Compliance for the Verification of Airborne Digital Hardware

CERTIFICATION MEMORANDUM

ANSYS SCADE Model-Based Development Solutions for AUTOMOTIVE. Critical Systems & Software Development Solutions

DO-178C: A New Standard for Software Safety Certification

IBM Rational Rhapsody

Model Driven Development of Certifiable Software: A Best Practice for Safety-Critical Applications

Certification Authorities Software Team (CAST) Position Paper CAST-9

TESSY Automated dynamic module/unit and. CTE Classification Tree Editor. integration testing of embedded applications. for test case specifications

Software Review Job Aid - Supplement #1

SCADE TRAINING PROGRAM 2015

Improving Embedded Software Test Effectiveness in Automotive Applications

Qualifying Software Tools According to ISO 26262

Using CMM with DO-178B/ED-12B for Airborne System Development

Model Based System Engineering (MBSE) For Accelerating Software Development Cycle

AVIATION SPECIALIST. Inspects aviation schools for conformance with state laws, rules, and regulations.

IEC Overview Report

Certification Authorities Software Team (CAST) Position Paper CAST-3

The Road from Software Testing to Theorem Proving

Testing of safety-critical software some principles

An Interactive Video Teletraining Course. IVT Course Self-Study Video Course 25823

Lecture 1: Introduction

A Methodology for Safety Critical Software Systems Planning

SCADE System Technical Data Sheet. System Requirements Analysis. Technical Data Sheet SCADE System

LONG BEACH CITY COLLEGE MEMORANDUM

Introduction to Functional Verification. Niels Burkhardt

Embedded Systems Conference April 3-7, San Jose [ESC-447] Safety-Critical Design Techniques for Secure and Reliable Systems

RTCA DO-178B/EUROCAE ED-12B

Master's projects at ITMO University. Daniil Chivilikhin PhD ITMO University

JSF Software Safety Process: Providing Developmental Assurance

The evolving ARINC 653 standard and it s application to IMA

AADL et la conception des logiciels

UML for the C programming language.

Quality in Aviation Software. Chris Hartgroves C.Eng. CQP Design Assurance SELEX Galileo

Verification and Validation of Software Components and Component Based Software Systems

Model-Based Development of Safety-Critical Software: Safe and Effi cient

Code Coverage: Free Software and Virtualization to the Rescue

Software Verification and System Assurance

Andrew J. Kornecki Embry Riddle Aeronautical University Daytona Beach, FL

ANSYS SCADE Model-Based Development Solutions for RAIL TRANSPORTATION. Critical Systems & Software Development Solutions

Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville

Requirements Management John Hrastar

The Software Development Process

Transcription:

Model-Based Software Development and Automated Code Generation for Safety-Critical Systems F-22 Raptor for the Seminar Advanced Topics in Software Engineering for Safety-Critical Systems Cause: Bug in Flight Control Software Author: Robert Traussnig Advisor: Dr. Holger Giese Paderborn, July 2004 2 MLOC Ada Code 7 Billion Dollars Cost for Software 20 Years Software Development Time 1 2 Agenda 1. Motivation 1. Motivation 2. Historical Overview and Trends 3. Model Based Software Development 5. Standards, Qualification and Certification 6. SCADE 7. Outlook and Conclusion - growing complexity of safety-critical software systems - increasing development time and cost vs. time-to-market - verification activities are cost-intensive and time-consuming - software quality needs to be improved 3 4 1

2. Historical Overview and Trends 3. Model Based Software Development 70s 80s 90s 00s - Manual Coding: Machine Code, Assembly -Structured Programming: C, Ada (Subsets for Safety-Critical Applications, eg. SPARKAda) - Object-Oriented Programming e.g. FAA OOT Initiative Requirements and Design Document Validation and Verification Software Model Automated Qualified Code Generator Proof Simulation 10s - Model-Based Software Development e.g. SCADE Source Code 5 6 3. Benefits of Model Based SW Development 3. Model Based Software Development - Model is the software specification: it is the unique point-of-reference in the project UML (Unified Modelling Language) in FUJABA tool: - Sourcecode is automatically generated from the model with a (qualified) Code Generator - Code is correct and up-to-date by construction - Documentation is automatically generated from the model: it is correct and up-to-date by construction - Model can be used for simulation, using the same code as the actual implementation Just Draw It! - Formal proof techniques can be applied to the model to detect bugs or prove safety properties 7 8 2

3. Model Based Software Development 3. From the V-Model to the Y-Model Manual Coding Programming Code Standard Automatic Code Generator Generating Code Qualified Code Generator No Code Test Design Verifier Automated Design Verification Time 9 10 - average development & test of 10.000 Lines of Code (KLOC) of DO-178 level B avionics software: 16 man-years On-Board Software - cost of a minor bug detected in flight is between $100K - $500K - cost of a major bug is between $1M - $500M -> Airbus decided in the early 80 s to introduce automated code generation. MBytes 20 15 10 5 0 A 310 (1970s) A 320 (1980s) A 340 (1990s) 11 12 3

Errors detected per 100 KBytes of code A340/600 FCSC (Flight Control Secondary Computer): 70 % automatically generated code 50 % reduction in development cost reduction in modification cycle time by factor 3 Errors 500 400 300 200 100 0 70 % ACG Code A 310 (1970s) A 320 (1980s) A 340 (1990s) No software bug ever detected in flight (including flight test) since the beginning of the use of ACG for Fly-By-Wire software. [F. Pothon, Airbus France] 13 14 5. Standards, Certification and Qualification 5. Standards, Certification and Qualification Relevant Standards for Safety-Critical Software: - RTCA DO-178B (Civil Aircraft), 1980 and 1992 - ARP 4754 - IEC 61508 Functional Safety of Electrical / Electronic / Programmable Electronic Safety-Related Systems Flight Control Systems Backup Systems DO 178B Software Criticality Levels Warning Systems 15 16 4

5. Standards, Certification and Qualification 5. Standards, Certification and Qualification Qualifiable: Qualified: Certified: Tool has been developed in such a way that it is prequalified or qualifiable which means that it is ready for qualification on specific projects On a per-project basis only. Tool Criticality Level has to match the final Software Criticality Level. Legal recognition by the certification authority that a product, service, organization or person complies with the requirements. Qualification Requirements of the Automated Code Generator (ACG) with respect to DO-178B: ACG defined as: Tool whose output is part of the airborne software and thus can introduce errors DO-178B, section 12.2.1: If a software tool is to be qualified, the software development processes for the tool should satisfy the same objectives as the software development processes of airborne software. The software level assigned to the tool should be the same as that for the airborne software it produces. 17 18 6. SCADE: Introduction 6. SCADE: Process SCADE (Safety Critical Application Development Environment) Developed 1997 by Airbus Industries Since 2001 development and distribution by Esterel Technolgies De-facto Standard in Aerospace and Nuclear Powerplant Industries Core Application for EU-SafeAir (ASDE: Avionics Systems Development Environment) Project 19 20 5

6. SCADE: Software Requirements Specs 6. SCADE: Software Requirements Specs I. Continous Control: Blockdiagrams for Continous Control II. Hierarchical and Concurrent State Machines: Traditional Control Schema Scade Representation of Control Schema 21 22 6. SCADE: Generated Safe Code 7. Outlook and Conclusion - no pointer artithmetic, no dynamic memory allocation - no operating system call - fixed length loops for arrays or delay - code is traceable to the model: nodes, variables and constants - Model-Based Development is a new paradigm for safety-critical software - Automated Code Generation reduces time-to-market and cost while increasing quality - Aerospace Industry is driving the use of tools and definition of new standards (FAA DO-178C including MBD and ACG) - Limits and Constraints: - few qualified tools available - no qualified compiler yet - manual coding still necessary - steep learning curve for developers 23 24 6

Thank you for the Attention! Questions, please. 25 7