Atlassian est valorisé á 93,25 milliards de dollars.
Sans débat, ils savent comment offrir de la qualité à leurs clients et développer une entreprise SaaS. Du point de vue du Quality Engineering, leur approche logicielle est pleine d’apprentissages et de pratiques actionnables.
Atlassian a été un pionnier dans l’évolution du modèle traditionnel d’assurance qualité vers un modèle de quality assistance. Ils ont développé au fil des années leur méthodologie déclinée à travers divers contenus.
Cet article explique comment Atlassian fait de la Quality Assistance par l’analyse de son management, organisation, compétences et méthodologies. La force initiatrice de leur modèle commence avec le management.
Suivez la QE Unit pour plus de contenu exclusif sur le Quality Engineering.
Le management aligne la qualité en tant que mission organisationnelle partagée
Nous pouvons tous penser que l’assurance qualité ne suffit pas. Mais quelqu’un doit agir pour réellement changer le statu quo. Le management d’Atlassian a un véritable rôle pour permettre le passage au Quality Assistance dans trois domaines : définir la qualité, la mission partagée et ses principes.
Les gens ont besoin d’un terrain d’entente avant d’évoluer en tant que groupe. La qualité ne fait pas exception et sa subjectivité requiert une attention particulière. La Quality Assistance pousse à une inclusion de la qualité de bout en bout, nécessitant donc de s’engager avec les différents acteurs dans leur définition de la Qualité.
Atlassian définit la qualité comme permettant le « Quality at Speed ».
« Quality at Speed » est l’approche d’Atlassian en matière d’assurance qualité, et nous évoluons constamment. Cela se traduit dans les processus réels de l’équipe de développement. Nos développeurs peuvent entreprendre en toute confiance des activités de test, tandis que nos ingénieurs QA s’attaquent à des défis plus importants, plus difficiles et plus audacieux. Les équipes peuvent livrer de meilleures fonctionnalités, plus rapidement, et atteindre les objectifs d’amélioration de la qualité. »
Une vraie mission est ici définie. Aucun détail de mise en œuvre et aucun jalon n’est posé. L’objectif de la qualité est d’augmenter la performance de l’organisation. Différentes personnes contribuent de différentes manières à l’évolution des processus. En fin de compte, la qualité doit faire la différence pour accélérer la livraison de valeur.
Les équipes Atlassian itèrent ensuite selon un ensemble de principes.
La qualité en vitesse est la star à atteindre en évoluant en maturité
Atlassian ne s’attendait pas à être au top dès le premier jour. Conscients du besoin de temps pour l’amélioration continue, ils ont défini une « hiérarchie de qualité » inspirée de la pyramide de Maslow. Il clarifie le résultat final à atteindre et les étapes de maturité nécessaires pour y arriver.
Au niveau le plus, Atlassian se soucie d’exécutions standards et fiables clarifiant le besoin de fondations solides dans un premier temps. En remontant la chaîne, la valeur livrée augmente d’un point de vue interne à un point de vue externe de Quality at Speed.
Viennent ensuite les principes alignés sur leur mission et leur contribution à l’entreprise. Leur Quality Assistance est orientée sur les résultats de l’équipe de développement. Il n’y a pas d’accent sur une perspective interne comme le nombre de bogues ou leur temps de résolution.
Les premiers principes de Quality at Speed découlent de leur mission. On retrouve alors le principe d’indépendance éliminant clairement un goulot d’étranglement potentiel d’une équipe d’Assurance Qualité. Enfin, ils attendent de leurs équipes qu’elles adaptent les pratiques qualité au contexte avec l’expérimentation. Nous pouvons noter que leur approche est axée sur les résultats et les données, s’attendant à « valider les résultats de ces changements ».
Le bon contexte est alors requis.
L’organisation fait pivoter les rôles des acteurs sur la mission partagée
Leur mission et leurs principes définissent un cadre d’exécution clair. Mais la Quality Assistance ne consiste pas à ajouter des rôles d’assurance qualité dans chaque équipe pour les « assister ». Cela nécessite de changer les interactions des acteurs existants en tirant parti de la conception organisationnelle pour sortir du silo inferno.
Les rôles d’assurance qualité consistent généralement à « garantir la qualité du produit » avec évaluations, tests ou une gestion des bogues. Le modèle de Quality Assistance a changé les rôles d’assurance qualité en quality engineers avec un rôle différent. Leur objectif n’est pas de gérer la qualité pour les autres ; ils doivent « améliorer l’équipe de développement » dans trois domaines : mentoring, suivi et éducation.
Par conséquent, les ingénieurs logiciels s’attaquent en premier lieu à la qualité avec des feedback loops plus rapides et une certaine autonomie. Cela évite d’augmenter la taille des équipes en Quality Assistance. Par exemple, Atlassian avait 10 product managers, 90 ingénieurs logiciels et 7 ingénieurs QA pour JIRA.
Par conséquent, les ingénieurs qualité disposent de plus de temps pour accroître leur impact en :
- Donnant aux développeurs les moyens de tester en toute confiance en fournissant formation, outils et environnements.
- Garder un œil sur les résultats de l’équipe et identifier où des améliorations peuvent être apportées.
- Aider l’équipe à produire des logiciels de haute qualité en premier lieu, efficacement.
- Anticiper et prévenir les problèmes avant qu’ils ne deviennent plus serieux.
Ce modèle d’organisation a permis de répandre la Quality Assistance via la culture.
La culture se concentre sur une qualité intégrée plutôt que sur des tests
La culture est le meilleur mécanisme de coordination humaine à l’échelle. Une mission, des codes et des croyances partagées permettent une diffusion fiable et reproductible de pratiques. Cela explique l’importance de la culture dans les entreprises de dimension ou en hypercroissance. Pour Atlassian, c’était essentiel pour la Quality Assistance.
La mission organisationnelle de Quality at Speed a été le premier élément constitutif. Ensuite, ils ont dû changer la croyance de l’assurance qualité responsable de la « qualité » et des « tests ». Atlassian a diffusé les nouveaux codes à travers divers supports de communication au sein de l’organisation. Au fil du temps, un changement de paradigme s’opère en atteignant le point de bascule.
Les manières de travailler devaient aussi évoluer. En tant qu’humains, nous avons tendance à rester dans notre zone de confort, encore plus au sein d’un groupe. Atlassian a dû investir de manière significative pour indiquer explicitement comment faire de la qualité différemment. Le premier changement consistait à supprimer l’association mixé de « les tests, c’est la qualité ». Par exemple, ils ont clairement indiqué comment faire moins de tests :
Avant de passer au Quoi, le Qui est essentiel à la transformation.
Les compétences sont alignées pour fournir de manière collaborative le Quality at Speed
Une autre responsabilité de la direction est d’aligner les compétences nécessaires pour la Quality Assistance Les difficultés sont de composer avec celles existantes tout en les améliorant par la formation et le recrutement.
Atlassian définit les compétences de Quality Engineer suivantes pour mettre en œuvre efficacement la Quality Assistance :
- Expertise en qualité
- Pédagogie
- Identification des problèmes
- Influence par les données
- Inspiration
- Facilitation
Expertise de tests et pédagogie
Les quality engineers doivent permettre aux équipes d’ingénierie de garantir la qualité. Une expertise à la fois en matière de qualité et d’enseignement est requise pour transférer efficacement les connaissances aux autres équipes. L’une des compétences peut être complétée par des coachs formels ou une formation lorsqu’ils ne possèdent pas ces compétences.
Identifier les problèmes et influencer
La perspective plus large acquise par les ingénieurs qualité sert à résoudre des problèmes de qualité plus complexes. Ils ont donc besoin de compétences en gestion de problèmes pour définir correctement les problèmes en premier lieu. Ensuite, ils ont besoin d’influence pour conduire la résolution de problèmes avec les différentes équipes.
Inspirer et faciliter
La qualité nécessite une forte coordination de la contribution locale à la création de valeur globale. Les ingénieurs qualité doivent être les leaders de la qualité, inspirant les équipes et en les aidant en permanence sur le terrain. Leurs contributions sont essentielles dans la transition vers la Quality Assistance pour progressivement déplacer la qualité vers les équipes.
Ensuite, l’enjeu est de pérenniser les changements initiés.
Les processus d’élaboration et de livraison de logiciels incluent la Qualité
La meilleure façon de changer les habitudes de travail est d’agir sur les processus. En changeant le cours d’actions systématiques, on finit par affecter la coordination globale des activités. Pour Atlassian, les processus fondamentaux à faire évoluer étaient ceux de conception et de livraison de logiciels.
Atlassian n’a pas défini de modèle unique. Un modèle cible lean est complété par une série de variantes pour s’adapter à la maturité ou au contexte de l’équipe. Par exemple, un processus de transition contient plus d’étapes avec des interactions et des étapes plus simples.
Nous pouvons noter les processus de base de la Quality Assistance présents dans les deux modèles tels que les Testing Notes ou la QA Demo. Par exemple, le QA kick-off disparaît lorsque l’équipe est en mesure d’effectuer l’évaluation de la qualité en autonomie.
Au fur et à mesure que l’équipe devient plus confiante dans sa capacité de qualité, elle peut adapter et même supprimer certaines passerelles. Les processus suivants aident vraiment à mettre en œuvre des actions de qualité systématiques :
- Blitz Test : de nombreuses personnes effectuant une session de test limitée dans le temps
- QA kickoffs : peer pour réfléchir aux tests avant le début du code
- Dogfooding : utilisation interne des nouvelles fonctionnalités avant qu’elles ne soient en production
- Developer on Test : bon pour initier les développeurs à la responsabilité des tests
Il reste à mesurer l’amélioration de la valeur.
La mesure continue des résultats favorise l’amélioration continue
Être occupé n’est pas synonyme de résultats. La mesure continue des outputs aux outcomes permet de suivre la réelle création de valeur. Atlassian le fait par le biais d’exercices collaboratifs en Quality Assistance : NPS et Quality Health Monitor (QHM).
Le Net Promoter Score (NPS) est la première mesure de la Quality Assistance. Les équipes sont invitées à classer sur une échelle de 0 à 10 leur probabilité de recommander. Les promoteurs sont entre 8 et 10, tandis que les détracteurs entre 0 et 6, laissant les neutres à 7. Le NPS donne une bonne idée de la perception dans l’organisation. Il est ensuite utilisé pour piloter des plans d’action pour remédier aux mauvais scores et maintenir les bons.
Le Quality Health Monitor est un exercice collaboratif semblable à une rétrospective silencieuse. Un animateur externe anime un groupe de 8 personnes maximum pour noter leurs qualités dans le temps. L’atelier favorise les interactions, la résolution de problèmes et l’amélioration continue de la qualité en équipe unie.
Les deux mesures sont essentielles pour maintenir la propriété de la qualité et l’attention de l’équipe sur la création de valeur globale.
Atlassian s’appuie sur Quality Assistance pour une croissance soutenue
Quality Assistance est une véritable transformation de l’organisation. Atlassian a complètement fait évoluer la manière de créer et de livrer des logiciels de qualité. C’est maintenant devenu une véritable capacité de différenciation pour continuer à fournir la qualité à la vitesse.
Les changements ne se sont pas produits du jour au lendemain. A travers le référentiel MAMOS Quality Engineering, nous constatons qu’il a fallu du temps pour changer l’Organisation, les Skills et les Methods avec le Management.
Tout aussi important que le niveau qu’ils ont atteint, l’entreprise est en mesure de maintenir en permanence à l’échelle ses pratiques de qualité. Ils démontrent l’importance de l’adaptation continue et de la culture pour se maintenir au high-standard.
Atlassian inspire diverses organisations à mettre en œuvre le Quality Assistance. En accord avec leurs principes, l’adaptation au contexte reste la clé. Vous pouvez trouver deux exemples concrets chez Manomano et OpenClassrooms dans cet article.
Êtes-vous prêt à adapter votre organisation au Quality Assistance ?
Références
Atlassian, 6 compétences essentielles pour les ingénieurs d’assistance qualité
Atlassian, Inside Atlassian QA
Atlassian, Assurance qualité versus Assistance qualité
Atlassian, Quality Health Monitor
Atlassian, Software QA Skills
Infosupport, Comment Atlassian est passé de l’assurance qualité à l’assistance qualité
Mark Hrynczak, The L’avenir de l’assurance qualité chez Atlassian – Atlassian Summit 2016
Mark Hrynczak, L’avenir de l’assurance qualité chez Atlassian
Prezi, Atlassian Quality Assistance
Penny Wyatt, Quality at Speed, How JIRA Does QA