Afin de s’assurer d’améliorer constamment la qualité des services et produits proposés, voici quleques outils que l’on peut utiliser.
La roue de demming (PDCA)
La roue de demming (ou PDCA) est l’une méthode itérative d’amélioration de la qualité. Chaque iteration est composée de 4 phases.
- Plan : On analyse le projet, on planifie les KPI et les responsabiltés
- Do : Exécution du plan définit à la phase précédente
- Check : Évaluation des résultats, mesure des KPIs et vérification de l’avancement dans les objectifs
- Act : On identifie les points d’amélioration, les choses à corriger en se basant sur les résultats de la phase check et de l’exécution du plan
Fonctionnement dans SCRUM
Ce concept est en quelque sorte déjà présent dans SCRUM, en effet ces phases correspondent assez bien aux évènements de SCRUM :
- La phase Plan correspond au sprint planning où on planifie les choses à faire
- La phase Do correspond à l’exécution du sprint lui-même
- La phase Check correspond au sprint review où on va analyser les résultats de l’exécution
- La phase Act correspond au sprint retrospective où on va prévoir comment améliorer les choses pour le prochain sprint
La métaphore de la roue dans cette méthode est car on considère que la qualité est une pente, et la roue doit avancer vers le haut. La définition de tests avancés, l’expérience acquise et la documentation crée permet de “caler” la roue afin d’éviter qu’elle ne redescente de la pente (que la qualité ne régresse).
Le coût d’obtention de la qualité (COQ)
Le cout d’obtention de la qualité est une combinaison du coût de la qualité et du coût de la non qualité.
- Le coût de la qualité est le coût de la mise en place de la prévention des problèmes et de l’amélioration de la qualité du projet ainsi que la détection des problèmes de qualités (exemple : audits, etc)
- Le coût de la non-qualité est le coût des problèmes de qualité. Ces problèmes peuvent être internes (sans lien direct avec le client), par exemple la qualité de code rends le développement plus complexe et lent, ou externe (en lien direct avec les clients), comme par exemple une diminution de la satisfaction des clients.
Le but est donc d’équilibrer le tout. Si le projet est de trop mauvaise qualité, le cout de non-qualité sera très élevé. Par contre si on passe trop de temps et de perfectionisme sur la qualité, le cout de la qualité sera trop élevé.
Donc au début du projet on va dépenser des ressources afin d’améliorer la qualité afin de faire suffisament descendre le cout de la non-qualité.
Et comment cela s'intègre-il dans le développement ?
Ces questions de qualité dans le développement peuvent se manifester sous divers aspect :
- Qualité du code et refactoring
- Légerté et performance
- Satisfaction des utilisateur·ice·s (user testing, user interviews, etc)
- Relecture du code (pull requests, code review)
- Tests unitaires (test-driven developpement, code coverage)
- Documentation claire, complète et à jour
Fonctionnement dans SCRUM
Dans SCRUM ces questions de qualité peuvent être particulièrement intégrée dans la “Definition of Done” comme conditions afin de considérer une tâche comme terminée.