Découvrez pourquoi les constructeurs automobiles et les entreprises de l'industrie automobile s'orientent vers le développement de logiciels agiles et quels avantages cette approche offre.

Le secteur automobile est l'une des industries qui évoluent le plus rapidement au monde, dépensant environ 54 milliards d'euros (soit plus de 61 milliards de dollars) en recherche et développement (R&D) chaque année. 

Ce montant est justifié car les constructeurs automobiles bien établis, centrés sur l'ingénierie, tels que BMW et VW, ressentent la pression à la fois de l'intensification de la concurrence dans la Silicon Valley et de la demande croissante des consommateurs pour des véhicules intelligents, connectés et autonomes. 

Des entreprises telles que Google et Apple ont tendance à dépasser les constructeurs automobiles traditionnels dans le domaine du développement de logiciels. 

Les constructeurs automobiles traditionnels ont-ils une chance de rivaliser? 

Les constructeurs automobiles doivent réaliser qu'ils sont en pleine transformation : ils doivent changer leur façon de construire des véhicules et s'appuyer autant sur les logiciels que sur la mécanique; les véhicules utilisent plus le code que la puissance, et les constructeurs automobiles ne peuvent pas se permettre d'ignorer cela.

Trois moteurs d'une mise en œuvre agile sont l'efficience, l'efficacité et la direction.

Trois moteurs d'une mise en œuvre agile sont l'efficience, l'efficacité et la direction.

La source

Avec une approche agile, les constructeurs automobiles peuvent: 

  • Diminuer le temps de mise sur le marché
  • Augmentez la rentabilité
  • Créez des produits en fonction des besoins des clients
  • Augmenter la qualité du produit
  • Gérer la complexité

L'agilité est une caractéristique clé que les constructeurs automobiles doivent adopter à l'ère du numérique et de la connectivité , et les fabricants d'équipement d'origine (OEM) et les entreprises de niveau 1, qui fournissent des logiciels et du matériel aux OEM, devraient accorder plus d'attention au développement agile dans la R&D automobile.

Le développement Agile consiste en: 

  • Itérations de développement courtes
  • Équipes auto-organisées et interfonctionnelles
  • Commentaires des clients tout au long du flux de travail pour améliorer l'efficacité

Ces processus peuvent profiter non seulement à l'industrie automobile, mais également à d'autres industries. 

L'approche traditionnelle de développement du modèle en V du secteur automobile perd du temps

Le modèle V classique est la norme de facto dans le développement de logiciels automobiles et divise le processus de développement logiciel en deux phases principales ou verticales:

  • Gestion des exigences et du changement 
  • Gestion de données

Le côté gauche d'un modèle en V se concentre sur l'analyse des exigences, l'architecture et la conception et le développement de logiciels, tandis que le côté droit se concentre sur la vérification et la validation du produit à chaque étape du processus de développement.

Le modèle V classique est la norme de facto dans le développement de logiciels automobiles et divise le processus de développement logiciel en deux phases principales ou verticales.
La source

Le modèle en V est l'approche par défaut car il est simple, facile à utiliser et prend en charge la conception, la planification, le développement, l'intégration et la vérification. 

Ce modèle permet aux constructeurs de développer simultanément des pièces de véhicules via différents fournisseurs au moyen de normes et de spécifications figées au tout début du développement. 

Bien que cette approche offre une expérience utilisateur facile, elle n'est pas parfaite. L'un de ses principaux inconvénients est son manque d'efficacité: il peut prendre beaucoup de temps pour passer de l'étape de recherche des exigences à l'obtention d'un véritable retour d'expérience sur l'utilisation du produit. 

Les méthodologies agiles peuvent aider à réduire cette période d'attente et à améliorer l'efficacité opérationnelle du développement automobile. 

Le développement logiciel agile offre une approche flexible et dynamique du développement

Être agile, c'est être flexible et répondre efficacement aux changements quotidiens. Une approche agile aide les entreprises à réussir dans un environnement incertain et en constante évolution. 

Les méthodologies Agile comprennent: 

  • Scrum qui est un cadre de développement agile qui priorise la communication quotidienne , la réévaluation flexible des plans et les cycles de développement itératifs
  • Programmation extrême qui est un cadre qui aboutit à un logiciel de meilleure qualité
  • Cadres de développement axés sur les fonctionnalités

 Ces frameworks basent leurs valeurs sur celles décrites dans le Manifeste Agile . 

Ces valeurs incluent:

  • Interactions constantes
  • Collaboration client
  • Réponse rapide au changement
  • Rétroaction rapide
  • Un travail de qualité pour favoriser l'amélioration continue des logiciels 

L'accent mis sur la coopération entre les équipes rend le développement logiciel agile différent des autres approches. 

Les solutions évoluent grâce à une communication efficace entre les équipes transverses affectées aux projets. Et cette évolution est exigée par l'environnement dynamique.

Une approche Agile permet de gérer les cycles de développement quotidiens et hebdomadaires tout en améliorant la qualité du produit final

Le principal défi dans le domaine de l'automobile est d'intégrer et de déployer de nouvelles fonctionnalités sans compromettre la qualité et la sécurité – qui sont toutes deux extrêmement importantes pour les consommateurs.

L'un des principaux avantages de l'agilité pour l'automobile est l'intégration continue et le déploiement continu (CI / CD). Alors que l'intégration manuelle des composants logiciels est un processus coûteux et sujet aux erreurs, CI / CD automatise le processus d'intégration. 

Cela permet de réduire le temps de mise sur le marché d'un produit et d'améliorer la qualité du produit à chaque itération. 

Les développeurs de logiciels agiles sont flexibles, adaptables et productifs.

Les méthodologies agiles combinées au développement itératif permettent aux équipes d'obtenir rapidement des commentaires sur la manière dont les nouvelles fonctionnalités vont changer le produit. 

Grâce à ces commentaires, les constructeurs automobiles obtiennent des informations précieuses sur ce qui doit être avancé ou modifié afin de pouvoir déployer des fonctionnalités de manière incrémentielle pendant que le produit est encore en développement. 

Le développement agile exige une amélioration continue

Avec l'aide d'un chef de projet requis par chaque équipe agile, il est plus facile de prendre des décisions et de prioriser les demandes réelles pour produire des résultats collaboratifs. 

Il est vital d'apporter des changements dans le cadre naturel du développement; au lieu d'éviter les changements, une équipe agile les considère comme des améliorations du produit global.  

La gestion du changement assure le suivi de la portée et des changements d'un projet, en s'assurant de la conformité avec les attentes des clients et en maintenant l'équilibre entre le flux de nouvelles demandes et les résultats intermédiaires de l'avancement du développement. 

La gestion agile des demandes de changement vise à renforcer la réactivité des projets et à accélérer la mise en œuvre des changements, en minimisant le temps entre la réception des commentaires des clients et la prise de décisions en fonction de ces commentaires. 

Avec le développement agile, les cycles de rétroaction deviennent courts, avec de fréquentes communications en face à face entre les équipes client et fournisseur. 

Le développement logiciel agile et le logiciel OTA dynamique permettent des mises à jour logicielles en temps réel

Les OEM ont commencé à utiliser des mises à jour OTA (over-the-air) pour déployer le micrologiciel et mettre à jour les systèmes d'exploitation. 

Étant donné que les véhicules connectés peuvent recevoir des mises à jour logicielles OTA et envoyer des données opérationnelles à partir des systèmes embarqués, les constructeurs automobiles sont en mesure de corriger les bogues et de mettre à niveau le logiciel plus rapidement. 

De plus, les capacités prédictives des mises à jour OTA peuvent signaler les problèmes avant le lancement d'un produit, raccourcir le cycle de vie du développement logiciel et économiser du temps et de l'argent pour les OEM. 

Ce type de connectivité permet également aux constructeurs automobiles d'augmenter la qualité et les performances de leurs produits. Cette approche est exactement ce qu'est le développement logiciel agile: être flexible et évoluer rapidement. 

À la base, cette méthodologie de développement logiciel itérative transforme le domaine automobile. Il existe déjà des constructeurs automobiles qui peuvent se vanter d'utiliser l'agilité dans leur cycle de vie de développement. 

Tesla est un exemple de mise en œuvre réussie de l'agilité dans l'automobile et a refusé de suivre les longs cycles de développement qui ont longtemps été considérés comme la norme dans l'automobile. 

Au lieu d'agir comme n'importe quel autre constructeur automobile, Tesla agit davantage comme une société de logiciels. Il déploie les améliorations au fur et à mesure, en prenant régulièrement des commentaires, en cultivant de nouvelles idées, en résolvant les problèmes au stade du développement et en s'efforçant d'améliorer continuellement. 

La programmation extrême et les principes Scrum ont aidé Tesla à construire son infrastructure autour de l'acceptation des changements tels qu'ils apparaissent, apportant ainsi constamment des innovations sur le marché. 

Une telle approche itérative devrait devenir un exemple pour les constructeurs automobiles et les encourager à changer leur mentalité traditionnelle de développement de logiciels en forme de V. 

L'application du développement logiciel agile dans les entreprises automobiles peut aider à améliorer la qualité et la productivité

Dans un monde en évolution dynamique, plus une entreprise valide et apporte de nouvelles idées sur le marché rapidement, plus elle est proche du succès. 

L'automobile, comme  la conduite autonome , les communications V2X, les solutions de véhicules dans le cloud, la gestion de flotte et la mobilité accrue, exigent des réponses rapides de la part des équipementiers. 

Les constructeurs automobiles peuvent avoir des difficultés à développer de nouvelles fonctionnalités ou à les intégrer dans les architectures de véhicules existantes, mais le développement de logiciels agiles peut simplifier ce processus, le rendant plus rapide et plus efficace. 

Attendez-vous à voir une utilisation plus large des méthodologies agiles dans la production automobile dans les années à venir.