610 pages | 24 B/W Illus.
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 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.
"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.
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 Implementation: Coding and Integration
Software Configuration Management
Software Quality Assurance
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
Noncovered Code (Dead, Extraneous, and Deactivated Code)
Real-Time Operating Systems
Outsourcing and Offshoring Software Life Cycle Activities
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