La production de systèmes critiques (contrôle de véhicule, détection de fautes, drones, etc.) requiert le respect de nombreuses exigences : ils opèrent dans des environnements contraints (domaine avionique, spatial, militaire) et s’exécutent sur des plateformes embarquées ayant des ressources limitées (capacité de calcul, taille mémoire). De plus, une erreur dans leur implémentation peut avoir de lourdes conséquences (abandon d'une mission, perte de vie) si bien que leur code doit être exempt de bug. La conception de tels systèmes demande donc un processus de développement rigoureux, s'appuyant sur des technologies détectant tout potentiel vecteur d'erreur. Cet article présente une chaîne d'outils implémentant de tels systèmes au travers d'un cas pratique : l'implémentation d'un drone d'exploration avec Linux.
L'implémentation de systèmes dits « critiques » impose un processus de développement rigoureux : une erreur survenant à l'exécution peut avoir de lourdes conséquences (cas de systèmes du domaine avionique, spatial ou encore militaire). Afin de réduire les potentielles fautes lors de leur production, il est nécessaire de vérifier les exigences du système et détecter toute erreur au plus tôt dans le processus de développement.
Cet article présente une chaîne d'outils dédiée à l'implémentation de systèmes critiques : TASTE. Celle-ci est le fruit de mois de travaux de collaboration entre plusieurs partenaires dans le cadre d'un projet Européen [ASSERT]. L'idée générale consiste à capturer les aspects fonctionnels et architecturaux du système à l'aide de modèles et de générer automatiquement le code via des outils dédiés. Cette approche supprime le facteur d'erreur humain (écriture manuelle de code) et assure que les exigences décrites à haut...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première