Software Safety Engineering Education
|
|
|
- Paul Small
- 9 years ago
- Views:
Transcription
1 Software Safety Engineering Education David J. Coe, Joshua S. Hogue, and Jeffrey H. Kulick Department of Electrical and Computer Engineering, University of Alabama in Huntsville Huntsville, Alabama, USA Abstract This paper describes the Software Safety Engineering Process utilized by students enrolled in the University of Alabama in Huntsville's Software Safety Engineering course. The process consists of an industrystandard software engineering development process augmented to produce the safety-related artifacts as required for certification of a safety-critical product by a regulatory agency. The additional artifacts include Functional Hazard Assessments, Fault Tree Analyses, and Failure Modes and Effects Analyses. Students learn the impact of these new artifacts on the traditional development process as they follow our software safety engineering process to implement a representative safety-critical system, a model railroad controller. Keywords: software safety, DO-178B, model railroad, ARP-4761, hazard analysis, fault tree analysis 1 Introduction Despite the ever increasing dependence on software in safety and mission critical systems, the development processes for safety critical software are frequently absent from the curricula of software engineering degree programs. A recent informal review of degree programs in the US revealed no program dedicated entirely to software safety engineering and only a smattering of courses addressing the topic. The reasons for this include the lack of appropriate text books, the tight linkage to regulatory agencies which is not normally present in academic disciplines, and the absence of good public domain examples ( go-bys ) for the multitude of documents that are required for software safety engineering projects. While safety engineering is a well established discipline with significant support in the form of textbooks, process definitions and professional societies, no such support network exists for software safety engineering. That is not to say there are not emerging standards related to constructing safe software. In fact the multiplicity of different standards is part of the problem of software safety engineering education. The University of Alabama in Huntsville has begun development of a graduate degree program in software safety engineering within the Department of Electrical and Computer Engineering. Huntsville is well located for such a program with the abundance of organizations such as Redstone Arsenal, NASA, and aerospace companies that develop safety-critical products. This paper outlines the first course in the program, Software Safety Engineering. The course utilizes a software safety engineering process derived from industry-standard software engineering and safety engineering processes as well as a representative safety-critical project, a model railroad control system that must be developed to the highest level of design assurance since a train accident would be potentially fatal to humans. 2 Standard software processes For over forty years, organizations have utilized Waterfall processes for developing large scale software systems [1]. These processes begin by identifying system-level requirements for the product and allocating those requirements to hardware or software components. Once the high-level requirements for the software components have been identified, a Software Development Plan (SDP) is constructed that identifies the artifacts that will be produced along with the development standards, supporting processes, and tools that will be used to produce those artifacts. The standard artifacts include the Software Requirements Specification (SRS), the Software Design Description (SDD), the Software Test Plan (STP), and the Software Test Description (STD) documents. The SDP also lays out a series of milestones for review of these artifacts prior to delivery to ensure that defects are identified and removed as early as possible to reduce cost and improve the quality of the product. Examples of these standard milestones include the Software Requirements Review (SWRR) and the Preliminary and Critical Design Reviews (PDR and CDR). A key component of the SDP are the rough, order-of-magnitude estimates of cost and effort required for development of the product because these estimates dictate staffing decisions and the scheduling of delivery milestones. Standard Waterfall software development processes, however, are inadequate for the development of safetycritical systems. Systems whose failures pose a danger to life, property, or the environment often require certification by regulatory agencies who examine evidence that the system was developed with a degree of due diligence commensurate with the consequences of
2 system failure. An integral part of this evidence is the safety analysis that identifies potential hazards associated with various system functions and examines the consequences of potential system failures. The safety analysis is used to determine the degree of due diligence required during development which is called the Design Assurance Level or DAL. For example, in the RTCA DO-178B standard used by the Federal Aviation Administration, a system is designated as DAL A if a software fault may result in a catastrophic failure (i.e., a crash, multiple deaths) [2]. DALs B through D are reserved for systems whose failures result in less severe consequences. For instance, a system is designated as DAL B if software faults may result in a hazardous failure (i.e. significant reduction on performance or safety of system), and a system is designated DAL D if a software fault results only in a minor failure (noticeable failure with little to no safety impact). The DAL assessment has a major impact on system cost and delivery schedule because of the additional supporting evidence that may be required by the certification agency. For each assurance level, DO-178B requires evidence that specific sets of process objectives have been completed with the number of objectives required increasing with each increase in the design assurance level. For a system assessed at DAL C, one must supply evidence that 57 objectives have been satisfied while a system assessed at DAL A must satisfy 66 objectives [2]. Furthermore, the rigor with which a given objective must be addressed varies from DAL A to DAL E. For example, there are DO178-B objectives (A7.5 A7.7) that address structural coverage testing requirements. Modified condition-decision coverage (MC/DC) testing is mandated for DAL A systems while only statement and decision test coverage are required for DAL B and DAL C systems. Consequently, a software safety engineering process produces more documentation, at significant additional cost, than traditional software engineering processes. The safety analysis, however, cannot be a one-time input to a traditional software engineering process since subsequent design and implementation choices can increase the likelihood of system failure. For example, in the systems requirements process, safety analysis may only be performed on the system functions that have been identified at that time whereas safety analysis of the design cannot occur until a design has been produced later in the development cycle. Thus, safety analysis must be an iterative activity that is integrated throughout the development process which is one fundamental difference between a traditional software engineering process and a software safety engineering process. In the following section we begin by discussing a standard safety analysis process and then describe how we have integrated safety analysis into our software safety engineering process as illustrated in Figure 1 below. 3 Software safety engineering process The SAE ARP 4761 standard defines the requirements for system and software safety analysis that must be completed including an initial Functional Hazard Assessment (FHA) of the system before starting hardware/software development [3]. The FHA identifies system functions and the failure effects and conditions if the system functions were to fail. The FHA also determines the severity for the failure of each system function. For example, if the system requirement were the system shall schedule low priority trains onto the sidings, then a failure to perform that function is a hazard that may result in a crash. A Fault Tree Analysis (FTA) is then performed on the top-level functions identified in the FHA, breaking them down into a boolean tree of lower-level events with the lowest level named the basic events. Consider the previous example of a system hazard failing to schedule a low priority train onto a siding. Mechanical switch failure is one example of a low-level basic event that could be the source of that hazard. The failure effects, severity, and modes of these basic events are described within the Failure Modes and Effects Analysis (FMEA). After the completion of the FHA and FTA, the system functions are allocated to hardware or software. Depending upon the severity of those functions, independent design assurance levels (DALs) are determined for hardware and software via System Safety Analysis (SSA). For developers to accurately identify the design assurance level and subsequently conform to the objectives associated with that level, a rigorous, planned process is required since the DO-178B only provides guidance on objectives to be completed without imposing specific activities required to meet those objectives [4]. Figure 1 below shows our approach for safety-critical software development which consists of DO-178B for software development integrated with ARP-4761 for system safety. The lists of artifacts indicate when within the life cycle the artifacts were generated. Those artifacts specific to safety analysis have also been identified. End-to-end traceability is a key requirement of DO-178B.
3 Figure 1 Software safety engineering process with safety artifacts identified.
4 Table 1 Safety and software engineering artifacts Safety Artifacts (ARP-4761) Functional Hazard Assessment (3.2) Fault Tree Analysis (4.1) Failure Modes and Effects Analysis (4.2) Integral Process Artifacts (DO-178B) Verification Artifacts (11.13, 11.14, 11.17) Configuration Management Artifacts (11.15, 11.16, 11.18) Quality Assurance Artifacts (11.19, 11.20) S/w Engineering Artifacts (DO-178B) Planning Artifacts ( ) Development Standards ( ) Development Artifacts ( ) Figure 2 Software/safety engineering process flow The primary artifacts of interest in our Software Safety Engineering course come from several different categories, as shown in Table 1. The safety artifacts developed are based upon the SAE ARP 4761 standard, which provides guidance for FHAs, FTAs, and FMEAs in the sections shown in parentheses. DO-178B was used for development of the integral process artifacts and software engineering artifacts. The applicable DO-178B sections for the artifacts are given in parentheses. The software engineering/safety engineering hybrid process flow integrates safety analyses in the initial determination of a DO-178B DAL through the FHA and preliminary FTA. The FMEAs are then developed simultaneously with the software requirements, design, and coding artifacts. By conducting FMEAs in the development phases, the safety analyses cover all levels of the software design and are relevant to the real system s behavior and hazards [5]. The FMEAs also provide for an indirect check on the correctness of the original software requirements, since faulty design and code are derived from faulty requirements [6]. By incorporating safety analysis throughout every phase of the software life cycle, the design team substantiates their initial DAL selection. The flow of this process is shown in Figure 2, based upon a modified hybrid of DO- 178B processes and ARP-4761 diagrams for the safety assessment flow. The overview shows how the course process guarantees the software safety and software engineering activities are coalesced into a single efficient development process. 4 Model railroad system project To fully appreciate the differences between a standard software engineering process and a software safety engineering process targeted at system certification, students must follow our software safety engineering process as they develop a safety-critical product, producing the artifacts required for certification as the project evolves. The teaching platform of choice for our Software Safety Engineering course is a model railroad project. As shown in Figure 3, the model railroad layout consists of an oval track with two sidings for passing locomotives and two dead-end spurs. A safety system is required since multiple trains traveling around the oval at different speeds and in different directions may collide.
5 (A) (B) Figure 3 Model railroad setup (A) Control logic and (B) Track layout The primary safety system for the model railroad is a scheduling system managed by the off-the-shelf TrainController Bronze Scheduling Software from Freiwald Software [7]. The track layout is divided into twenty four, individually powered segments. Digitrax logic boards monitor conductive detectors within each segment to determine the segment where each train is located, and this position information is forwarded from the logic boards via USB cable to the PC-based scheduling software [8]. Similarly, commands from the scheduling software are passed via the logic boards to specific locomotives and railway switches. Before a train may travel from one segment to another, it must reserve the next segment of track. If the next segment is available, the scheduling software sets the appropriate railway switches and allows the train to continue traveling onto the next track segment towards its destination. If the next segment is currently occupied, then the train must either stop and wait for the segment to become available or the scheduler must set a switch that diverts the train onto a siding or spur so that an oncoming train may pass. From a teaching perspective, the model railroad project has a number of advantages. First, the baseline system is relatively low cost (approximately $5000) which is advantageous to universities. The model railroad system can also be reconfigured at modest cost to increase or decrease complexity as needed. Another important factor is that the safety hazards associated with the model railroad are easily understood and can be safely illustrated using the model railroad system. Such hazards include head-on-collisions or derailments due to incorrect railway switch settings. and manage the artifacts required for safety certification. Safety certification requires the development of and strict adherence to Software Quality Assurance (SQA) and Configuration Management (CM) plans that span the entire development life cycle. These plans must address end-to-end requirements traceability, document and coding standards, structural coverage testing, and configuration and change management. Students enrolled in the Software Safety Engineering course make use of LDRA s Testbed and TBrun for extensive static and dynamic analysis of their own code [9]. As part of the static analysis procedure, the code is audited for compliance with industry-standard, bestpractice coding standards such as MISRA-C, CERT C, and JSF C++ AV standards. The LDRA tool also performs additional static analyses including code complexity analysis, reachability analysis, and data-flow analyses. Dynamic analysis of the code allows students to execute and test their code to determine the degree of structural coverage achieved -- a key feature since different design assurance levels require different levels of structural coverage such as statement coverage, branch coverage, or modified condition/decision coverage (MC/DC). Students also utilize a combination Wind River s Simics and VxWorks tools for early on-target testing [10]. Simics is used to simulate the target platform itself. VxWorks is a real-time operating system (RTOS) used on the actual target. With student software running under VxWorks on the Simics simulator, the students gain early insight on the performance of their software on the target platform but in a simulated environment where it is fully accessible for analysis. 5 Software safety engineering tools 6 Results A critical educational aspect of the course is the hands-on experience that students gain as they apply commercial-grade software engineering tools to generate As of this writing, the students have completed the system requirements process and software planning process, and they are currently working on the software
6 Table 2 Functional hazard assessment results [12] Function Failure Effect Severity (ARP 4761) Locate train on track Train location is unknown and trains may collide Catastrophic Power down on emergency stop Trains cannot be stopped and may collide Catastrophic Accept/Verify track configuration Trains cannot be ran on track Minor Accept/Verify train configuration Trains cannot be ran on track Minor Control turnouts on plant Trains cannot be safety directed and may collide Catastrophic Accept/Verify train schedules Trains cannot be ran on track Minor Control trains according to schedule Trains operate with limited or no control and may collide Catastrophic Figure 4 Fault tree analysis for Locate Train on Track function [12] requirements process artifacts. Since they have not completed the development of the full model railroad system, only initial results are available. However, even the initial results provide an insight into the advantages of our software safety engineering process. The students set out to design the complete train scheduling system around the off-the-shelf Scheduling Software. The students initial system requirements specification and FHA identified seven system-level functions of the Scheduling Software and also identified the failure effects of those functions and the severity classification of the failure effects. The system functions, failure effects, and severities are shown in Table 2. Using the FHA analysis, the students ascertained that the Scheduling Software must meet DO-178B level A, since the worst case failure of the Scheduling Software would lead to the catastrophic event of two trains colliding. After evaluating the requirements for DO- 178B level A, the students decided that developing the model railroad system to satisfy DAL A would be extremely difficult due to the complexity of the Scheduling Software and the lack of source code for that software. As a result of their safety analysis, students devised an amelioration plan in which they would develop a Safety Monitor system to handle the safetycritical aspects of the system independently of the Scheduling Software. The Safety Monitor is responsible for continuously monitoring train position and cutting power to the tracks to prevent catastrophic events such as collisions from occurring. The Safety Monitor system consists of CTI Electronics optical sensors for track segment entry/exit detection [11], power control modules, and a single monitoring software procedure. Unlike the Scheduling Software which may be thousands of lines of code, the Safety Monitor only has to observe adjacent track segments and shut off power if a collision is eminent. As a result of this simplicity, students determined that it would be easier to develop the Safety Monitor to satisfy
7 DO-178B DAL A standard than to demonstrate that the more complex, off-the-shelf Scheduling Software satisfies DAL A. Students demonstrated the efficacy of this Safety Monitor approach through the FTA of the system functions. As illustrated in Figure 4, a catastrophic severity function (level A) is comprised of the active system (Scheduling Software) providing the function capability at DO-178B level C and a Safety Monitor providing the safety-critical protection of the system at DO-178B level A. A failure will only occur through the failure of both the Scheduling Software and the Safety Monitor. By introducing the Safety Monitor system, the Scheduling Software s required assurance level was dropped from A to C, drastically reducing the number of DO-178B objectives and activities that must be completed with independence. 7 Conclusions As software continues to become an integral component of more and more products whose failures may prove catastrophic, the demand for instruction in software safety engineering processes will increase. One of the challenges in offering our software safety engineering course has been the general lack of understanding among software developers regarding safety analysis and how a software safety engineering process differs from standard software development processes. It has become clear that while there are numerous software engineering courses and texts that discuss standard software processes and specific development activities such as requirements elicitation and testing, there are few texts that discuss the integration of safety analysis into the software development process and how safety certification requirements impact the artifacts that must be delivered. Our use of the model railroad project in our Software Safety Engineering course has proven to be a very effective means of conveying the nuances of software safety engineering to our students when there are few other resources readily available. 8 Acknowledgements The authors would like to acknowledge the following contributions. George Petznick for assistance with wiring. James Norris of Redstone Arsenal Model Railway Club for model railway discussions. LDRA and WindRiver for software donations. Todd White from FAA Consultants for document templates. Steve Hosner for guest lecture on Fault Tree Analysis. The authors are especially grateful to Elise Haley, Joshua Hogue, Michael Gallaher, and Hunter Stinson for granting us permission to include a portion of their FHA and FTA in this manuscript. 9 References [1] W. R. Royce, Managing the Development of Large Software Systems, Proc., IEEE WESCON, 26, 1970, pp [2] RTCA DO-178B, Internet: [3] SAE ARP-4761, Internet: [4] C. Bertrand, C. Fuhrman. Towards defining software development processes in DO-178B with openup. Canadian Conference on Computer and Electrical Engineering, [5] K. Allenby, T. Kelly. Deriving Safety Requirements Using Scenarios. Fifth IEEE International Symposium on Requirements Engineering, [6] A. Arkusinski. A Method to Increase the Design Assurance Level of Software by Means of FMEA. The 24th Digital Avionics Systems Conference, [7] Friewald Software. Internet: [8] Digitrax. Internet: [9] LDRA Software Technology Homepage. Internet: [10] Wind River Simics. Internet: [11] CTI Electronics. Internet: [12] E. Haley, J. Hogue, M. Gallaher, and H. Stinson, Safe Train Project Documentation, unpublished.
SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCE. Cheryl A. Dorsey Digital Flight / Solutions cadorsey@df-solutions.
SAFE SOFTWARE FOR SPACE APPLICATIONS: BUILDING ON THE DO-178 EXPERIENCE Cheryl A. Dorsey Digital Flight / Solutions [email protected] DIGITAL FLIGHT / SOLUTIONS Presentation Outline DO-178 Overview
Introduction of ISO/DIS 26262 (ISO 26262) Parts of ISO 26262 ASIL Levels Part 6 : Product Development Software Level
ISO 26262 the Emerging Automotive Safety Standard Agenda Introduction of ISO/DIS 26262 (ISO 26262) Parts of ISO 26262 ASIL Levels Part 4 : Product Development System Level Part 6 : Product Development
Certification Authorities Software Team (CAST) Position Paper CAST-9
Certification Authorities Software Team (CAST) Position Paper CAST-9 Considerations for Evaluating Safety Engineering Approaches to Software Assurance Completed January, 2002 NOTE: This position paper
SOFTWARE VERIFICATION RESEARCH CENTRE SCHOOL OF INFORMATION TECHNOLOGY THE UNIVERSITY OF QUEENSLAND. Queensland 4072 Australia TECHNICAL REPORT
SOFTWARE VERIFICATION RESEARCH CENTRE SCHOOL OF INFORMATION TECHNOLOGY THE UNIVERSITY OF QUEENSLAND Queensland 4072 Australia TECHNICAL REPORT No. 99-30 A Survey of International Safety Standards Axel
1. Software Engineering Overview
1. Overview 1. Overview...1 1.1 Total programme structure...1 1.2 Topics covered in module...2 1.3 Examples of SW eng. practice in some industrial sectors...4 1.3.1 European Space Agency (ESA), software
Parameters for Efficient Software Certification
Parameters for Efficient Software Certification Roland Wolfig, [email protected] Vienna University of Technology, Real-Time Systems Group 1 Abstract Software certification is a common approach
DO-178B compliance: turn an overhead expense into a competitive advantage
IBM Software Rational Aerospace and Defense DO-178B compliance: turn an overhead expense into a competitive advantage 2 DO-178B compliance: turn an overhead expense into a competitive advantage Contents
Safety Analysis and Certification of Open Distributed Systems. P. M. Conmy; Department of Computer Science, University of York, York, YO10 5DD U.K.
Safety Analysis and Certification of Open Distributed Systems P. M. Conmy; Department of Computer Science, University of York, York, YO10 5DD U.K. M. Nicholson; Department of Computer Science, University
ENEA: THE PROVEN LEADER IN SAFETY CRITICAL AVIONICS SYSTEMS
ENEA: THE PROVEN LEADER IN SAFETY CRITICAL AVIONICS SYSTEMS [email protected]. www.enea.com For over 40 years, we have been one of the fastest growing avionics consulting companies in the world. Today our
2005-01-0785. Effective Application of Software Safety Techniques for Automotive Embedded Control Systems SAE TECHNICAL PAPER SERIES
2005-01-0785 SAE TECHNICAL PAPER SERIES Effective Application of Software Safety Techniques for Automotive Embedded Control Systems Barbara J. Czerny, Joseph G. D Ambrosio, Brian T. Murray and Padma Sundaram
Software Classification Methodology and Standardisation
Software Classification Methodology and Standardisation 07 March 2003 1/10 Table of Contents 1. INTRODUCTION a Galileo system overview Ε b Master schedule Ε 2. GALILEO SAFETY CASE APPROACH Ε 3. SYSTEM
WORKSHOP RC 2011. EVI Integração de Sistemas Junho de 2011 Eng. Nelson José Wilmers Júnior
WORKSHOP RC 2011 EVI Integração de Sistemas Junho de 2011 Eng. Nelson José Wilmers Júnior Comparison between ARP4754 A Guidelines for Development of Civil Aircraft and Systems (2010) and ARP4754 Certification
SOFTWARE SAFETY STANDARD
NOT MEASUREMENT SENSITIVE National Aeronautics and NASA-STD-8719.13B w/change 1 Space Administration July 8, 2004 SOFTWARE SAFETY STANDARD NASA TECHNICAL STANDARD REPLACES NASA-STD-8719.13A DATED SEPTEMBER
Research Institute (KAERI) 989-111 Daedeok-daero, Yuseong-gu, Daejeon, Republic of Korea 305-353
, pp.233-242 http://dx.doi.org/10.14257/ijseia.2014.8.4.24 Methods of Software Qualification for a Safety-grade Optical Modem to be used Core Protection Calculator (CPC) in Korea Standard Nuclear Power
University of Paderborn Software Engineering Group II-25. Dr. Holger Giese. University of Paderborn Software Engineering Group. External facilities
II.2 Life Cycle and Safety Safety Life Cycle: The necessary activities involving safety-related systems, occurring during a period of time that starts at the concept phase of a project and finishes when
Using CMM with DO-178B/ED-12B for Airborne System Development
Using CMM with DO-178B/ED-12B for Airborne System Development WHITE PAPER Author : Narasimha Swamy (Project Manager, Avionics Practice) Most aircraft companies develop onboard systems software for civilian
asuresign Aero (NATEP Grant MA005)
asuresign Aero (NATEP Grant MA005) WP2 Workshop: Identification of Needs for Tool Support in Meeting Aircraft Avionics Systems, Hardware & Software Certification Standards Dr Chris Harper Systems & Safety
SOFTWARE ASSURANCE STANDARD
NOT MEASUREMENT SENSITIVE National Aeronautics and NASA-STD-8739.8 w/change 1 Space Administration July 28, 2004 SOFTWARE ASSURANCE STANDARD NASA TECHNICAL STANDARD REPLACES NASA-STD-2201-93 DATED NOVEMBER
WIND RIVER RTCA DO-178 SOFTWARE CERTIFICATION SERVICES
WIND RIVER RTCA DO-178 SOFTWARE CERTIFICATION SERVICES Wind River Professional Services RTCA DO-178 Practice provides software certification services to help our customers address their demanding software
CHAPTER 7 Software Configuration Management
CHAPTER 7 Software Configuration Management ACRONYMS CCB CM FCA MTBF PCA SCCB SCI SCM SCMP SCR SCSA SEI/CMMI SQA SRS USNRC INTRODUCTION Configuration Control Board Configuration Management Functional Configuration
Integrating System Safety and Software Assurance
Integrating System Safety and Software Assurance Systems Certification and Integrity Directorate of Aviation Engineering Directorate General Technical Airworthiness 1 Overview Integration of software assurance
Criteria for Flight Project Critical Milestone Reviews
Criteria for Flight Project Critical Milestone Reviews GSFC-STD-1001 Baseline Release February 2005 Approved By: Original signed by Date: 2/19/05 Richard M. Day Director, Independent Technical Authority
CalMod Design-Build Electrification Services
SECTION 01800 SYSTEMS INTEGRATION AND INTEGRATOR REQUIREMENTS PART 1 GENERAL DESCRIPTION A. This section specifies the system-wide integration requirements for the Caltrain Electrification system, i.e.
JOURNAL OF OBJECT TECHNOLOGY
JOURNAL OF OBJECT TECHNOLOGY Online at www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2006 Vol. 5. No. 8, November-December 2006 Requirements Engineering Tasks Donald Firesmith,
The new software standard for the avionic industry: goals, changes and challenges
WHITEPAPER DO-178C/ED-12C The new software standard for the avionic industry: goals, changes and challenges SVEN NORDHOFF Aerospace Certification / Process Assurance & SPICE Assessor [email protected]
RTCA DO-178B/EUROCAE ED-12B
27 RTCA DO-178B/EUROCAE ED-12B Thomas K. Ferrell Ferrell and Associates Consulting Uma D. Ferrell Ferrell and Associates Consulting 27.1 Introduction Comparison with Other Software Standards Document Overview
The Comprehensive and Fully Compliant Certification Solution. Certification Services
The Comprehensive and Fully Compliant Certification Solution "This applicant saved a lot of time and money using your fast track to compliance package. I would highly recommend your DER consulting service,
Best Practices for Verification, Validation, and Test in Model- Based Design
2008-01-1469 Best Practices for Verification, Validation, and in Model- Based Design Copyright 2008 The MathWorks, Inc. Brett Murphy, Amory Wakefield, and Jon Friedman The MathWorks, Inc. ABSTRACT Model-Based
(Refer Slide Time: 01:52)
Software Engineering Prof. N. L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture - 2 Introduction to Software Engineering Challenges, Process Models etc (Part 2) This
A System-safety process for by-wire automotive systems
A System-safety process for by-wire automotive systems Steer-by-wire and other by-wire systems (as defined in this article) offer many passive and active safety advantages. To help ensure these advantages
Test-Driven Approach for Safety-Critical Software Development
Test-Driven Approach for Safety-Critical Software Development Onur Özçelik 1,2*, D. Turgay Altilar2 1 Scientific 2 and Technological Research Council of Turkey, 41470 Kocaeli, Turkey. Department of Computer
Criteria for Software Tools Evaluation in the Development of Safety-Critical Real-Time Systems 1
Criteria for Software s Evaluation in the Development of Safety-Critical Real-Time Systems 1 Andrew J. Kornecki Embry-Riddle Aeronautical University Daytona Beach, FL 32114-3900, USA Janusz Zalewski Florida
Improving Software Requirements through Formal Methods: A Review
International Journal of Information and Computation Technology. ISSN 0974-2239 Volume 3, Number 7 (2013), pp. 729-736 International Research Publications House http://www. irphouse.com /ijict.htm Improving
How to Upgrade SPICE-Compliant Processes for Functional Safety
How to Upgrade SPICE-Compliant Processes for Functional Safety Dr. Erwin Petry KUGLER MAAG CIE GmbH Leibnizstraße 11 70806 Kornwestheim Germany Mobile: +49 173 67 87 337 Tel: +49 7154-1796-222 Fax: +49
Meeting DO-178B Software Verification Guidelines with Coverity Integrity Center
Meeting DO-178B Software Verification Guidelines with Coverity Integrity Center May, 2009 Thomas Schultz Director of Product Strategy, Coverity, Inc. Executive Summary Development organizations that create
Design of automatic testing tool for railway signalling systems software safety assessment
Risk Analysis VI 513 Design of automatic testing tool for railway signalling systems software safety assessment J.-G. Hwang 1, H.-J. Jo 1 & H.-S. Kim 2 1 Train Control Research Team, Korea Railroad Research
Certification Authorities Software Team (CAST) Position Paper CAST-10
Certification Authorities Software Team (CAST) Position Paper CAST-10 What is a Decision in Application of Modified Condition/Decision Coverage (MC/DC) and Decision Coverage (DC)? Completed June 2002 NOTE:
Abstract. 1 Introduction
Amir Tomer Amir Tomer is the Director of Systems and Software Engineering Processes at RAFAEL Ltd., Israel,with whom he has been since 1982,holding a variety of systems and software engineering positions,both
ARINC 653. An Avionics Standard for Safe, Partitioned Systems
ARINC 653 An Avionics Standard for Safe, Partitioned Systems 1 Courtesy of Wind River Inc. 2008 IEEE-CS Seminar June 4 th, 2008 Agenda Aerospace Trends IMA vs. Federated ARINC 653 Main concepts Safety
Software-based medical devices from defibrillators
C O V E R F E A T U R E Coping with Defective Software in Medical Devices Steven R. Rakitin Software Quality Consulting Inc. Embedding defective software in medical devices increases safety risks. Given
Software Engineering Introduction & Background. Complaints. General Problems. Department of Computer Science Kent State University
Software Engineering Introduction & Background Department of Computer Science Kent State University Complaints Software production is often done by amateurs Software development is done by tinkering or
Best practices for developing DO-178 compliant software using Model-Based Design
Best practices for developing DO-178 compliant software using Model-Based Design Raymond G. Estrada, Jr. 1 The MathWorks, Torrance, CA Eric Dillaber. 2 The MathWorks, Natick, MA Gen Sasaki 3 The MathWorks,
Reverse Engineering Software and Digital Systems
NOT FAA POLICY OR GUIDANCE LIMITED RELEASE DOCUMENT 04 SEPTEMBER 2013 DOT/FAA/AR-xx/xx Federal Aviation Administration William J. Hughes Technical Center Aviation Research Division Atlantic City International
IV&V and Software Risk Management
IV&V and Software Risk Management The Role of IV&V in Software Risk Management NASA Risk Management Conference IV Kenneth A. Costello, NASA IV&V Chief Engineer NASA IV&V Facility Fairmont, West Virginia
System Development Life Cycle Guide
TEXAS DEPARTMENT OF INFORMATION RESOURCES System Development Life Cycle Guide Version 1.1 30 MAY 2008 Version History This and other Framework Extension tools are available on Framework Web site. Release
Safety-Critical Systems: Processes, Standards and Certification
Fachbereich 17 - Mathematik/Informatik Arbeitsgruppe Softwaretechnik Warburger Straße 100 33098 Paderborn Safety-Critical Systems: Processes, Standards and Certification for the Seminar Analysis, Design
AP1000 European 18. Human Factors Engineering Design Control Document
18.2 Human Factors Engineering Program Management The purpose of this section is to describe the goals of the AP1000 human factors engineering program, the technical program to accomplish these goals,
Safety Critical & High Availability Systems
SCHA - Version: 1 21 June 2016 Safety Critical & High Availability Systems Safety Critical & High Availability Systems SCHA - Version: 1 3 days Course Description: This Masterclass examines the design
Safety and Hazard Analysis
Safety and Hazard Analysis An F16 pilot was sitting on the runway doing the preflight and wondered if the computer would let him raise the landing gear while on the ground - it did A manufacturer of torpedoes
Requirements-driven Verification Methodology for Standards Compliance
Requirements-driven Verification Methodology for Standards Compliance Serrie-justine Chapman (TVS) [email protected] Mike Bartley (TVS) [email protected] Darren Galpin (Infineon)
Software Configuration Management. Addendum zu Kapitel 13
Software Configuration Management Addendum zu Kapitel 13 Outline Purpose of Software Configuration Management (SCM) Motivation: Why software configuration management? Definition: What is software configuration
The GAO has shown that technical, cost, schedule, and performance risks are inherent. Software Acquisition: Reducing Risks.
Acquisition: Reducing Risks James Jones The Acquisition Risk Crisis The GAO has shown that technical, cost, schedule, and performance risks are inherent in delivering software-intensive systems. The GAO
NODIS Library Program Formulation(7000s) Search
NODIS Library Program Formulation(7000s) Search NASA Procedural Requirements This Document Is Uncontrolled When Printed. Check the NASA Online Directives Information System (NODIS) Library to verify that
Software Safety -- Process Overview and Application
Software Safety -- Process Overview and Application Dr. Michael F. Siok, PE, ESEP Dr. Michael F. Siok, PE, ESEP Lockheed Martin Aeronautics Company P.O. Box 748, MZ 5924 Fort Worth, TX 76101 Tel: (817)
ESA s Data Management System for the Russian Segment of the International Space Station
iss data management system ESA s Data Management System for the Russian Segment of the International Space Station J. Graf, C. Reimers & A. Errington ESA Directorate of Manned Spaceflight and Microgravity,
Certification Authorities Software Team (CAST) Position Paper CAST-15
Certification Authorities Software Team (CAST) Position Paper CAST-15 Merging High-Level and Low-Level Requirements Completed February 2003 NOTE: This position paper has been coordinated among the software
Dr. Brian Murray March 4, 2011
Event that could lead to an accident GM Autonomy HAZARD 1 Q=6e-7 Event that could lead to a hazard Control to prevent HAZARDOUS EVENT 1 HAZARDOUS EVENT 1 HAZARD CONTROL 1 r=6e-008 Q=0.0006 Q=0.001 Q=0.001
8. Master Test Plan (MTP)
8. Master Test Plan (MTP) The purpose of the Master Test Plan (MTP) is to provide an overall test planning and test management document for multiple levels of test (either within one project or across
How To Develop Software
Software Engineering Prof. N.L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture-4 Overview of Phases (Part - II) We studied the problem definition phase, with which
Configuration & Build Management
Object-Oriented Software Engineering Using UML, Patterns, and Java Configuration & Build Management Outline of the Lecture Purpose of Software Configuration Management (SCM) Some Terminology Software Configuration
Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville
Software Engineering Software Processes Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To introduce software process models To describe three generic process models and when
A Methodology for Safety Critical Software Systems Planning
A Methodology for Safety Critical Software Systems Planning EHAB SHAFEI 1, IBRAHIM F. MOAWAD 2, HANY SALLAM 1, ZAKI TAHA 3, MOSTAFA AREF 3 1 Operation Safety and Human Factors Department, 2 Information
Project Risk Management: IV&V as Insurance for Project Success
Project Risk Management: IV&V as Insurance for Project Success Introduction Software development projects can be expensive and risky: Ever more complex mission-critical requirements lead to increasingly
Failure Analysis Methods What, Why and How. MEEG 466 Special Topics in Design Jim Glancey Spring, 2006
Failure Analysis Methods What, Why and How MEEG 466 Special Topics in Design Jim Glancey Spring, 2006 Failure Analysis Methods Every product or process has modes of failure. An analysis of potential failures
Lecture Slides for Managing and Leading Software Projects. Chapter 1: Introduction
Lecture Slides for Managing and Leading Software Projects Chapter 1: Introduction developed by Richard E. (Dick) Fairley, Ph.D. to accompany the text Managing and Leading Software Projects published by
Testing of safety-critical software some principles
1(60) Testing of safety-critical software some principles Emerging Trends in Software Testing: autumn 2012 Matti Vuori, Tampere University of Technology 27.11.2012 Contents 1/4 Topics of this lecture 6
Safety Integrated. SIMATIC Safety Matrix. The Management Tool for all Phases of the Safety Lifecycle. Brochure September 2010. Answers for industry.
SIMATIC Safety Matrix The Management Tool for all Phases of the Safety Lifecycle Brochure September 2010 Safety Integrated Answers for industry. Functional safety and Safety Lifecycle Management Hazard
FAA Requirements Engineering Management Handbook!
FAA Requirements Engineering Management Handbook! 9. Define the Software Requirements Kansas State University Steps in the REMH 1. Develop the System Overview 2. Identify the System Boundary 3. Develop
SE464/CS446/ECE452 Software Life-Cycle and Process Models. Instructor: Krzysztof Czarnecki
SE464/CS446/ECE452 Software Life-Cycle and Process Models Instructor: Krzysztof Czarnecki 1 Some of these slides are based on: Lecture slides by Ian Summerville accompanying his classic textbook software
Reduce Medical Device Compliance Costs with Best Practices. [email protected]
Reduce Medical Device Compliance Costs with Best Practices [email protected] 1 Agenda Medical Software Certification How new is Critical Software Certification? What do we need to do? What Best Practises
3 August 2014. Software Safety and Security Best Practices A Case Study From Aerospace
3 August 2014 Software Safety and Security Best Practices A Case Study From Aerospace Agenda Introduction Why Aviation? ARINC 653 Real-time Linux on Xen (ARLX) Safety Artifacts for ARLX Security Artifacts
Development and Application of POSAFE-Q PLC Platform
Development and Application of POSAFE-Q PLC Platform MyeongKyun Lee a, SeungWhan Song a, DongHwa Yun a a POSCO ICT Co. R&D center, Korea Techno-complex 126-16, 5-ka, Anam-dong, Sungbuk, Seoul, Republic
Agile Model-Based Systems Engineering (ambse)
Agile Model-Based Systems Engineering (ambse) Bruce Powel Douglass, Ph.D. Chief Evangelist, Global Technology Ambassador IBM Rational [email protected] Twitter: @BruceDouglass Yahoo: tech.groups.yahoo.com/group/rt-uml/
Improving Embedded Software Test Effectiveness in Automotive Applications
Improving Embedded Software Test Effectiveness in Automotive Applications Author, D Brook Document Number: CODETESTTECHWP Rev. 0 11/2005 As the automotive industry introduces more and more safety-critical,
Code Coverage: Free Software and Virtualization to the Rescue
Code Coverage: Free Software and Virtualization to the Rescue Franco Gasperoni, AdaCore [email protected] What is Code Coverage and Why Is It Useful? Your team is developing or updating an embedded
5 Certifiable safe airborne software process analyses
Certifiable safe airborne software process analyses 97 5 Certifiable safe airborne software process analyses Published as E. Kesseler, Applying theory to practise, Airworthy software measured and analysed,
The Impact of RTCA DO-178C on Software Development
Cognizant 20-20 Insights The Impact of RTCA DO-178C on Software Development By following DO-178C, organizations can implement aeronautical software with clear and consistent ties to existing systems and
Certification of a Scade 6 compiler
Certification of a Scade 6 compiler F-X Fornari Esterel Technologies 1 Introduction Topic : What does mean developping a certified software? In particular, using embedded sofware development rules! What
SOFTWARE CONFIGURATION MANAGEMENT GUIDEBOOK
Office of Safety and Mission Assurance NASA-GB-9503 SOFTWARE CONFIGURATION MANAGEMENT GUIDEBOOK AUGUST 1995 National Aeronautics and Space Administration Washington, D.C. 20546 PREFACE The growth in cost
Software testing. Objectives
Software testing cmsc435-1 Objectives To discuss the distinctions between validation testing and defect testing To describe the principles of system and component testing To describe strategies for generating
Notes and terms of conditions. Vendor shall note the following terms and conditions/ information before they submit their quote.
Specifications for ARINC 653 compliant RTOS & Development Environment Notes and terms of conditions Vendor shall note the following terms and conditions/ information before they submit their quote. 1.
Version: 1.0 Latest Edition: 2006-08-24. Guideline
Management of Comments on this report are gratefully received by Johan Hedberg at SP Swedish National Testing and Research Institute mailto:[email protected] Quoting of this report is allowed but please
DRAFT RESEARCH SUPPORT BUILDING AND INFRASTRUCTURE MODERNIZATION RISK MANAGEMENT PLAN. April 2009 SLAC I 050 07010 002
DRAFT RESEARCH SUPPORT BUILDING AND INFRASTRUCTURE MODERNIZATION RISK MANAGEMENT PLAN April 2009 SLAC I 050 07010 002 Risk Management Plan Contents 1.0 INTRODUCTION... 1 1.1 Scope... 1 2.0 MANAGEMENT
Frequently Asked Questions
Frequently Asked Questions The exida 61508 Certification Program V1 R8 October 19, 2007 exida Geneva, Switzerland Sellersville, PA 18960, USA, +1-215-453-1720 Munich, Germany, +49 89 4900 0547 1 Exida
New Challenges In Certification For Aircraft Software
New Challenges In Certification For Aircraft Software John Rushby Computer Science Laboratory SRI International Menlo Park CA USA John Rushby, SR I Aircraft Software Certification 1 Overview The basics
The FDA recently announced a significant
This article illustrates the risk analysis guidance discussed in GAMP 4. 5 By applying GAMP s risk analysis method to three generic classes of software systems, this article acts as both an introduction
IBM Rational systems and software solutions for the medical device industry
IBM Software August 2011 IBM Rational systems and software solutions for the medical device industry Improve processes, manage IEC 61508 and IEC 62304 standards, develop quality products Highlights Manage
RISK ASSESMENT: FAULT TREE ANALYSIS
RISK ASSESMENT: FAULT TREE ANALYSIS Afzal Ahmed +, Saghir Mehdi Rizvi*Zeshan Anwer Rana* Faheem Abbas* + COMSAT Institute of Information and Technology, Sahiwal, Pakistan *Navy Engineering College National
A System-Safety Process For By-Wire Automotive Systems
SAE TECHNICAL PAPER SERIES 2000-01-1056 A System-Safety Process For By-Wire Automotive Systems Sanket Amberkar, Joseph G. D Ambrosio and Brian T. Murray Delphi Automotive Systems Joseph Wysocki HRL Laboratories
Development/Maintenance/Reuse: Software Evolution in Product Lines
Development/Maintenance/Reuse: Software Evolution in Product Lines Stephen R. Schach Vanderbilt University, Nashville, TN, USA Amir Tomer RAFAEL, Haifa, Israel Abstract The evolution tree model is a two-dimensional
Effective Software Verification for Medical Devices
STERLINGTECH AND KLOCWORK WHITE PAPER NOVEMBER 2009 Effective Software Verification for Medical Devices Achieving compliance and meeting productivity goals with static analysis In addition to producing
