1st Edition
Developing Safety-Critical Software A Practical Guide for Aviation Software and DO-178C Compliance
The amount of software used in safety-critical systems is increasing at a rapid rate. At the same time, software technology is changing, projects are pressed to develop software faster and more cheaply, and the software is being used in more critical ways. Developing Safety-Critical Software: A Practical Guide for Aviation Software and DO-178C Compliance equips you with the information you need to effectively and efficiently develop safety-critical, life-critical, and mission-critical software for aviation. The principles also apply to software for automotive, medical, nuclear, and other safety-critical domains.
An international authority on safety-critical software, the author helped write DO-178C and the U.S. Federal Aviation Administration’s policy and guidance on safety-critical software. In this book, she draws on more than 20 years of experience as a certification authority, an avionics manufacturer, an aircraft integrator, and a software developer to present best practices, real-world examples, and concrete recommendations.
The book includes:
- An overview of how software fits into the systems and safety processes
- Detailed examination of DO-178C and how to effectively apply the guidance
- Insight into the DO-178C-related documents on tool qualification (DO-330), model-based development (DO-331), object-oriented technology (DO-332), and formal methods (DO-333)
- Practical tips for the successful development of safety-critical software and certification
- Insightful coverage of some of the more challenging topics in safety-critical software development and verification, including real-time operating systems, partitioning, configuration data, software reuse, previously developed software, reverse engineering, and outsourcing and offshoring
An invaluable reference for systems and software managers, developers, and quality assurance personnel, this book provides a wealth of information to help you develop, manage, and approve safety-critical software more confidently.
Introduction
Introduction and Overview
Context of Safety-Critical Software Development
Software in the Context of the System
Software in the Context of the System Safety Assessment
Developing Safety-Critical Software Using DO-178C
Overview of DO-178C and Supporting Documents
Software Planning
Software Requirements
Software Design
Software Implementation: Coding and Integration
Software Verification
Software Configuration Management
Software Quality Assurance
Certification Liaison
Tool Qualification and DO-178C Supplements
DO-330 and Software Tool Qualification
DO-331 and Model-Based Development and Verification
DO-332 and Object-Oriented Technology and Related Techniques
DO-333 and Formal Methods
Special Topics
Noncovered Code (Dead, Extraneous, and Deactivated Code)
Field-Loadable Software
User-Modifiable Software
Real-Time Operating Systems
Software Partitioning
Configuration Data
Aeronautical Data
Software Reuse
Reverse Engineering
Outsourcing and Offshoring Software Life Cycle Activities
Appendices
Appendix A: Example Transition Criteria
Appendix B: Real-Time Operating System Areas of Concern
Appendix C: Questions to Consider When Selecting a Real-Time
Operating System for a Safety-Critical System
Appendix D: Software Service History Questions
Index
Biography
Leanna Rierson is an independent consultant in software, complex electronic hardware, and integrated module avionics (IMA) development for safety-critical systems, with emphasis on civil aviation. She has more than 20 years of experience in the software and aviation industry. Rierson spent nine years as a software and avionics specialist at the U.S. Federal Aviation Administration (FAA)—five of those in the position of chief scientific and technical advisor for aircraft computer software. Rierson has published numerous papers, led many national and international engineering teams and workshops, and developed courses, policies, handbooks, and guidance material for the FAA. She served as a subgroup cochair and editorial team leader on the RTCA special committee that wrote DO-178C and six other related documents. Rierson has taught DO-178B, and now DO-178C, to hundreds of professionals. She is an FAA Designated Engineering Representative (DER) with Level A authority in the software and complex hardware technical areas. She has worked with numerous aircraft and avionics companies, including Boeing, Cessna, Learjet, Embraer, Rockwell Collins, GE Aviation, Honeywell, and numerous others. She is currently working part-time for the Rockwell Collins avionics certification team.
"It is easy to notice the author’s extensive and hands-on knowledge in the domain. ... Such experience emanates from the book pages. ... The book is a must for anyone engaged in developing, verifying, or certifying airborne systems. ... [It] offers very clear but relatively concise explanation of the process of developing software-intensive aviation systems under guidance of RTCA DO-178C and related documents. The book does an outstanding job of providing necessary basics with very practical ‘dos and don’ts’. ... can be used as a base reference for software aspects of airborne systems development process."
—Andrew J. Kornecki, Embry Riddle Aeronautical University"This book provides practical guidance for cost-effective safe software. Ms. Rierson distilled the key elements from her experiences and multiple projects into a concise, easy-to-understand book. ... This book demonstrates how, when done properly, safe software development can avoid the inefficiencies and bureaucracy sometimes associated with certification and DO-178. ... What differentiates this book is its honest, real-world recommendations and the insights into the significance of the various DO-178C objectives. If projects took her guidance seriously and implemented it from the start, I believe the projects would cost a fraction of ‘check-box’ projects and result in safer software."
—Wendy Ljungren, GE Aviation"The book is well researched, and is based on the experiences of a knowledgeable regulator and a practitioner. Leanna’s style is easy to read. It explains the terse but precise guidance given in regulations using terms that are easy to understand. ... The topic is made very approachable through a combination of three styles. It uses a narrative form so the book reads like a story, with the development of arguments and reasoning of an essay, and the certification experiences of the author like an autobiography. The result is an engaging book that is hard to put down."
—George Romanski, Verocel, Inc.