Book Description
Software failure in high-profile areas, such as aerospace, defence and medicine frequently makes the headlines because of the potentially disastrous consequences. The huge and recent growth in the use of software development has particularly serious implications for such safety-critical and high-integrity systems.
Despite its popularity and the excellent tool support available, C is only suitable for use in these areas within firm constraints and guidelines. Safer C: Developing Software for High-integrity and Safety-critical Systems highlights the ‘holes’ in C, but also demonstrates clearly that, employed correctly, C can be used to write software of as high intrinsic quality as other languages.
Beginning with a broad overview of safety in software, the book provides a critique of C as a safety-critical language, based on the author’s extensive measurements of commercial C quality. Complexity, safer subsets, standards and tools are all examined. Essential rules of good working practice and guidelines for immediate implementation are presented and a direct comparison is made of specific safety-related features in C and other commonly-used languages. This important and timely book contains vital information for all developers working with C, whether in high-integrity areas or not, who need to produce reliable and effective software.
Special features include: much needed guidance for all software developers using C, not just those working on high-integrity and safety-critical systems; practical points for immediate implementation based on the use of safer subsets; and an examination of poorly understood legal implications of software safety and references to standards throughout.