La dernière version de l'outil d'analyse logicielle statique Safery Checker de la société germanique Tasking, spécialiste des outils de développement logiciel pour l'embarqué, est résolument axée sur la preuve de l'absence d'interférence (FFI, Freedom From Iinterference), une caractéristique explicitement définie dans la norme ISO 26262, utilisée dans le monde automobile.
De fait, les calculateurs automobiles embarquent désormais de plus en plus fréquemment plusieurs fonctions applicatives avec différentes exigences de sécurité fonctionnelle. L’outil Safety Checker suit cette évolution en garantissant aux développeurs l'absence d'interférences entre plusieurs fonctions afin de soutenir une argumentation solide vis-à-vis des exigences de sûreté de fonctionnement imposées par la norme ISO 26262.
Concrètement, grâce à une analyse statistique du code reposant sur la technologie du compilateur utilisé, le Safety Checker détecte les violations de mémoire critiques et permet ainsi l'intégration de composants logiciels avec différentes exigences de sécurité dans une même zone mémoire, même si aucune MPU (Memory Protection Unit) n'est disponible, ou si la MPU ne peut pas être utilisée, par exemple pour des raisons de performances.
Sur les architectures fondées sur une MPU, Safety Checker procure également aux développeurs de logiciels une liste de violations de mémoire, ce qui réduit les efforts de débogage.
De plus, le Safety Checker surveille le respect des directives traditionnelles utilisées par les développeurs dans l’automobile, comme celles indiquées dans les documents Misra-C ou Cert-C.
Au-delà, certaines fonctionnalités importantes intégrées dans cette troisième version de Safety Checker facilitent l’emploi de l’outil. Comme l’arrivée d’une nouvelle interface utilisateur graphique qui offre la possibilité de définir des classes de sécurité et des droits d'accès, et d'attribuer des fichiers/fonctions aux classes de sécurité. Ou bien encore la possibilité d'importer des fichiers de configuration Autosar (.arxml) pour faciliter la création de fichiers de configuration et leur synchronisation avec le projet de programmation d’une ECU.
De plus, les rapports générés dans l’outil peuvent être désormais aux formats HTML, XML ou PDF et inclure des informations telles que le journal des violations d'accès, le graphique des appels de fonction, les violations Misra/Cert C et les métriques de code.
Enfin, signalons que l’outil Safety Checker est indépendant du compilateur et de l’architecture matérielle utilisés et peut être intégré dans des environnements de construction à intégration continue tels que Jenkins.