Safety Critical Software has to be written with great care. There must be guidelines, tools and processes in place to ensure that the software is safe to use. But what about any third party libraries such as those that are packaged with the compiler toolchain? There are many good reasons to want to use a library. Not only does it save development effort, but a library may actually have a higher quality than what you can create yourself within the constraints of a project. The question is, can you use those libraries safely as well?
Functional Safety standards such as ISO 26262, IEC 61508 and DO-178C/ED-12C facilitate the use of libraries but they do require that the user of the library takes responsibility for its safe use.
In this webinar we will discuss tools and techniques that can be used to achieve this.
As a special case, we will take a look at the design and implementation of a test suite for the C standard library. To use the C library safely, you need evidence that its implementation complies with its requirements. It is defined in the C language standard, but that is not written in the form of clear cut requirements.
To construct the test suite, we have first made the requirements from the specification explicit. We will show examples of how we have done this, the creation of test specifications and tests from the requirements, the support of all C versions from C90 up to C18, structural code coverage, and what the documents look like that show the traceable path between specification and test.
Presenters:
Andrew Banks - Technical Specialist, LDRA
Andrew Banks is a Technical Specialist at LDRA with 30 years’ experience of high-integrity embedded software development, a graduate of the University of Lancaster, and a Chartered Fellow of the British Computer Society,. Andrew is Chairman of the MISRA C Working Group, Chairman of the BSI “Software Testing” Working Group, and active in other BSI, ISO, IET and SCSC work, including the latest revision of ISO 26262.
Dr. Marcel Beemster - CTO, Solid Sands
Marcel Beemster is a professional of compiler technology with a PhD in Computer Science from the University of Amsterdam. From 1999 he was senior software engineer at ACE to manage a wide range of compiler development projects. Since early 2013, his focus shifted to the support, maintenance and development of the SuperTest compiler test and validation suite for C and C++. Marcel co-founded Solid Sands in 2014 in order to put his full attention to compiler validation and its application in safety-critical application development. He loves the C programming language, right from the first day he picked up K&R’s book, because it provides a direct connection with the machine at high performance.
Email: info@ldra.com
EMEA: +44 (0)151 649 9300
USA: +1 (855) 855 5372
INDIA: +91 80 4080 8707