Logo de la rubrique ATELIER : Fiabilisation du code C : des outils et des méthodes afin de détecter les défauts de conception au plus tôt

ATELIER : Fiabilisation du code C : des outils et des méthodes afin de détecter les défauts de conception au plus tôt

Pour connaitre les prochaines sessions de formation sur Logiciel embarque et programmation cliquez ici.




Objectif : L’objet de cette formation, est de présenter un ensemble d’outils d’analyse de code source, permettant de capturer un maximum d’erreurs de conception pour certains avant même la compilation proprement dite.

Les défauts logiciels (bugs) lorsqu’ils arrivent lors de la phase de production, ou pire chez un client, sont préjudiciables pour l’entreprise car ils ont un impact sur le métier, et / ou sur l’image perçue de l’entreprise par le client. Ils sont souvent mal identifiés par le client (utilisateurs non techniques) et ils peuvent faire apparaître des problèmes de sécurité dans le logiciel. S’ils arrivent tard dans le cycle en V, le fait de livrer à nouveau un logiciel corrigé oblige à re-parcourir toutes les phases montantes de validation. Enfin s’ils arrivent en production, il y a de grandes chances que ces défauts soient " intermittents " avec faible occurrence et seront très ardus à reproduire en environnement maîtrisé.
Pour toutes ces raisons, plus ces défauts sont trouvés tôt dans la chaîne de conception logicielle, moins leur correction coûtera cher et plus l’impact métier sera minime.

PROGRAMME

JOUR 1

1) Introduction
Exemples de scénarios types introduisant la problématique d’un code de qualité, testé et documenté
2) Norme de codage
Principe, et exemples : Linux coding style, MISRA, google coding style
3) Outils de gestion de configuration
Principes et exemples : CVS,SVN, GiT
4) Gestion de tickets de modification / défauts
Principe, Bugzilla, Trac.
5) Interaction entre TRAC et SVN pour la revue de code
6) Les tests
Principe, Test de non régression, Automatisation des tests, Testabilité
7) Documentation de codeDoxygen

JOUR 2

8) Détection automatique d’erreur : Les outils statistiques
les warning du compilateur une aide précieuse, splin, cppcheck, Vera++
9) Les outils dynamiques
Principe et mise en œuvre des outils Valgrind
10) Les outils propriétaires
Principe et mise en œuvre des outils Purify & Sonar
11)TRAVAUX PRATIQUES
• Utilisation SVN basique
• Navigation dans le code sources avec SVN et TRAC
• Cppcheck, Valgrind
• Etude de cas sur l’automatisation de tests
• Rendre une application testable
12) Conclusion/Discussions.

INFORMATIONS PRATIQUES

Public visé et prérequis minimum  :

  • PMEs, start-up ou bureaux d’études du secteur électronique au sens large qui envisagent de développer des applications ou qui souhaitent se perfectionner.
  • Une connaissance du langage C est nécessaire pour une partie du cours

Date et lieu :

  • 21 et 22 février 2017 de 09h00 à 12h30 et de 13h30 à 17h00
  • Campus Saint Priest – Bât 3 - 161 rue Ada – 34 000 MONTPELLIER

    Les inscriptions sont closes. Pour connaitre les prochaines sessions de formation sur Logiciel embarque et programmation cliquez ici.