AdaCore / Rapita Systems Partnership: Verifying critical code with GNAT Pro and RVS
Ada was designed for use in real-time embedded systems, and is commonly regarded as one of the safest and most secure languages. This makes it particularly relevant for use in mission- and safety-critical applications, where safety standards such as DO-178C require that evidence be provided to demonstrate that hardware/software platforms operate within a required safety level. This evidence can be furnished by the GNAT Pro toolset and the Rapita Verification Suite (RVS), complementary tools that can help ensure software’s safety and adherence to coding guidelines and can collect evidence needed for certification from tests of the software.
AdaCore’s GNAT Pro Ada Development Environment helps customers produce and verify safe code; it supports all versions of Ada, from Ada 83 to Ada 2012. Along with the GNAT Pro compiler, the product provides tailorable IDEs and a comprehensive toolsuite. The latter includes a visual debugger and tools to check adherence to coding standards, compute and report program metrics, generate documentation from code, compute stack usage, and emulate the target environment. Customers subscribed to the GNAT Pro Assurance edition receive a specialized service (Sustained Branches) that provides critical fixes long after the initial product release, and this GNAT Pro edition also offers customizable embedded runtimes that have been included in multiple projects certified for the avionics (DO-178B/C) and railway (EN 50128) standards. Using GNAT Pro, customers can be confident that their code is safe enough to meet even the most stringent software safety standards.
Rapita Systems’ RVS toolsuite complements GNAT Pro by providing an efficient and dependable solution for writing and running software tests on the target hardware, emulator or host computer, and collecting verification evidence from them. Rapita’s unit testing solution, RapiTestFramework, reduces the effort needed to write and run unit and integration tests, even those with complex logic and stubbing behaviour, and produce verification evidence. Other tools in the RVS range implement the collection of verification evidence such as worst-case execution time (WCET) metrics, and highlight the scheduling behavior of the software under test. RVS is written in Ada, supports the complete range of Ada standards, and has been qualified in multiple projects in environments such as DO-178C.
GNAT Pro and RVS offer complementary tools to produce, test and verify critical embedded software. By using them together, building safe software in Ada is easier than ever.