Autonomous systems are software-intensive cyber-physical systems. This chapter covers the software and middleware layer that connects sensors, compute platforms, operating systems, autonomy algorithms, actuators, updates and operational monitoring. The topic is important because autonomous behaviour is assembled through software: perception, localisation, planning, control, diagnostics and degraded modes all depend on software interfaces that must be correct, timely, secure and maintainable.
The chapter combines domain specifics with general principles. Ground vehicles, aircraft, marine systems and spacecraft differ in operating environment, regulation, lifecycle and failure tolerance, but they all rely on layered software stacks, real-time execution, middleware communication, configuration management and controlled software supply chains. These common aspects make software architecture a natural bridge between domain engineering and the book's central V-model.
The main V&V challenge is that software failures are usually systematic rather than random. Risk can arise from incomplete requirements, unsafe interface assumptions, middleware timing, configuration drift, vulnerable dependencies, unqualified tools or AI components that fail outside their training distribution. V&V therefore starts on the left side of the V-model with requirements, hazards, architecture and baselines, and continues on the right side with unit verification, integration tests, SIL/PIL/HIL, scenario validation, release audits and operational monitoring.