Moins d’un tiers des projets d’applications se terminent dans les temps et sans dépasser le budget. C’est une statistique à laquelle il faut faire face et être réaliste à son sujet.
Ce n’est qu’en étant conscient de cette réalité que l’on va être capable de mettre en place une bonne gestion des risques.
Cela va se faire en 4 étapes :
Pour pouvoir au mieux suivre ce plan, il va falloir comprendre où peuvent apparaître les risques et comment s’en prémunir, et ainsi assurer la réussite de votre projet d'application web.
Le cahier des charges et la spécification fonctionnelle sont des éléments importants pour la réussite de vos projets. Ce n’est pas une nouvelle.
Mais si ces documents sont incomplets, les trous devront être comblés. Il faut veiller à ce que l’ajout d’éléments ne soit pas fait dans l’urgence.
L’urgence ne fait que créer plus de trous et le périmètre du projet aura tendance à dériver. Et plus le périmètre dérive, plus votre projet a de chances d’échouer.
Prenez le temps de la réflexion pour que la spécification du périmètre soit la plus complète possible. Et si jamais elle ne l’est pas, prenez le temps de la compléter.
Un périmètre sous contrôle ne peut arriver qu’avec des décisions basées sur de la recherche.
Vous n’avez probablement pas l’expertise du métier. Le faire à l’instinct est comme jouer à pile ou face. Mais ce n’est pas tout. L’instinct du responsable du métier n’est pas forcément meilleure.
Les utilisateurs vont utiliser l’application tous les jours. C’est eux qui ont des problèmes à résoudre. Car une application c’est cela, un moyen de résoudre les problèmes (de productivité par exemple) des utilisateurs.
Il est donc primordial d’interviewer les utilisateurs finaux. Ce n’est que comme ça que vous comprendrez ce qui est important ou pas. C’est la base de la recherche utilisateur. Avec les données récoltées, il devient aisé de trouver les bonnes priorités et de définir un périmètre qui ne débordera pas.
Sans un bon processus de recrutement, un bon onboarding ou une bonne culture, l’équipe technique ne sera pas capable de réaliser l’application web.
Recruter une équipe technique est une tâche ardue. Les excellents profils sont rares et chers. Mais une bonne équipe n’est pas seulement constituée d’excellents développeurs, elle est variée.
L’entente entre les membres de l’équipe n’est pas forcément simple et créer une culture du partage et de la collaboration est importante. La bonne humeur est un amplificateur de productivité !
De plus, il faudra s’assurer que chaque nouveau membre de l’équipe s’adapte bien. Par exemple, un bon onboarding est essentiel pour le rendre opérationnel rapidement.
Utiliser un système de contrôle de version pour le code n’est que la première étape pour une collaboration efficace de l’équipe sur le code. D’autres améliorations doivent être apportées :
La meilleure manière de perdre du temps à trouver des bugs est de ne pas avoir de tests automatisés.
L’écriture de ces tests sont fréquemment ignorés ou sont fait à la hâte. L’argument souvent avancé est le manque de temps de les écrire. Mais le temps perdu, ou plutôt investi, à les écrire est du temps gagné sur la maintenance dans le futur.
De plus, il faut écrire des tests pérennes. 100% de couverture de code ne veut pas dire que tous les cas d’usages de toutes les fonctions de l’application sont correctement couverts. Il est donc important de veiller à écrire des tests garantissant l’identification de problèmes futurs.
Prenons par exemple un problème de base de données. Votre application est en production et tout va bien mais plus il y a de données plus l’application est lente. Mais cette lenteur est subtile au début et pas vraiment perceptible.
Sans monitoring, l’identification du problème va intervenir seulement quand il a pris une ampleur telle que les utilisateurs ont de sérieux problèmes à utiliser l’application.
L’application est devenue trop lente et les changements du schéma de la base de données vont demander une charge de travail bien plus importante que si le problème avait été identifié plus tôt.
Identifier de manière proactive les risques permet de garder une meilleure satisfaction utilisateur et de faire face aux problèmes rencontrés avant qu’ils ne prennent une importance telle que le temps de résolution a augmenté exponentiellement.
Ces problèmes que vous pouvez rencontrer comme dans l’exemple précédent sont fréquents. Rien n’est parfait.
La mise en production ne signe pas la fin du projet. Des bugs ont pu passer outre l’assurance qualité. Et les problèmes de performances n’arrivent souvent qu’une fois que les utilisateurs réels commencent à utiliser l’application.
Cette maintenance post-production est critique pour la réussite du projet. Il est donc très important de ne pas l’oublier dans le budget.
Elle représente entre 10 et 25% du budget. Ce n’est pas une petite dépense. Et ne pas avoir de budget pour corriger un bug bloquant pour que l’application soit réellement utilisable pourra faire échouer votre projet.
En conclusion, les raisons pour lesquelles votre projet peut échouer sont nombreuses.
Il faut être conscient de ces problèmes et mettre en place une stratégie pour les avoir sous contrôle tout au long de la vie de votre projet.
L'équipe Synbioz
Libres d'être ensemble.