Passer au contenu
New Telus Digital Logo
New Telus Digital Logo
Our continuous delivery journey: one step at a time
Our continuous delivery journey: one step at a time

Au cœur de la stratégie qui sous-tend le système de conception de TELUS

Conception et contenu · 26 juil. 2018

L’équipe Stratégie numérique a évolué et grossi ses rangs. Nous sommes rapidement passés d’une équipe 50 à plus de 400 personnes pour répondre aux besoins de nos clients dans un environnement de plus en plus complexe et concurrentiel.

Ce faisant, nous avons vite constaté que les façons de faire d’une équipe de 50 personnes ne sont pas les mêmes que celles d’une équipe de 150 personnes... ou de 400! Pour évoluer efficacement et permettre aux membres de l’équipe d’offrir une expérience client exceptionnelle, nous devions nous rallier autour d’une vision commune de la réflexion axée sur les plateformes et de la conception systématique. Nous avions besoin d’un système qui nous permettrait de pivoter efficacement, de simplifier la prestation et d’accélérer nos activités par la réutilisation et l’uniformité.

À l’avenir, il sera plus important de concevoir des systèmes durables en mesure de pivoter pour s’adapter au changement, d’optimiser et de réinventer les produits, sans devoir repartir de zéro chaque fois. – Steve Bear, Fastco

L’élaboration d’un système de conception de composants d’interface utilisateur codés facilite la création et le maintien des expériences numériques : nous pouvons faire évoluer nos expériences sans devoir toujours tout recommencer. Pour qu’un système réponde adéquatement à nos besoins, il doit reposer sur la philosophie et l’esthétisme de la marque TELUS tout en donnant aux équipes autonomes les moyens de créer, de partager, de maintenir et de faire évoluer des expériences TELUS cohérentes en toute facilité.

Pour réorienter ainsi la façon de travailler d’une équipe, il faut d’abord entreprendre une réflexion et récolter un fort appui au sein de l’entreprise. Les frictions sont inévitables. Les équipes ont des méthodes de travail bien ancrées. Les concepteurs et les développeurs suivent des processus bien à eux. Les gens croient à tort que les normes et les cadres imposent des contraintes inutiles.

Les équipes doivent laisser tomber des solutions techniques désuètes et disparates pour se regrouper autour d’une plateforme commune. Il faut du temps et de l’argent pour élaborer et entretenir un système de conception et aider les équipes à l’adopter. Autrement dit, une stratégie est nécessaire pour :

  1. Découvrir les besoins des utilisateurs et les lacunes

  2. Formuler une vision et des avantages

  3. Élaborer les principes directeurs

  4. Concevoir une architecture de produits

  5. Élaborer une feuille de route des produits

  6. Former une équipe

Besoins des utilisateurs et de l’entreprise

Nous traitons notre système de conception comme un produit. Tout produit existe pour résoudre un problème utilisateur-client d’une manière qui est bénéfique pour une entreprise. Idéalement, il résout ce problème en tenant compte de la faisabilité et du maintien sur le plan technique. La première étape consiste à bien connaître nos utilisateurs et leurs besoins.

Les principaux utilisateurs de notre système de conception sont les équipes responsables de l’exécution au sein de notre entreprise qui conçoivent et élaborent des expériences numériques : les responsables de l’optimisation de la productivité, les spécialistes des données, les praticiens chevronnés de Scrum, les responsables des essais, les concepteurs et les développeurs dont les processus opérationnels sont touchés par la transition vers un système de conception. Nous les avons rencontrés, les avons écoutés et avons discuté avec eux de ce qui fonctionnait et ne fonctionnait pas. Nous voulions recueillir des points de vue et des idées pour bien définir le problème ou, mieux encore, la solution. Lorsque les utilisateurs ont l’occasion de donner leur avis et sentent qu’ils participent au développement du produit, il est plus facile d’obtenir leur appui par la suite.

Quelques thèmes sont ressortir de nos conversations avec les utilisateurs :

  1. Il est difficile de se conformer aux normes de conception et de développement les plus récentes et d’assurer l’uniformité entre les équipes.

  2. Il est difficile de partager des éléments de code et des idées de conception entre les équipes séparées sur le plan géographique et au sein de l’entreprise.

En plus de définir les besoins des utilisateurs, nous devions comprendre quels problèmes nous pouvions résoudre pour l’entreprise. Lorsqu’une entreprise compte 400 employés, ses ressources monétaires et son attention sont sollicitées de toutes parts. Pour contourner ce problème, nous devions établir un parallèle entre notre travail et les priorités d’affaires. Deux idées clés ont été mises de l’avant :

  1. Notre marque est un facteur clé de différenciation et l’offre d’une expérience client exceptionnelle en est un élément central. Comme les clients interagissent de plus en plus avec nous par l’entremise d’expériences numériques, nous devons présenter une expérience de marque cohérente, indépendamment de l’équipe, de l’unité d’affaires ou du partenaire externe qui la développe.

  2. Les équipes responsables de l’exécution ne devraient pas avoir à repartir de zéro chaque fois qu’elles entreprennent un projet. Pour les aider à suivre les cycles de marché plus courts, nous devons leur permettre de livrer le travail plus rapidement sans en sacrifier la qualité.

Vision et avantages du produit

En nous fondant sur notre compréhension des besoins des utilisateurs et de l’entreprise, nous avons entrepris de créer une vision du produit dans le but d’offrir une expérience numérique plus cohérente aux clients tout en facilitant la tâche aux membres des équipes responsables de l’exécution pour qu’elles puissent créer des expériences de marque efficaces et uniformes.

Notre vision du produit s’est donc bâtie sur l’objectif suivant : permettre aux équipes responsables de l’exécution de partager des idées et d’assurer efficacement la cohérence de la marque.

En discutant de la question, nous avons convenu que notre produit reposerait sur la philosophie et l’esthétisme de la marque TELUS. Il contiendrait des normes, un catalogue de modèles de conception et de codes réutilisables et les pratiques nécessaires pour gérer et maintenir un système de conception en constante évolution.

Les avantages sont les suivants :

  1. Pour les clients : une expérience plus uniforme dans tous les points de contact numériques.

  2. Pour l’entreprise : une représentation numérique plus forte et plus cohérente de la marque.

  3. Pour les équipes responsables de l’exécution : une plus grande facilité à concevoir des expériences numériques et à mettre en commun les apprentissages au sein d’un système partagé.

Maintenant que notre vision et nos avantages étaient mieux définis, nous pouvions commencer l’élaboration des principes directeurs et de l’architecture du produit.

Principes directeurs

Pour piloter un produit ou une idée ambitieuse au sein d’une grande entreprise, il est utile de convenir de principes directeurs dès le départ. Il est plus facile de s’aligner sur ceux-ci à l’avance plutôt que de négocier la conception, les caractéristiques, l’architecture ou la portée du produit pendant la phase de livraison.

  1. Approche ascendante – Les utilisateurs doivent adopter le système, mais ce n’est pas tout : ils doivent former une communauté qui nourrit le système d’idées de conception et de code pour en faire un recueil en constante évolution.

  2. Outil incontournable – Pour que les utilisateurs adoptent le système, faites en sort qu’il soit plus simple d’utiliser le système que d’avoir recours à d’autres « systèmes rivaux » ou à une approche plus traditionnelle et sur mesure de la conception et du développement. Pour y parvenir, il faut assurer une évolution constante du système fondée sur les commentaires des utilisateurs.

  3. Essais fréquents – Aucun produit n’est parfait dès sa première version. Surtout lorsqu’il est destiné à être adopté à plus grande échelle. Nous avons fait (et continuerons de faire) de nombreuses erreurs en cours de route. Pour y remédier, nous multiplions les essais. Il a fallu 55 essais alpha et bêta pour obtenir une version 1 stable.

  4. Éléments pertinents et fondamentaux avant tout – Beaucoup d’équipes utilisent notre système et veulent y faire des ajouts. Comme il est parfois difficile de décider quels éléments ajouter, nous nous concentrons sur les éléments fondamentaux d’une expérience numérique, y compris ceux qui servent à de multiples équipes.

  5. Simplicité et évolutivité – Un système de conception a de nombreuses composantes : des normes de conception, des éléments codés de l’interface utilisateur, un processus de contribution. Il est facile d’alourdir la conception et d’y ajouter beaucoup de complexité. À notre avis, plus il y a de critères techniques ou de règles, plus il y a de risques d’intégrer des erreurs, de fragiliser le système, de nuire à la compréhension, de compliquer la maintenance et de rendre difficile l’adaptation du système à plus grande échelle.

  6. Transparence – Lorsqu’il s’agit de récolter des appuis en vue de faire adopter un nouveau produit et une nouvelle méthode de travail, il ne faut jamais sous-estimer l’importance de la communication et de la transparence. La plupart des obstacles que nous avons rencontrés sur ce plan découlaient d’ailleurs d’un manque de communication. Nous avons passé beaucoup de temps à peaufiner les annonces de nouvelles versions et de modifications au système, créé une feuille de route, organisé des séances de rétroaction et entretenu notre canal de soutien Slack.

Architecture du produit

Même si son nom peut être trompeur, notre système de conception s’adresse autant aux développeurs qu’aux concepteurs et doit toujours apporter de la valeur à l’entreprise. Pour tenir compte de ces préoccupations, nous avons créé un cadre conceptuel fondé sur la marque et ses valeurs. À partir de là, nous avons défini et articulé les principes de conception, soit des règles générales pour aider les membres de l’équipe à créer des expériences conformes à la marque. Nous avons ensuite conçu des éléments de base tels que les types de caractères, les styles de boutons, les éléments de formulaire, etc. Une fois ces composants élémentaires définis, il ne suffisait plus que de les transformer en éléments codés de l’interface utilisateur.

Feuille de route du produit

La feuille de route de notre système de conception de produits a connu une évolution constante, mais elle comportait initialement trois phases principales.

Phase 1 – alpha : mettre l’hypothèse à l’essai

Nous avions comme premier objectif de concevoir suffisamment de fonctionnalités pour tester des modèles d’utilisation et de contribution auprès d’un petit groupe d’utilisateurs. Nous devions étoffer l’architecture technique (une bibliothèque CSS de base avec une bibliothèque de composants réactifs déployée via des modules NPM ) et l’harmoniser aux outils de conception (Sketch et InVision) afin que notre équipe de conception puisse facilement partager les fichiers et les ressources avec les équipes et les entités. Nous devions déterminer si différentes équipes pouvaient utiliser le système simultanément. Ce concept a ensuite été utilisé pour vérifier l’hypothèse selon laquelle notre système de conception central (équipes travaillant sur une plateforme partagée) était viable dans notre contexte... et il l’était! Une poignée d’équipes ont pu créer des expériences en utilisant un système de conception en constante évolution.

Phase 2 : bêta : bâtir un système stable

Lorsque nous avons eu l’assurance que nos équipes étaient en mesure de travailler avec un système de conception partagé, nous avons mis à l’essai la stabilité du système auprès d’un plus grand nombre d’utilisateurs. L’exercice s’est révélé difficile, car son architecture initiale n’était pas optimale : les styles de composants React entraient en conflit avec les classes CSS globales et nos composants d’interface utilisateur étaient remplis de classes CSS globales, ce qui limitait la capacité des équipes à intégrer le code du système dans les pages existantes. Nous avons fait un virage à 180 degrés et restructuré notre code. Nous devions absolument créer un produit stable et évolutif, et avons donc choisi de reporter de six mois la livraison de la version bêta pour optimiser l’architecture du code afin d’en améliorer la stabilité et d’en simplifier l’intégration.

Phase 3 – version 1 : mettre à niveau le système

Une fois le système conçu et suffisamment stable pour pouvoir être déployé à grande échelle, nous avons lancé la version 1 et avons tourné notre regard vers la pratique et la gouvernance du système. Nous avons accordé la priorité à l’adoption et au soutien du produit en y consacrant d’importantes ressources et des guildes, en favorisant une bonne communication et en créant des documents d’appui. Nous avons amélioré notre modèle opérationnel en établissant des processus communautaires et exerçant un leadership éclairé pour favoriser l’adoption du système de conception à l’échelle de l’entreprise. Nous avons divisé ce travail en trois volets : le produit, la pratique et la gouvernance, ce qui a aidé notre équipe à déployer le système à grande échelle.

Dans ce genre de projet, une attention particulière doit être accordée à la gestion du changement. La transparence et la communication sont essentielles, tout comme de nombreux échanges avec l’équipe pour recueillir les réactions et récolter des appuis. Nous avons notamment fait des sondages auprès des utilisateurs et organisé des tables rondes techniques, des dîners-causeries et des tournées. Nous avons montré aux utilisateurs que leurs commentaires sont pris en compte et leur avons expliqué clairement comment nous faisons le suivi des bogues et les corrigeons.

Former une équipe

Une grande partie de la stratégie de conception initiale du système et du travail technique peut être confiée à une équipe restreinte. Il suffit d’un stratège, d’un concepteur et d’un développeur... il peut même s’agir d’une seule et même personne! Cependant, nous avons vite réalisé qu’une équipe complète à temps plein serait nécessaire pour soutenir l’adoption, le développement, la maintenance et la gestion du système. Pour récolter l’appui nécessaire, nous avions besoin d’énoncer une vision convaincante, de présenter des avantages, des principes directeurs et une feuille de route, de faire état de progrès constants et d’articuler clairement comment ces éléments mis en commun permettraient de répondre aux besoins des utilisateurs et de l’entreprise.

Nous avons eu la chance de pouvoir compter sur des cadres délégués qui comprenaient la valeur de la réflexion axée sur les plateformes et qui croyaient en notre stratégie de produit. Nous avons ainsi pu aller chercher le soutien et l’investissement nécessaires à la mise sur pied d’une équipe responsable des produits liés au système de conception.

L’équipe a pris plusieurs formes, mais elle s’est stabilisée et compte maintenant :

  • Un responsable technique

  • Un stratège

  • Quatre développeurs

  • Un concepteur

Il est sans doute possible de créer et d’exploiter un système de conception sans l’aide de ressources qui s’y consacrent à temps plein, mais nous avons estimé qu’il faudrait faire d’importants compromis sur la portée et la croissance pour y parvenir. Des investissements sont nécessaires pour bâtir un système qui évolue et s’adapte efficacement; il faut donc prendre le temps de vendre l’idée aux cadres délégués en définissant les avantages, la valeur et les liens avec les priorités de l’entreprise.

Prochaines étapes pour notre équipe

Les trois premières phases du produit étant terminées, nous nous concentrons désormais sur l’amélioration de nos indicateurs de rendement clés (KPI), de notre répertoire de documents, de la communauté d’utilisateurs et des outils de conception, ainsi que sur la création de composants d’interface utilisateur en version indépendante.

Nous savons que l’équipe responsable du système finira par créer un goulot d’étranglement qui nuira à l’élargissement du système; c’est pourquoi nous avons commencé à réfléchir à des solutions. Pour que la croissance se poursuive, il faudra adopter un modèle ouvert de contribution communautaire. Nous nous penchons actuellement à ce défi et traiterons plus en détail de la communauté dans un prochain article.

La planification et le déploiement d’un système de conception à l’échelle d’une entreprise forment une expérience des plus enrichissantes. Nous avons touché aux domaines de la conception, du développement, de la stratégie de produit, de l’engagement communautaire et de la gestion du changement... tout en faisant le pont entre notre travail et la stratégie de l’entreprise. Merci à nos parrains de nous avoir fait confiance tout au long de cette aventure; ce n’est pas tous les jours que l’on vous encourage à prendre des risques et à explorer l’inconnu. Nous en avons encore beaucoup à dire sur notre parcours. Ne manquez pas de lire les prochains articles!

Si vous souhaitez en savoir davantage sur notre système de conception, visitez notre nouvelle page d’accueil

Auteur:
Neal McGann
Manager
Neal McGann works on design strategy at TELUS. He supports the creation of digital experiences that are clear and simple.