Le test logiciel a longtemps été considéré comme une simple fonction support, en appui du développement et de la maintenance. Aujourd’hui les métiers du test jouent un rôle clé pour capturer et formaliser les exigences métier et mener à bon port les projets agiles. Les experts sont donc très recherchés.
A l’occasion de la 10ème édition des JFTL (Journées Françaises des Tests Logiciels, 9-10 avril 2018), nous avons fait le point sur l’évolution de la perception du test avec Olivier Denoo, président du CFTL (Comité Français des Tests logiciels), Governance Officer chez ISTQB (International Software Testing Qualifications Board) et vice-président de ps_testware SAS.
Question Atout DSI : Les métiers du test logiciel sont aujourd’hui en tension. Pourquoi certaines DSI décident-elle d’investir dans la ré-internalisation de cette fonction ?
Olivier Denoo (O.D) : Le test logiciel était confidentiel et artisanal il y a encore 10 ans. Aujourd’hui il devient difficile de trouver des testeurs car les décideurs IT ont pris conscience que tous les projets critiques doivent incorporer du test. Certaines DSI réinternalisent cette fonction en mettant en place leur propre organisation de test afin de se réapproprier ce métier et ainsi gagner en agilité. La transformation numérique de l’entreprise, qui s’appuie de plus en plus sur des méthodes telles que l’intégration continue, ou le DevOps ; l’automatisation croissante, le développement des applications mobiles, le souci de la performance sont autant de raisons qui justifient cette tendance. Toutefois, il est important de comprendre que le métier de testeur logiciel en train de se redéfinir par contagion avec les autres métiers de l’entreprise et particulièrement en lien avec les analystes métiers. Or tout ce qui touche aux métiers est prioritaire pour les projets de transformation d’entreprise.
Quels facteurs font évoluer les missions du test logiciel ?
O.D : Il y a 20 ans encore l’on faisait de l’informatique pour les informaticiens. Aujourd’hui tout un chacun dans l’entreprise, ou même en dehors, est client de l’informatique, ce qui amène de nouveaux défis pour l’expérience utilisateur (UX-User Experience).
En parallèle, les besoins sécuritaires ont également augmenté tandis que nous assistons à une complexification croissante des SI qui interconnectent les services de l’entreprises et des services de tiers afin de proposer de nouveaux services, cela pose de nouveaux défis. Par ailleurs, l’adoption croissante de cycles courts et itératifs destinés à créer de la valeur de plus en plus vite, amène à repenser les métiers du test. Au-delà des aspects techniques – intégration dans des « frameworks » outillés, automatisation – on assiste à un véritable changement de paradigme qui amène les testeurs, comme les analystes métier du reste, à amorcer un véritable virage à gauche (vers le besoin et l’anticipation des tests en amont du développement) voire à droite (vers la valeur et la recette, en combinaison avec l’exploitation). C’est là tout l’enjeu d’un métier qui se réinvente pour apporter pertinence et compétitivité.
Même en travaillant sur les caractéristiques non-fonctionnelles décrites dans ISO25010, telles que l’interopérabilité des services, il devient de plus en plus complexe de tester ces environnements interconnectés et fortement hétérogènes comme par exemple des places de marché capables de vendre une prestation de train + hôtel + voiture. La marche inéluctable de la transformation digitale, l’adoption massive de cycles de développement de plus en plus courts, permettant des changements de cap plus fréquents et mieux adaptés à une certaine incertitude à long voire à moyen terme ; les projets d’intelligence artificielle et de Big Data, incorporent eux aussi un indispensable volet « qualité logicielle ». Face à une concurrence mondialisée s’appuyant sur une offre pléthorique, cette dernière constitue un véritable élément différenciateur, un atout pour l’entreprise. Pour toutes ces raisons, les missions du test logiciel évoluent et certaines entreprises choisissent de réinternaliser ces métiers.
Comment évolue le métier de testeur logiciel ?
O.D : Les préoccupations des testeurs se cantonnent trop souvent aux simples outils et aux enjeux d’agilité. On néglige encore souvent l’humain, l’émotionnel et les modes de communication, indispensables pour insuffler ou soutenir l’innovation et le changement. Les qualités interpersonnelles, ou « soft-skills » sont en fait la clé qui permet au test logiciel de s’intégrer naturellement dans ces nouvelles équipes pluridisciplinaires, plus dynamiques et moins formalisées. Ce sont elles aussi qui permettent le changement au cœur même de la DSI.
La transition du modèle traditionnel – encore fort présent et bien intégré dans les esprits et les structures – vers des modèles plus souples, plus flexibles, moins hiérarchisés, où les compétences priment sur l’organisation et où le travail en équipe(s) est la règle absolue ne pourra s’opérer sans le développement de ces « soft skills ». C’est une révolution de l’humain qui s’amorce, conséquence directe de la révolution numérique. Nos entreprises doivent donc s’y préparer. Enfin, le développement exponentiel de la dimension sociale – au sens des GAFA – la croissance d’un certain culte de la performance et de l’immédiateté, de même que la diversification des profils-clients nécessitent une compréhension plus fine de l’utilisateur et de sa psychologie.
Les DSI ont donc aujourd’hui conscience de l’importance des tests logiciels. Mais à quoi leur conseillez-vous d’être particulièrement attentifs ?
O.D : Les DSI connaissent effectivement les tests logiciels et leur champ d’application mais il me semble important qu’ils soient sensibilisés aux tests « négatifs » ou même plus largement aux « tests de substitution », si vous me permettez le néologisme.
En effet il existe deux modes de test, le test positif, qui tend à montrer que le service « marche », et les tests négatifs, qui consistent à démontrer la résistance du service à un usage maladroit ou abusif. Typiquement, pour prendre un exemple simpliste, un champ destiné à recueillir un prénom ne devrait pas accepter de valeurs numériques ou la plupart des caractères dits spéciaux. Ne pas tester correctement et à tous les niveaux ces règles fonctionnelles ou techniques revient parfois à laisser la porte ouverte aux utilisateurs malveillants et autres hackers.
Mais au-delà de tester les paramètres de « plantage » d’un service il est aujourd’hui plus important encore de penser comment ces services pourraient être mal utilisés, en leur état actuel ou même au cours de leur évolution si nous voulons éviter de créer des sortes de Frankenstein 2.0.
Prenons tout d’abord un exemple récent qui défraye régulièrement la chronique : Facebook. De simple « trombinoscope » au départ – tout est d’ailleurs dans le nom « face book » – il devient rapidement un lieu d’échange et de rencontres. Poussé par un modèle économique, indispensable à son financement, et une recherche d’attractivité soutenue par des algorithmes complexes destinés à vous donner « toujours plus de ce que vous aimez », il évolue inéluctablement vers un système de placement d’annonces et de produits ciblés. L’évolution d’un modèle de la presse, mise à mal par le souci de l’immédiateté (il faut être toujours là où ça se passe, en direct), la « peopolisation » de tout un chacun au travers de la téléréalité puis des chaînes comme YouTube, le développement de périphériques de capture toujours plus performants à la portée de tous (nos smartphones) ; le font peu à peu glisser vers la fonction de site d’information (pour certains du moins), puis d’influenceur…jusqu’à ce que les scandales du Brexit ou de l’élection présidentielle américaine le rattrapent à grand renfort de Cambridge Analytica.
Un cas isolé ? Non, tant s’en faut. Prenons encore le cas de Strava, l’application mobile utilisée pour enregistrer des activités sportives via GPS. Par détournement de son usage elle permettait aussi de géolocaliser les bases militaires américaines en Somalie ou en Afghanistan.
La montre Apple Watch peut aussi par la mesure du rythme cardiaque de son porteur détecter des changements de rythmes indicateurs d’une grossesse, et les partager avec nos amis ; l’analyse de nos données de consommation permettent aux spécialistes du « retail » de nous proposer, parfois sans discrétion ni discernement, des produits qu’ils pensent pertinents (comme Target aux USA, qui a maladroitement annoncé la grossesse d’une mineure à ses parents en envoyant des offres publicitaires ciblées en raison de la modification de son comportement d’achat).
En conclusion, quel rôle pour le test dans une démarche d’innovation ?
O.D : A l’heure où la nouveauté est la règle et où la créativité est une question de survie, l’on n’imagine pas forcément un usage abusif ou « alternatif » de nos produits, en particulier quand ils résultent d’une évolution. Il devient pourtant de plus en plus crucial désormais d’anticiper ces situations et de s’assurer que les données personnelles soient toujours protégées. Car même à l’heure du RGPD, nos utilisateurs n’en sont pas à un paradoxe près : toute leur vie peut bien se retrouver en ligne, ils s’attendent à ce que leurs données restent dans la sphère du privé !
Parce que le test logiciel continue trop souvent encore d’être perçu comme un coût, il me semblait important de rappeler que c’est au contraire un bon investissement pour tout DSI qui se préoccupe de fournir de nouveaux services. Si cet investissement « test » n’est pas fait en amont il restera un cap incontournable en fin de projet, avec toutefois moins de maîtrise et d’impact ! … à moins que vous ne laissiez le soin à vos utilisateurs de le tester pour vous, avec toutes les conséquences que cela implique.
Commentaires0
Devenez membre pour lire ou ajouter un commentaire
Articles suggérés