Testing and Bounded Model Checking (BMC) are two techniques used in Software Verification for bug-hunting. They are expression of two different philosophies: testing is used on the compiled code and it is more suited to find errors in common behaviors, while BMC is used on the source code to find errors in uncommon behaviors of the system. Nowadays, testing is by far the most used technique for software verification in industry: it is easy to use and even when no error is found, it can release a set of tests certifying the (partial) correctness of the compiled system. In the case of safety critical software, in order to increase the confidence of the correctness of the compiled system, it is often required that the provided set of tests covers 100% of the code. This requirement, however, substantially increases the costs associated to the testing phase, since it often involves the manual generation of tests. In this paper we show how BMC can be productively applied to the Software Verification process in industry. In particular, we show how to productively use a Bounded Model Checker for C programs (CBMC) as an automatic test generator for the Coverage Analysis of Safety Critical Software.
ERTMS is the European Railway Traffic Management\ud
System. The CENELEC EN50128 guidelines for software\ud
development of safety critical system require that the soft-\ud
ware produced is verified by providing a set of tests covering\ud
the 100% of the code. This requirement, however, substan-\ud
tially increases the costs associated to the Testing phase,\ud
since it may involve the manual generation of tests. In this\ud
paper we present a methodology to automatic generate test\ud
achieving the desired code coverage. The automatization of\ud
the test generation phase, applied to some modules of the\ud
ERTMS developed by Ansaldo STS (an Italian leading com-\ud
pany in the field), led to a dramatic increase in the produc-\ud
tivity and to a reduction of the costs of the entire Software\ud
Development proces
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.