Aviation systems, both airborne and ground, (e.g., flight controls, avionics, engine control, and air traffic control) are typical examples of safety‐critical, real‐time systems. Such systems continue to become more complex and are extremely software reliant. Modern aircrafts, composed on numerous software‐controlled systems, operate within constraints of a National Airspace System (NAS) that includes air traffic management, weather services, airline and airport operations, communication facilities, navigation infrastructure, and so on. NAS is a software‐intensive system of systems with multiple components and of incredible complexity.
Software is critical in all aspects of modern aviation, whether it is for development, operation flexibility, or fault tolerance. Technological progress, particularly in the electronics and computing areas, changed the aviation industry. Safety has always been a critical factor for aviation; with increased interconnectivity of networked systems and potential vulnerability for malicious attacks, security becomes likewise important. This chapter presents basic concepts and definitions of safety and security together with their mutual relationship. Representative techniques, methods, and tools used to facilitate software assurance are discussed. In addition, the chapter introduces regulations and certification guidance as applied to the development of software‐intensive aviation systems from the perspective of safety and security.