SPARK is useful for developing reliable software for safety-critical systems, using the `correctness-by-construction' approach. It also has verification tools that can be used to produce verified software. To tackle larger-scale development of verified software, components are useful. In this paper we show how to define and implement software components in SPARK and use existing SPARK tools to produce verified component-based software. We demon- strate our approach on a missile guidance system.
/lp/association-for-computing-machinery/verified-component-based-software-in-spark-experimental-results-for-a-AO02JpbACi