Logo de la rubrique ATELIER : Fiabiliser et tester son code embarqué

ATELIER : Fiabiliser et tester son code embarqué

Du 26 au 28 juin Toulouse (31)

L’objet de cet atelier, est de présenter un ensemble de méthodes et d’outils permettant de capturer un maximum d’erreurs et de fiabiliser vos développements logiciels. Pour ce faire, la formation alternera présentations théoriques et travaux pratiques où les participants pourront mettre en œuvre immédiatement les concepts abordés sur des exemple concrets.

Mettre sur le marché un produit fiable et de qualité est une nécessité, tant du point de vue de l’image de marque de l’entreprise que de sa performance et de sa compétitivité.
Si vos équipements sont utilisés dans des applications où la qualité de service est importante, vos équipes de développement logiciel doivent maitriser un certain nombre de bonnes pratiques et d’outils pour assurer la qualité du code embarqué.
Les défauts logiciels détectés tardivement, lors de la phase de production, ou pire, après livraison chez le client, ont un coût extrêmement important pour l’entreprise. C’est à la fois un coût lié à la correction du problème mais aussi un coût en termes de détérioration de l’image d’entreprise.
Ces bugs sont souvent mal identifiés par le client (utilisateurs non techniques) et peuvent générer d’importants problèmes de sécurité dans le logiciel. Chaque bug détecté tardivement nécessite une reprise du logiciel pouvant aller jusqu’à la conception et nécessitant de parcourir à nouveau tout le cycle de codage, test unitaire, test d’intégration et de validation. Enfin s’ils arrivent en production, ou chez le client, c’est probablement lié à un défaut intermittent, avec faible occurrence donc difficile à reproduire et à corriger.
Pour toutes ces raisons, il convient de mettre en place des méthodologies, des outils et des pratiques permettant de fiabiliser au maximum, et au plus tôt, les développements logiciels dans vos produits.

INTERVENANT

Richard SALVETAT – Ingénieur logiciel embarqué

PROGRAMME

JOUR 1

• Introduction et exemples de scénarios types, introduisant la problématique d’un code de qualité, testé et documenté
• Norme de codage
• Principe et exemples : Linux coding style, MISRA, google coding style
• Outils de gestion de configuration
• Principes et exemples : CVS, SVN, GiT
• Gestion de tickets de modification / défauts. Principe, Bugzilla, Trac.
• Interaction entre TRAC et SVN pour la revue de code
• Les tests : Principe, test de non régression, automatisation des tests, testabilité
• Documentation de code avec Doxygen

JOUR 2

• Détection automatique d’erreur : Les outils de vérification statique
• Les warning du compilateur une aide précieuse, splint, cppcheck, Vera++
• Les outils dynamiques
• Principe et mise en œuvre des outils Valgrind
• Les outils propriétaires
• Principe et mise en œuvre des outils Purify & Sonar
• Utilisation SVN basique
• Navigation dans le code source avec SVN et TRAC
• Cppcheck
• Valgrind
• Etude de cas sur l’automatisation de tests
• Rendre une application testable

JOUR 3 : Journée dédiée au test

• Introduction
• Le test en tant qu’outil de vérification
- Idées reçues et exemples
- Notion de testabilité d’un logiciel ou d’un module logiciel
- Différents types de tests
* Tests unitaires : Définition et mise en pratique sur outil de test unitaire
* Tests d’intégration : Définition et stratégie
* Tests de validation : définition et mise en œuvre
* Tests d’endurance et de robustesse
• Elaboration du plan de test logiciel
• Les tests dans le plan qualité
- Impact de la testabilité sur les exigences fonctionnelles
- Impact de la testabilité sur la qualité du codage
• Cas pratique avec un projet école avec du code legacy
• Cas pratique avec prise en compte des tests dès les phases de conception
- Elaboration du plan de test
- Mise en évidence du gain qualité à écrire du code testable
- Mise en œuvre des outils de tests, tests automatiques
• Les outils connexes
- Le simulateur
- Le test unitaire et le driver
- Utilisation d’un débogueur en mode automatique

TRAVAUX PRATIQUES : Des exercices pratiques seront proposés tout au long de la formation pour conforter la compréhension des principes théoriques par la prise en main de l’outil et sensibiliser les participants à la démarche à suivre et aux questions que l’on est amené à se poser fréquemment.

INFORMATIONS PRATIQUES

Public visé et prérequis : PME, start-ups ou bureaux d’études du secteur électronique au sens large qui envisagent de monter en compétence dans la maîtrise des outils pour le développement logiciel. Notions de C/C++ et POO.

Date et lieu :
- 26 au 28 juin 2019 de 09h00 à 12h30 et de 13h30 à 17h00
- LAAS - 7 Av. du Colonel Roche - 31000 TOULOUSE

Participation aux frais :

Pour les adhérents CAP’TRONIC : prise en charge totale du coût de l’inscription dans la limite de 10 hommes/jour dans l’année d’adhésion de l’entreprise. La participation à l’atelier est donc gratuite, l’inscription sera validée à réception d’un chèque de caution de 100 €TTC par personne qui sera renvoyé au participant après l’atelier. En cas d’absence non remplacée à l’atelier, la caution sera encaissée et une facture établie.

Pour les grandes entreprises et les PME qui ne souhaitent pas adhérer : 1 650,00 € HT pour les 3 journées par personne.

Remarque : Cette formation est éligible au financement par votre Opérateur de Compétences (OPCO) hors CPF - Déclaration d’activité formation continue CAP’TRONIC enregistrée sous le numéro 82 38 05719 38 auprès du Préfet de région de Rhône-Alpes

Contact et inscription : Richard SALVETAT : 06 86 40 94 52 – Inscrivez-vous par email au plus tôt : salvetat@captronic.fr Retournez votre chèque d’inscription par courrier :
JESSICA FRANCE – 7, avenue du Colonel Roche – BP54200 – 31031 TOULOUSE Cedex