Étude de cas · SII Group · Bombardier

Logiciel embarqué aéronautique en C++ pour Bombardier

Via SII Group, nous avons livré du logiciel embarqué en C++ pour Bombardier dans le domaine aéronautique — écrit pour un comportement déterministe sur du matériel contraint, avec des tests rigoureux, de la revue de code et de la traçabilité. Les détails du programme sont soumis à la confidentialité client.

C++du C++ moderne pour des cibles déterministes aux ressources contraintes
Embarquélogiciel aéronautique livré pour Bombardier via SII Group
Testétests unitaires et d’intégration et revue de code à chaque modification
Tracéexigences reliées au code et aux tests
Contexte

Bombardier est un grand constructeur aéronautique. En travaillant avec SII Group comme partenaire intégrateur, nous avons contribué du logiciel embarqué en C++ aux travaux d’ingénierie aéronautique de Bombardier.

Le logiciel embarqué aéronautique s’exécute sur du matériel dédié, avec des limites strictes de mémoire et de temps de calcul, et doit se comporter de la même manière à chaque fois. Il est développé au sein de grands programmes d’ingénierie, avec un partenaire intégrateur, de nombreuses équipes et des processus stricts.

Les détails des programmes, systèmes et matériels concernés sont soumis à la confidentialité client. Cette page décrit notre manière de travailler.

Le défi

  • Comportement déterministe : temps d’exécution et usage mémoire prévisibles, sans surprise à l’exécution
  • Des cibles aux ressources contraintes, où chaque allocation, copie et cycle compte
  • Une vérification exigeante : chaque exigence implémentée, testée et traçable
  • Travailler au sein d’un grand programme d’ingénierie, via un partenaire intégrateur et aux côtés de nombreuses autres équipes
  • Un code qui doit rester lisible et maintenable sur une longue durée de vie du produit

Notre ingénierie

Du C++ moderne écrit pour des cibles contraintes et déterministes, et vérifié à chaque étape.

  1. 1

    C++ moderne pour l’embarqué

    Typage fort, RAII, constexpr et templates pour détecter les erreurs dès la compilation, dans un sous-ensemble discipliné du langage adapté aux cibles embarquées.

  2. 2

    Code déterministe et sobre en ressources

    Boucles bornées, flot de contrôle prévisible, pas de coûts cachés, et usage prudent, principalement statique, de la mémoire et du temps de calcul.

  3. 3

    Développement guidé par les exigences

    Chaque fonction implémentée à partir d’exigences identifiées, avec les décisions de conception documentées.

  4. 4

    Tests rigoureux

    Tests unitaires et d’intégration écrits avec le code et exécutés systématiquement à chaque modification.

  5. 5

    Revue de code systématique

    Chaque modification relue par un pair selon les règles de codage du programme avant d’être acceptée.

  6. 6

    Traçabilité de bout en bout

    Des liens maintenus entre exigences, code et tests : chaque exigence peut être suivie jusqu’à son implémentation et sa vérification.

Travailler avec un partenaire intégrateur

Une capacité d’ingénierie livrée au sein d’un grand programme, via SII Group.

01

Dans les processus du partenaire

Nous avons suivi les processus d’ingénierie, les outils et les règles qualité de l’intégrateur et du client.

02

Des interfaces claires

Des interfaces logicielles bien définies et des livrables convenus entre équipes.

03

Des livraisons complètes

Code, tests et traçabilité livrés ensemble, prêts pour la revue.

04

Maintenabilité à long terme

Un code lisible et documenté que d’autres équipes peuvent reprendre et faire évoluer.

Pratiques d’ingénierie

  • Règles de codageDes règles de codage C++ cohérentes appliquées à toute la base de code et vérifiées en revue.
  • Discipline de vérificationRien n’est terminé tant que ce n’est pas testé, relu et tracé.
  • ConfidentialitéDétails du programme et informations client traités dans la plus stricte confidentialité.

Technologies et pratiques

Langage

C++ moderneSous-ensemble C++ orienté embarqué

Ingénierie

Développement guidé par les exigencesConception déterministeCibles aux ressources contraintes

Qualité

Tests unitaires et d’intégrationRevue de codeTraçabilité

Collaboration

Partenaire intégrateur (SII Group)Grand programme d’ingénierie

Résultats

  • Logiciel embarqué C++ livré pour Bombardier dans le domaine aéronautique, via SII Group
  • Un code conçu pour un comportement déterministe sur du matériel aux ressources contraintes
  • Tests, revue de code et traçabilité intégrés à chaque livraison
  • Une collaboration fluide au sein d’un grand programme d’ingénierie avec un partenaire intégrateur
← Projets

Parlons de vos enjeux.

Architecture, migration, IA ou montée en charge d’une équipe — présentez-nous votre situation. Nous vous répondons sous un jour ouvré.

Prendre contact