La certification des développeurs de logiciels est indispensable pour garantir la sécurité fonctionnelle et la qualité des produits logiciels dans l'industrie automobile.
Les certifications de développeur de logiciels ASPICE Auto indiquent aux clients si les produits d'un développeur fonctionnent selon les spécifications, si le développeur est en mesure de fournir une assistance pour ses produits et s’il est efficace.
Pendant nos études universitaires, quelques amis et moi avons eu notre première expérience de la programmation de systèmes embarqués au cours de notre projet de fin d'études. Nous avons fabriqué un réveil "Internet des objets" (IdO) qui pouvait activer sans fil des ampoules WiFi, une cafetière sans fil et des haut-parleurs Bluetooth.
Le jour de la présentation, toutes nos fonctionnalités marchaient, mais pas toujours en même temps. Heureusement pour nous, lorsque notre professeur est venu examiner notre projet, nous avons eu de la chance et tout a fonctionné parfaitement.
S'il était revenu le lendemain, je ne suis pas sûr que nous aurions eu autant de chance.
En tant que développeur de logiciels, vous savez qu'il faut d'innombrables itérations de débogage pour écrire un programme qui fonctionne selon les normes.
Il est important que vous disposiez d'un compilateur qui garantisse un support produit continu, qui puisse accéder au module de sécurité matériel (HSM) du microprocesseur prévu et dont les bibliothèques soient tenues à jour.
La certification ASPICE ou Automotive SPICE (Automotive Software Process Improvement and Capability Determination) atteste de la profondeur des connaissances d'un concepteur.
Pour que cela devienne une réalité, vous avez besoin d'un ensemble d'outils de développement fiables et axés sur l'avenir.
ASPICE est un modèle de processus accepté au niveau international qui définit les meilleures pratiques pour le développement de logiciels et de systèmes embarqués pour l'industrie automobile.
Si vous êtes ingénieur en électronique, le terme "ASPICE" peut sembler être une variante de SPICE, qui est couramment utilisé pour l'analyse des circuits. Par ailleurs, de nombreux développeurs de logiciels connaissent probablement déjà SPICE tel qu'il est défini dans les normes ISO/IEC 15504.
ASPICE est la même certification de développeur de logiciels Auto adaptée à l'industrie automobile. L'objectif d'ASPICE est de fournir des lignes directrices sur la manière d'organiser un projet, de le garder gérable et de définir le cycle de vie des logiciels automobiles.
Les certifications ASPICE sont réparties en 6 étapes ou niveaux et démontrent la capacité d'un fournisseur. Voici un bref récapitulatif la signification des différents niveaux de certification SPICE.
Pour obtenir la certification, un évaluateur doit visiter une entreprise et examiner ses produits. Pour obtenir la certification de niveau 1, l'évaluateur doit être en mesure de confirmer que ces produits ont atteint leurs objectifs de conception et qu'ils ont été minutieusement documentés.
Pour les niveaux 2 à 5, l'évaluateur s'entretient avec les employés et les responsables, et examine les processus de l'entreprise en action. Le modèle d'évaluation du processus de certification est rigoureux car il est indispensable pour répondre aux normes de conformité en matière de sécurité fonctionnelle au fur et à mesure que les systèmes ADAS sont développés.
Notre réveil IdO avait des fonctions simples, comme allumer une ampoule, mais votre logiciel traitera et réagira aux données provenant de plusieurs capteurs. Les certifications ASPICE vous donnent la certitude que le logiciel fonctionne.
Cependant, à mesure que le matériel ADAS et votre logiciel évoluent, vous voudrez que votre compilateur soit tenu à jour.
Une certification ASPICE de niveau 1 est comme une évaluation provisoire d'un évaluateur. Elle vous assurera que votre ensemble d'outils de développement fonctionnera, du moins dans un premier temps. L'équipe de mon collège aurait pu être certifiée au niveau 1.
Le logiciel de notre réveil était garanti de fonctionner pour la première alarme, mais pas nécessairement après que nous ayons ajouté une fonction de répétition.
Le niveau 1 d'ASPICE est suffisant pour que vous sachiez que votre ensemble d'outils de développement est réel, mais il ne suffit pas de construire des programmes à long terme en l'utilisant et qui soient conformes à ASPICE.
En ce qui concerne la certification des développeurs de logiciels, elle garantit que des améliorations continues sont apportées à chaque processus de développement.
Vous aimeriez que votre ensemble d'outils de développement fonctionne tout au long de la vie de votre logiciel et puisse être amélioré pour de nouveaux développements futurs.
Si des rapports de bugs vous parviennent, vous voudrez une analyse des lacunes et des correctifs pour votre ensemble d'outils de développement afin de le maintenir à jour.
Lorsque de nouveaux capteurs seront disponibles, vous voudrez un ensemble d'outils de développement capable d'intégrer de nouvelles fonctions pour ces capteurs.
Une certification de niveau 2 et plus garantira que le développeur peut à la fois créer l'ensemble d'outils et le prendre en charge. Si le développeur de votre ensemble d'outils n'a qu'une certification de niveau 1, il se peut qu'il ne soit plus là quand vous en aurez besoin. Une certification de niveau 2 est une nécessité absolue lorsqu'il s'agit d'un logiciel qui contrôle des fonctions critiques du système pour assurer la sécurité du produit.
Les certifications de niveau supérieur au niveau 2 sont bonnes, mais elles concernent davantage l'efficacité du fonctionnement d'une entreprise que les performances du logiciel.
Les niveaux 1 et 2 sont les certifications qui comptent le plus. Ils garantissent que le produit d'une entreprise fonctionnera, que l'entreprise est bien établie et qu'elle sera présente pour assurer le support de son produit.
TASKING® vient de recevoir une certification ASPICE niveau 2, qui prouve ce que les développeurs de logiciels ASPICE Auto savent depuis toujours, à savoir qu'Altium Designer fabrique et assure le support technique de bons logiciels, et qu'il n'y a pas d'exception en matière de certification de développeur de logiciels ASPICE Auto.