Pour une éthique de l’informaticien : l’utilisateur au centre du système d’informations

Bouygues Telecom, pour ses 20 ans, a lancé une campagne de publicité dont le slogan est « We love technology ». Cette accroche anglophone posée, le sous-texte est un chef d’oeuvre de littérature publicitaire : « De notre premier portable à nos derniers Snapchats, de notre premier coup d’œil à nos mails le matin, à nos derniers SMS envoyés, de nos premières vidéos à succès à nos dernières séries préférées en replay… Si la technologie a pris tant de place dans nos vies, c’est sans doute parce qu’on l’aime. Et comme chez Bouygues Telecom nous partageons cette passion avec vous, nous sommes heureux grâce à notre 4G, nos forfaits et nos Box, de la rendre accessible à tous. ». Passons sobrement sur l’énumération d’outils offerts via les offres Bouygues Telecom de la première phrase et la promesse publicitaire de la dernière phrase – chez nous vous aurez les meilleurs technologies et pour pas cher, venez venez – pour nous concentrer sur le slogan et son explication.

Le rédacteur nous sauve de la crétinerie fondamentale de déclarer notre flamme à notre téléphone ou à notre modem par l’emploi de la paradoxale locution « sans doute », dont le rôle est justement d’en introduire un, de doute. Mais le plus intéressant est à mon sens l’utilisation du terme anglais « technology » et en parallèle l’emploi du singulier pour le mot français « technologie » ; dans la langue française, celui-ci a trois acceptions :

  • la science et l’étude des techniques et des outils en général
  • l’ensemble des termes propres à un art qui n’est plus très usité
  • un champ technique particulier : la technologie médicale, la technologie du moteur à explosion, etc. On parlera alors plutôt des technologies

En anglais, on n’en retrouve que deux : d’une part, le premier sens français, et d’autre part l’ensemble de toutes les techniques d’une culture ou d’un peuple. Comme Bouygues Telecom ne parle pas d’un amour immodéré de ses clients pour la science étudiant les techniques, et qu’aucun champ particulier n’est précisé, le singulier français « technologie » doit être compris comme un anglicisme signifiant les techniques et outils rassemblés en un tout. Une question vient alors immédiatement à l’esprit : en dehors de l’idée aberrante qu’on puisse aimer un ensemble aussi gigantesque et disparate, cela a-t-il un sens de considérer l’ensemble des techniques comme un tout cohérent ? Entre en scène le sociologue français Jacques Ellul.

L’avènement de la Technique

Dans « Le système technicien », en 1977, il décrivit l’émergence de la Technique – terme qui a dans son oeuvre le même sens que le « technology » anglais – comme l’ensemble des techniques précédemment séparées mais désormais unies par l’informatique. C’est une entité sans but particulier mais en perpétuel accroissement, qui structure nos modes de pensée et nos façons de vivre, mais qui ne possède ni morale, ni éthique propres. L’intuition géniale de ce grand penseur, étrangement méconnu en France, est d’avoir vu que l’informatique jouerait le rôle de cerveau organisant le travail des divers champs technologiques qui eux existent depuis qu’homo sapiens s’est différencié mais sont toujours restés dépendants d’une orchestration humaine. Les exemples récents de projets d’usines entièrement automatisées, sans aucune intervention humaine, combinant machines et intelligences artificielles faibles, prouvent qu’une version concrète de sa vision abstraite et sociologique d’un système technicien autonome se rapproche :

Je ne partage pas toutes les idées de Jacques Ellul – en particulier, il compare la Technique à un cancer de la société de par sa propension à croître apparemment sans limites et à phagocyter son hôte, mais au contraire des cellules cancéreuses qui utilisent toute leur énergie à la multiplication et ne remplissent plus leurs tâches habituelles, les éléments individuels constituant la Technique rendent globalement les services qu’on attend d’eux – mais sa réflexion me semble centrale dans la constitution d’une éthique pour le concepteur de système que je suis, sujet qui n’a jamais été abordé pendant ma formation, et qui me parait totalement absent des préoccupations quotidiennes des ingénieurs.

Ethique et conception des systèmes informatiques

La réflexion éthique sur le sens de la technique a un intérêt philosophique et sociologique évident pour l’ingénieur, dont on se demande bien pourquoi elle serait la seule profession qui ne s’interrogerait pas sur sa place et son rôle dans la société. Dans cet article, je vais tenter de démontrer qu’elle a également un intérêt plus pragmatique dans la pratique quotidienne du métier.

De fait, l’informatique est souvent définie et comprise plus comme un ensemble de technologies que comme une science, et cela a des conséquences évidentes sur la formation des informaticiens : celle-ci est la plupart du temps très technique, se concentrant sur les paradigmes de programmation et d’architecture – programmation fonctionnelle, objet, impérative ou déclarative, déploiement proche du métal ou en machine virtuelle, architecture locale ou distribuée, serveur physique ou machine virtuelle, sans même parler des langages eux-mêmes – et oubliant les aspects conceptuels du métier – ce qu’est une information, pourquoi et comment on la manipule et on la présente, et le sens qu’elle a pour les utilisateurs.

On retrouve évidemment ensuite cette tendance technoïde en entreprise, et dans l’environnement actuel où quasiment tous les postes de travail sont équipés d’ordinateurs – à part celui des chefs pour accentuer leur différence – et où tous les processus de l’entreprise font intervenir l’informatique comme un élément central, les techniciens informatiques se voient conférer un sentiment de toute puissance dont le costume IBM, le consultant SAP et le créateur de startup maître des algorithmes furent tour à tour des symboles. Bien sûr, les programmeurs ne sont pas des robots codeurs, ils ont un avis sur les interfaces utilisateur et la meilleure façon de modéliser les processus, étant eux-mêmes utilisateurs ; mais si vous faites vos applications suivant vos critères de technicien spécialiste, et que vous cédez à la tendance facile de considérer que les utilisateurs doivent s’adapter à l’outil informatique et pas l’inverse ou qu’un logiciel pas franchement adapté soit toujours meilleur que pas de logiciel du tout, il y a de bonnes chances pour que vos créations ne conviennent qu’à vous et vos collègues, qui constituez une portion assez faible du marché. La prise en compte des desiderata des utilisateurs et de leur façon d’exercer leur activité doit donc être une préoccupation constante des programmeurs.

WP_20160608_12_51_32_Pro
Mais puisque je te dis que SAP est incontournable pour ta PME artisanale !

Les préoccupations éthiques mises en avant par Jacques Ellul rejoignent cette réflexion : si nous experts techniques concevons les outils que nous créons comme devant s’imposer aux utilisateurs, voire même les transformer et les améliorer comme le promeuvent les transhumanistes – vous êtes les inadaptés, amis primates – plutôt que de les assister dans leurs tâches, son système technicien aveugle et amoral ne peut qu’advenir. Cette réflexion n’est bien entendu pas très originale ; les méthodes agiles qui se structurent depuis le début du siècle reconnaissent le rôle central de l’utilisateur, jusqu’à l’intégrer formellement dans l’équipe de développement. Cependant, un aspect du problème, au cœur de ma définition de la science informatique, me semble rester dans l’angle mort des méthodes accessibles aux programmeurs, bien qu’il soit étudié sous diverses formes par les chercheurs : la différence entre une donnée et une information, entre un chiffre brut et une donnée contextualisée.

Les frontières du système d’informations

De manière classique, on définit un programme comme des entrées, un algorithme, et des sorties, ce qui se traduit dans l’esprit des développeurs comme les entrées que je récupère de mon interface utilisateur, le traitement défini dans les spécifications, et les sorties que j’affiche dans mon interface utilisateur. En fonction des sensibilités aux questions d’ergonomie, ils travailleront plus ou moins celle de leur logiciel, mais rares sont ceux qui considéreront comme moi que l’interface utilisateur ne constitue pas la frontière du système d’informations, et c’est une source majeure d’échecs pour les projets informatiques.

En effet, quel que soit le soin apporté à l’interface utilisateur, la qualité de l’enchaînement des écrans et des contrôles de saisie, la précision et la pertinence des messages d’alerte et d’erreurs, si la modélisation du processus n’a pas pris en compte la façon dont est obtenue la donnée par l’utilisateur du système avant d’être saisie et son adéquation avec ce qui est attendu, ou encore la façon dont sera interprétée et utilisée dans le monde réel une information affichée, les risques d’erreur sont multiples et aboutissent à rendre le système inopérant voire délétère :

  • en écriture, l’utilisateur n’a pas l’information souhaitée et l’invente ou la déduit selon des règles personnelles inconnues du concepteur
  • pire, il croit de bonne foi l’avoir, mais se trompe sur ce qui est demandé
  • la précision de la donnée n’est pas adéquate, que ce soit insuffisant ou superfétatoire ; ce risque est particulièrement pregnant pour le calcul scientifique dont les optimisations dépendent lourdement de la précision attendue
  • en lecture, les mêmes écueils existent pour la réutilisation d’une information affichée, que ce soit par une incompréhension de ce qu’elle signifie ou du fonctionnement de l’algorithme qui l’a générée

La leçon à tirer de ces réflexions est que les utilisateurs font partie intégrante du système d’information ; il est donc fondamental de s’enquérir de leur façon de concevoir leur métier, les processus auxquels ils participent et les tâches qu’ils accomplissent, mais également connaitre et partager le vocabulaire qu’ils emploient pour désigner les entités appelées à être manipulées par le système. Une fois la mise en production effectuée, il faut contrôler régulièrement la façon dont le logiciel est employé, y compris en dehors de toute phase d’évolution, et pas uniquement en analysant des statistiques d’utilisation, mais également en regardant les utilisateurs s’en servir. Je me souviens au début de ma carrière d’un client allant chercher dans le code source HTML de la page une information qui était accessible en un clic à l’aide d’une fonctionnalité documentée !

Conclusion

Collègues développeurs, architectes et consultants, si la place centrale qu’occupe l’informatique dans le monde d’aujourd’hui ne suffit pas à vous convaincre de l’importance d’une réflexion sur l’éthique de votre profession et l’impact social voire anthropologique de votre industrie, j’espère vous avoir convaincu que vous en préoccuper vous permettra d’être plus efficace et apprécié de vos clients sur le long terme, et gardez à l’esprit qu’aussi imparfaits et incontrôlables qu’ils soient, en attendant l’avènement de Skynet ou d’Omnius, les utilisateurs humains sont des rouages indispensables de vos systèmes d’information que vous devez placer en tête de vos préoccupations lors de la conception, du développement et de la maintenance de vos logiciels.

3 réflexions au sujet de « Pour une éthique de l’informaticien : l’utilisateur au centre du système d’informations »

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *