« Les technologues ont la responsabilité de veiller à ce que la technologie non seulement fasse ce qu’elle devrait faire, mais qu’elle ne fasse pas ce qu’elle ne devrait pas faire. »

J’écris ceci alors que les détails de la cause des accidents aériens du Boeing 737 Max commencent tout juste à apparaître dans les médias. J'espère que ceux d'entre nous impliqués dans la technologie seront stimulés par cette tragédie pour élever leur niveau de professionnalisme.

Deux avions se sont écrasés avant que ce schéma ne soit observé et la majorité de la flotte mondiale de 737 Max a été clouée au sol. Le vol d’Ethiopian Airlines il y a huit jours et celui de Lion Air en octobre se sont tous deux écrasés quelques minutes après le décollage.

Il semble qu’un système conçu pour empêcher un accident ait en fait contribué à le provoquer.

Il existe un nouveau système de sécurité dans ces avions conçu pour empêcher le décrochage (causé lorsqu'un avion se dirige vers le haut). Ce système de sécurité s'appelle MCAS et il peut automatiquement demander au système de pilote automatique de changer la trajectoire de l'avion, de se diriger vers le bas.

Un seul capteur situé dans le nez de l'avion informe le MCAS de l'angle actuel de l'avion. Ce qui a pu arriver, c'est que le capteur est tombé en panne, a donné des signaux incorrects au MCAS et cela a ensuite affecté le comportement de l'avion, avec des conséquences désastreuses.

Selon ce reportage de la BBC le logiciel MCAS sera probablement rétrogradé pour éviter que le MCAS n'ait une telle influence sur le comportement de l'avion.

Et il y aura des changements au niveau des personnes et des processus. "Il y aura également des changements dans les systèmes d'avertissement du poste de pilotage, le manuel d'utilisation de l'équipage de conduite sera mis à jour et il y aura une formation informatisée pour les pilotes."

Selon cet article dans le Seattle Times certains des risques étaient connus et il y avait peut-être une certaine pression commerciale pour accélérer les approbations de vol. Peut-être un échec de gestion ?

Que pouvons-nous en tirer ?

Explorer la cause profonde

L’utilisation réussie de n’importe quel logiciel implique une combinaison de : personnes, processus et technologie. Un tel échec pourrait très bien être dû à une combinaison d’erreurs dans chacun de ces domaines.

Personnes: Les pilotes ont-ils été formés pour détecter et gérer le cas d'un capteur défaillant informant mal le MCAS de l'angle de l'avion ? Qui aurait cru qu’un capteur défaillant pourrait être à l’origine de ce problème ? Que pourraient-ils/ont-ils fait à ce sujet ? Le risque d’un scénario d’échec était-il connu mais écarté comme étant « peu probable » ?

Processus: Les instructions d'utilisation du pilote ont-elles été adaptées pour inclure suffisamment de contrôles du bon comportement du système MCAS ? Les pilotes ont-ils été informés, ou obligés de savoir, que cela pouvait se produire et ont-ils été conseillés sur la manière de gérer cela ?

Complexité: À mesure que la technologie sur laquelle nous nous appuyons devient de plus en plus sophistiquée, elle devient également plus complexe. Dans les systèmes complexes, nous comptons sur quelques personnes seulement qui comprennent parfaitement la capacité de bout en bout de la technologie pour la construire correctement. Les gestionnaires et les utilisateurs peuvent ne pas avoir ni prendre le temps de comprendre pleinement les complexités des logiciels qu'ils utilisent ou dont ils sont responsables. Le logiciel peut normalement fonctionner comme il le devrait, mais les systèmes complexes courent un plus grand risque de ne pas fonctionner correctement dans toutes les circonstances.

Quand avez-vous entendu pour la dernière fois « nous devrions adopter une approche de test basée sur les risques » afin de raccourcir les délais ?

Technologie: C’est le domaine le plus susceptible d’être surveillé de près. La technologie était-elle en cause ? Pourquoi un système dépendant d’un seul capteur a-t-il permis de risquer la trajectoire de l’avion ? Une panne de capteur pourrait-elle être détectée ? Aurait-il dû y avoir plus d’un capteur, juste au cas où l’un d’entre eux tomberait en panne ? Pourquoi la logique du logiciel pouvait-elle s’appuyer sur une seule entrée ?

Si le scénario qui s'est produit avait été envisagé par les concepteurs de l'avion, ils auraient pu proposer que le pilote puisse contourner une telle circonstance. Dans ce cas, nous pourrions être confrontés à une défaillance des personnes et des processus, et non de la technologie.

La technologie aurait pu se comporter de manière incorrecte, c'est-à-dire non conforme aux spécifications, auquel cas il y aurait eu un échec dans la mise en œuvre et les tests.

Alternativement, la technologie aurait pu se comporter conformément aux spécifications, mais celles-ci étaient erronées. Si tel est le cas, il faut réexaminer les exigences. Les exigences étaient-elles correctes ?

Impact

L’impact sur les familles qui ont perdu des êtres chers ne peut être mesuré. En plus de perdre un membre de leur famille, ils subiront également des conséquences financières directes et indirectes. Il y a ensuite le coût pour Boeing, le retard des ventes et l'éventuelle compensation des compagnies aériennes pour la perte de revenus, la majorité de la flotte des 737 étant immobilisée. Et puis il y a le coût pour l’ensemble du secteur du transport aérien et d’autres industries connexes qui dépendent du transport aérien. L’impact de cette situation est de l’ordre de plusieurs milliards de dollars. Et cela peut être dû à une mauvaise spécification/exigence, à une erreur de codage/test, à une erreur de gestion ou à une combinaison de ces facteurs.

Conclusion

Dans une organisation bénéficiant d’une réputation de qualité aussi élevée que Boeing, il est peu probable qu’une seule discipline commette une telle erreur. Il est probable que la cause profonde de cette catastrophe ne se limite pas aux zones possibles mentionnées ci-dessus.

Ces événements devraient rappeler brutalement à toute personne impliquée dans la fourniture de technologies que leurs activités peuvent avoir de graves conséquences. À mesure que nous devenons de plus en plus dépendants de systèmes de plus en plus sophistiqués, le besoin de professionnalisme devient de plus en plus important.

Ce n'est qu'en adoptant d'excellentes normes de qualité pour tous les aspects de la gestion, des spécifications, de la conception, des tests et de la mise en œuvre (ce qui inclut les personnes et les processus) que la technologie pourra être pleinement fiable..

Les technologues ont un responsabilité professionnelle pour garantir que la technologie non seulement fait ce qu'elle doit faire, mais qu'elle ne fait pas ce qu'elle ne devrait pas faire. Cela ne peut se faire que grâce à une démarche rigoureuse de qualité.