Considerations in the Preference for and Application of RTCA/DO-178B in the Australian Military Avionics Context SQNLDR Derek Reinhardt Systems Certification.

Slides:



Advertisements
Similar presentations
Module N° 4 – ICAO SSP framework
Advertisements

Session No. 4 Implementing the State’s Safety Programme Implementing Service Providers SMS
ICS 417: The ethics of ICT 4.2 The Ethics of Information and Communication Technologies (ICT) in Business by Simon Rogerson IMIS Journal May 1998.
EPSON STAMPING ISO REV 1 2/10/2000.
Define & Compare Flowcharts of Each Method Tom Delong.
1 Certification Chapter 14, Storey. 2 Topics  What is certification?  Various forms of certification  The process of system certification (the planning.
Copyright © 2006 Software Quality Research Laboratory DANSE Software Quality Assurance Tom Swain Software Quality Research Laboratory University of Tennessee.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 19Slide 1 Verification and Validation l Assuring that a software system meets a user's.
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
Tony Gould Quality Risk Management. 2 | PQ Workshop, Abu Dhabi | October 2010 Introduction Risk management is not new – we do it informally all the time.
Purpose of the Standards
Introduction to Software Testing
Australia’s Experience in Utilising Performance Information in Budget and Management Processes Mathew Fox Assistant Secretary, Budget Coordination Branch.
Verification and Validation
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 2 Slide 1 Systems engineering 1.
Requirements Engineering
Air and space power for Australia ’ s security FLTLT Andrew STOCKWELL 8 August 2012 for International System Safety Conference 2012.
Software Considerations in Airborne Systems
Effective Methods for Software and Systems Integration
Peter Defranceschi ICLEI - Local Governments for Sustainability An Introduction European Commission GPP Training Toolkit.
Ships in Service Training Material A-M CHAUVEL QMS Terms & Definitions 2009.
Romaric GUILLERM Hamid DEMMOU LAAS-CNRS Nabil SADOU SUPELEC/IETR.
Software Testing Verification and validation planning Software inspections Software Inspection vs. Testing Automated static analysis Cleanroom software.
DGTA-ADF Migrating to a Software Assurance Standard 2008 ADF Software Symposium FLTLT Patrick Redmond SCI-DGTA.
Standards. What is a standard? What are the benefits of using a standard? What are the costs? Do the costs exceed the benefits?
CPIS 357 Software Quality & Testing I.Rehab Bahaaddin Ashary Faculty of Computing and Information Technology Information Systems Department Fall 2010.
CPIS 357 Software Quality & Testing
Software Quality Assurance Lecture 4. Lecture Outline ISO ISO 9000 Series of Standards ISO 9001: 2000 Overview ISO 9001: 2008 ISO 9003: 2004 Overview.
1 Chapter 2 The Process. 2 Process  What is it?  Who does it?  Why is it important?  What are the steps?  What is the work product?  How to ensure.
Demystifying the Business Analysis Body of Knowledge Central Iowa IIBA Chapter December 7, 2005.
Management & Development of Complex Projects Course Code - 706
Certification and Accreditation CS Phase-1: Definition Atif Sultanuddin Raja Chawat Raja Chawat.
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
Intent Specification Intent Specification is used in SpecTRM
ISO 9001:2008 to ISO 9001:2015 Summary of Changes
BE-SECBS FISA 2003 November 13th 2003 page 1 DSR/SAMS/BASP IRSN BE SECBS – IRSN assessment Context application of IRSN methodology to the reference case.
1 FRENCH PROPOSAL FOR ESARR6 1 - BACKGROUND - 15/02/00 : Kick-off meeting, Presentation of the CAA/SRG input (SW01), Request from the chairman to comment.
Integrated Risk Management Charles Yoe, PhD Institute for Water Resources 2009.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Software Verification, Validation and Testing.
1 Introduction to Software Engineering Lecture 1.
1 Reducing the Software Impact to System Safety Paul Mayo – SafeEng Limited.
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.
Integrated Risk Management Charles Yoe, PhD Institute for Water Resources 2009.
Software Safety Case Why, what and how… Jon Arvid Børretzen.
27/3/2008 1/16 A FRAMEWORK FOR REQUIREMENTS ENGINEERING PROCESS DEVELOPMENT (FRERE) Dr. Li Jiang School of Computer Science The.
Business Analysis. Business Analysis Concepts Enterprise Analysis ► Identify business opportunities ► Understand the business strategy ► Identify Business.
1 Chapter 8 Building the Analysis Model (1) Analysis Concepts and Principles.
International Atomic Energy Agency Regulatory Review of Safety Cases for Radioactive Waste Disposal Facilities David G Bennett 7 April 2014.
The common structure and ISO 9001:2015 additions
© Michael Crosby and Charles Sacker, 2001 Systematic Software Reviews Software reviews are a “quality improvement process for written material”.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
Unit – I Presentation. Unit – 1 (Introduction to Software Project management) Definition:-  Software project management is the art and science of planning.
High Assurance Products in IT Security Rayford B. Vaughn, Mississippi State University Presented by: Nithin Premachandran.
SE513 Software Quality Assurance Lecture12: Software Reliability and Quality Management Standards.
Organizations of all types and sizes face a range of risks that can affect the achievement of their objectives. Organization's activities Strategic initiatives.
Software Engineering Process - II 7.1 Unit 7: Quality Management Software Engineering Process - II.
Pradeep Konduri Niranjan Rao Julapelly.  Introduction and Overview  Verification Vs Validation  Process  Goals  Confidence  Role of V&V in different.
An Integrated Model-Based Approach to System Safety and Aircraft System Architecture Development Eric Villhauer – Systems Engineer Brian Jenkins – System.
Software Quality Control and Quality Assurance: Introduction
Quality Risk Management
Introduction to Software Testing
Standards.
Project Management Process Groups
How S-18 processes help make systems trustworthy
Moving Toward Trustworthy Aerospace Vehicle (AV) Systems
GPP Training Toolkit An Introduction European Commission
Software Reviews.
CEng progression through the IOM3
Presentation transcript:

Considerations in the Preference for and Application of RTCA/DO-178B in the Australian Military Avionics Context SQNLDR Derek Reinhardt Systems Certification and Integrity (SCI) Directorate of Aircraft Engineering (DAIRENG)

Overview Introduction to criticisms of RTCA/DO-178B Background and structure of DO-178B Criticisms that RTCA/DO-178B is insufficient Criticisms that RTCA/DO-178B is too onerous ADF’s preference for RTCA/DO-178B Application issues of RTCA/DO-178B in the Australian Military Avionics Context

Introduction RTCA/DO-178B is the centre of much debate or criticism – insufficient, too onerous, etc Avoidable software failures have already been responsible for aircraft mishaps cockpit displays go blank engines throttle back during takeoff contradictory airspeed readings This presentation/paper examines these criticisms how do they influence the ADF’s preference for and application of RTCA/DO-178B

ADF Preference for RTCA/DO-178B RTCA/DO-178B is the ADF’s preferred software assurance standard for safety critical and safety related airborne software development Refer AAP7001.054 Airworthiness Design Requirements Manual ADF recognises the FAA processes and standards widely used and accepted by many international airworthiness authorities Many military aviation systems have a civil heritage with software developed under RTCA/DO-178B AEW&C B737, MRTT A330, etc

Background of RTCA/DO-178B 14 CFR 25.1309 often referred to as FAR 25.1309 SAE ARP 4754 and SAE ARP 4761 aircraft level FHA, FTA system level FMEA, FTA, etc. common cause analysis – PRA, ZSA, CMA RTCA/DO-178B for software design assurance RTCA/DO-254 for hardware design assurance Five failure condition severities are assigned design assurance levels (DALs) Catastrophic (A), Hazardous / Severe Major (B), Major (C), Minor (D), No Effect (E)

Structure of RTCA/DO-178B 66 objectives in 10 tables + several implicit objectives satisfaction tailored by software level several prescriptive objectives statement coverage, decisions coverage, modified condition decision coverage Lifecycle phases planning, development, requirements, design, coding and integration, verification Integral processes configuration management, quality assurance Certification Authority liaison RTCA/DO-248B, FAA Order 8110.49, CAST5

Intricacies of DO-178B Common misconception that RTCA/DO-178B completely specifies the process and activities Yes – objectives are coupled to the software lifecycle Yes – they don’t distinguish between requirements functional, software safety, etc Fidelity of the objectives presents challenges for COTS and PDS With exception of 3 objectives – flexibility is permitted in how the objectives are satisfied Objectives can be broadly classified as contributing to requirements validity, requirements satisfaction, and requirements traceability

Criticisms of RTCA/DO-178B Divided into several positions those that believe RTCA/DO-178B is insufficient academics, researchers, or consultants those that believe RTCA/DO-178B is too onerous development contractors with cost and schedule driven imperative Criticisms are at odds with each other central to the criticisms, then is it about right? Widely accepted by FAA, EASA NTSB reports that it is effective in those contexts How does the ADF address the criticisms?

RTCA/DO-178B is Insufficient Absence of mandatory formal methods Absence of mandatory static code analysis Ineffectiveness of MC/DC testing Absence of specific requirements or objectives relating to software safety analysis and software safety requirements Assumptions underlying the design assurance level definition are questionable

Absence of Mandatory Formal Methods Does not prohibit formal methods acceptable method to satisfy objectives Application to problem domain not universally applicable to problem domains and technologies used in critical systems only partially applicable to problem scope are closed languages, no inherent real world meaning, natural language is still required Formal methods and safety does not address significant sources of error WRT the safety of systems little evidence that it would prevent a number of mishaps attributable to software Complementary to testing testing is required to demonstrate real world behaviours, on real hardware, in the target environment Formal methods is not the ‘silver bullet’ for safety software

Absence of Mandatory Static Code Analysis Does not prohibit static code analysis it is an acceptable method used to satisfy objectives Static analysis won’t find all the faults (requirements and implementation) most related to the safety of the software Permits greater focus on those activities related to identifying requirements validity and satisfaction problems affecting safety prevents developers being overwhelmed in code reviews and testing identifying inadvertent implementation problems, which static code analysis tools readily detect Limitations to applying static analysis retrospectively

Ineffectiveness of MC/DC Testing Exercise each data flow that directly affects a control flow to identify as many faults as possible Widely debated objective studies confirm that MCDC does find faults that other DO-178B testing approaches do not find other studies found “no significant difference” RCDC address some of these limitations MCDC not finding additional faults is not the concern if normal and robustness testing has been comprehensive, then it is possible that the gap in MCDC will be small, and NOT safety related adequacy of normal and robustness testing

Absence of Specific Requirements or Objectives Relating to Software Safety Analysis and Software Safety Requirements Is not explicit in objectives relating to software safety analysis and software safety requirements but they are not absent! number of objectives contribute to requirements validity, including that of safety requirements However, systematic software safety analysis are not always proposed to show that the identified and allocated set of software safety requirements is complete and correct DGTA recommends an IEEE1228 Software Safety Plan be used to document the planned software safety activities – and their outcomes or the RTCA/DO-178B PSAC can be used

Assumptions Underlying the Design Assurance Level Definition are Questionable Issues with integrity/assurance levels little evidence that software of different integrity levels does have failure rates of integrity level order debate regarding the philosophy and rules for allocating integrity levels significant differences in the processes recommended by standards Inconsistent application misunderstanding of the differences between reviews versus analyses some objectives being presumed to be satisfied solely by reviews intent is combination of analysis and reviews of the outputs variable normal and robustness testing software architecture is appropriate avoids design constructs that would not comply with system safety objectives software safety requirements are identified/allocated Apportionment and adequacy of objectives objectives fundamental to the validity and satisfaction – from Level C Level A and B provide additional evidence - trustworthiness

RTCA/DO-178B is Too Onerous Excessive requirements specification and traceability fidelity requirements Excessive verification requirements

Excessive Requirements Specification and Traceability Fidelity Requirements RTCA/DO-178B motivation for fidelity each behaviour that constitutes the requirements at level of abstraction is systematically accounted for design tool to assist developer produce a good design Why should all the behaviours be accounted for? evidence that all behaviours of the software are acceptable do not lead to unacceptable failure conditions all the behaviours of the software should be disclosed permits reasoning about their suitability for the safety of the system arguing non-interference with the behaviours that are important to the safety of the system Questionable disagreements Intellectual Property constraints software development is a creative process, not itself compatible with such rigour requirements

Excessive Verification Requirements Testing will always be required to gain confidence in the behaviour of software on the target hardware in the intended operating environment Completion of testing defensible engineering argument as to why testing is complete with evidence to support it Not based on the following factors: cost and schedule consensus of program managers broad consensus of the programmers and testers any other non-engineering based arguments RTCA/DO-178B provides a defensible argument as to when testing is complete by specifying: requirements completeness criteria requirements coverage criteria extent of normal and robustness tests extensiveness of requirements based low level testing coupled with additional implementation related coverage criteria (structural coverage) to elicit certain properties

Application of RTCA/DO-178B RTCA/DO-178B is not applied in isolation Test coverage objectives Use of RTCA/DO-178B as a benchmark for assessing software assurance practices COTS with RTCA/DO-178B Migrating to RTCA/DO-178B

Not Applied in Isolation System Safety Program - MIL-STD-882C or FAR 25.1309 Key Issues A Software Safety Program (SwSP) should be established to coordinate hazard identification and mitigation efforts for hazards with software-related causal factors. IEEE1228 Software Safety Plan Software Safety Analysis, Generic Software Safety Requirements A Software Assurance standard is required for the development of all software that is safety related Software process standards should be applied to the development of software for airborne and related systems An assessment of the applicant’s software development capability, including domain knowledge, should be conducted as part of the tender evaluation and contract negotiation process examines the safety culture determine if non-systematic (experience) activities can be trusted

Test coverage objectives Some organisations believe that DGTA does not require structural code analysis – by default – THIS IS NOT TRUE! In cases where DGTA has not required it additional activities to ensure that the coverage is comprehensive fidelity of requirements explicitness of traceability extent of normal and robustness testing additional activity to identify dead and deactivated code often exception related code mission systems, with no series hazards extenuating circumstances – legacy constraints Negotiate through the PSAC –expect to have a compelling argument if you are going to proposed not doing it

Software Assurance Benchmark Assess software products and their development practices software agencies that do not use RTCA/DO-178B confused that DGTA is applying DO-178B where not contracted RTCA/DO-178B objectives help with the assessment of requirements validity, satisfaction, and traceability RTCA/DO-178B provide clear measures of fidelity in the specification and traceability of requirements no gap between required behaviours and executable code all software behaviours are appropriate with respect to safety extent of test based verification of requirements and implementation on the target computer in the intended environment development and review rigour independence and oversight assures that the evidence presented contains an acceptably small number of faults

COTS with RTCA/DO-178B COTS fall under the scope of PDS PDS criteria are demanding, but not excessive but often the evidence is just not available Alternate proposals for use of COTS Provide evidence to demonstrate the following types of properties Partitioning (containment and/or mediation) Non-Interference Acceptable Behaviours

Migrating to DO-178B Acquired where no software assurance standard applied DOD-STD-2167A, MIL-STD-498, IEEE12207 Two options – transition to RTCA/DO-178B or develop a Software Assurance Task Matrix FAA guidelines Notice 8110.49 Chapter 10 Intended for systems developed to RTCA/DO-178 and RTCA/DO-178A Careful management of the scope of retrospective production of software assurance evidence is required DGTA has assessed the approach as acceptable

Summary Introduction to criticisms of RTCA/DO-178B Background and Structure of DO-178B Criticisms that RTCA/DO-178B is insufficient Criticisms that RTCA/DO-178B is too onerous ADF’s preference for RTCA/DO-178B Application of RTCA/DO-178B in the Australian Military Avionics Context RTCA/DO-178B applied within the ADF framework addresses relevant criteria for producing safety software systems

Questions ?