
Navblue, filiale d’Airbus spécialisée dans le développement de solutions logicielles pour l’aviation, m’a confié la responsabilité technique du Design System Kite pendant plus de 2 ans. En collaboration étroite avec un Lead UX/UI designer, j’ai conçu et fait évoluer ce système de manière collaborative, permettant à chaque projet Navblue OnBoard d’y contribuer, à l’image d’un projet open source interne.
Kite a été développé pour unifier et accélérer le développement des interfaces utilisateur à travers tous les produits Navblue. Avec plus de 100 composants utilisés par 50 développeurs répartis internationalement, ce Design System a permis d’harmoniser l’expérience utilisateur tout en réduisant significativement les temps de développement.
Cette expérience m’a énormément appris sur les Design Systems, la création d’outils pour faciliter le travail des équipes, ainsi que sur l’autonomie et la prise de décision dont j’ai bénéficié en tant que référent technique unique sur ce domaine.
Sommaire
Un Design System au service de l’excellence aéronautique
Kite est bien plus qu’une simple bibliothèque de composants : c’est un écosystème complet pensé pour répondre aux exigences critiques du domaine aéronautique. Sa conception technique reflète une approche moderne et rigoureuse, adaptée aux contraintes d’un environnement où la cohérence, la fiabilité et l’efficacité sont primordiales.
Architecture technique : Plugin QML et écosystème intégré
Kite a été architecturé comme un plugin QML hybride:
- Plugin QML hybride : Architecture optimale combinant la puissance du C++ pour les traitements complexes et la flexibilité du QML pour les interfaces utilisateur.
- Plus de 100 composants : Une bibliothèque exhaustive couvrant tous les besoins d’interface, des éléments de base aux composants métier spécialisés.
- Showcase intégré : Application autonome permettant de visualiser, tester et documenter tous les composants en temps réel, facilitant la découverte et l’adoption par les équipes.
Processus de contribution : Une approche collaborative maîtrisée
J’ai mis en place un processus de contribution structuré inspiré des meilleures pratiques open source, adapté aux contraintes d’un environnement industriel.
- Diagramme de décision : Outil de guidance pour les équipes projets, permettant d’identifier rapidement si un nouveau composant doit être créé ou si une solution existante répond au besoin.
- Definition of Done (DoD) : Critères rigoureux garantissant la qualité de chaque contribution (tests unitaires, page d’exemple, documentation).
- Processus de review double :
- Review technique : Validation de la qualité du code, des performances et de l’intégration par moi-même.
- Review design : Validation de la cohérence UX/UI par le Lead UX/UI du Design System.
- Flexibilité organisationnelle : Selon la bande passante des équipes, développement soit par l’équipe projet soit par moi-même.

Qualité et testing : Une approche rigoureuse
La fiabilité étant cruciale dans l’aéronautique, j’ai mis en place une stratégie de testing complète :
- Tests unitaires systématiques : Chaque composant dispose de ses propres tests IHM automatisés, garantissant la non-régression.
- Pages d’exemple documentées : Chaque composant est accompagné d’exemples d’utilisation concrets, facilitant l’adoption et réduisant les erreurs d’implémentation.
- Validation continue : Intégration des tests dans la chaîne CI/CD pour une validation automatique à chaque contribution.
CI/CD et déploiement : Automatisation complète
Le Design System a aussi bénéficié d’une infrastructure de déploiement automatisée :
- GitLab CI : Pipeline automatisé pour la construction, les tests et le déploiement
- Conan : Gestion des dépendances et distribution du Design System en tant que package
- Déploiement automatique du Showcase : Mise à disposition immédiate sur iPad client pour validation
- Release notes : Documentation des évolutions à chaque version
Formation et accompagnement : Une dimension internationale
Mon rôle s’est étendu bien au-delà du développement technique, incluant une forte dimension pédagogique à l’échelle internationale.
Formation technique internationale
- Formation des équipes françaises : Accompagnement régulier des équipes projets locales à l’utilisation du Design System à travers des présentations formelles et informelles, du support, etc.
- Formation QtQuick/QML internationale : Sessions en visioconférence avec les équipes canadiennes pour renforcer leurs compétences techniques
- Accompagnement des équipes indiennes : Formation en présentiel des développeurs indiens venus en France pour monter en compétence sur Mission+
- Évangélisation continue : Animation de sessions régulières pour présenter les nouveautés, bonnes pratiques et favoriser l’adoption du Design System
Défis techniques et montée en autonomie
Cette expérience m’a confronté à un défi majeur : être l’unique référent technique sur un domaine critique. Cette situation m’a contraint à développer une forte autonomie technique et des capacités de résolution de problèmes avancées, puisqu’en cas de blocage, aucun support externe n’était disponible.
Impact et adoption : De la résistance au succès
Stratégie d’adoption progressive
L’adoption du Design System ne s’est pas faite naturellement. J’ai dû développer une approche politique et pédagogique :
- Résistance initiale : Les équipes de développement n’étaient pas initialement enthousiastes à l’idée d’utiliser le Design System
- Stratégie d’influence : Mise en place d’une approche progressive combinant démonstration des bénéfices, formation et support personnalisé
- Homogénisation réussie : Adoption généralisée et harmonisation des pratiques à travers tous les projets Navblue
Résultats concrets
- 50 développeurs utilisateurs actifs du Design System
- Cohérence UX/UX garantie à travers tous les produits Navblue OnBoard
- Accélération du développement grâce à la réutilisation de composants éprouvés
- Réduction des bugs UI grâce aux composants testés et validés
- Facilitation de la maintenance par la centralisation des composants