• Anca Onuta

Dix points à prendre en compte lors de l’estimation du développement de logiciels

Mis à jour : 9 juin 2019

Client : Combien de temps faudra-t-il pour développer cette nouvelle fonctionnalité ?

Équipe : environ 2,5 à 3 mois.

Si vous vous demandez pourquoi vous recevez ou donnez une mauvaise réponse à cette question, voici dix éléments que vous n’avez peut-être pas pris en compte dans les estimations :

  1. La courbe d’apprentissage comprend la compréhension des exigences en détail, valide les demandes du projet, mais aussi permet d’en apprendre plus sur le sujet. Un développeur n’est pas un expert en métier et doit connaître le business pour être en mesure de satisfaire les besoins des parties prenantes.

  2. Un développeur ne s’assoit pas devant son bureau et commence à coder juste en branchant son ordinateur portable. Avant d’attaquer le codage, un développeur doit définir la structure de données, les types de données, l’origine de chaque champ, ce qui se passe lorsqu’un utilisateur utilise les fonctionnalités XYZ, etc. Cette étape est appelée la conception technique.

  3. Tester. Développer ne signifie pas tester dans de nombreuses situations, mais c’est impossible de développer une fonctionnalité qui corresponde aux exigences métier si vous n’avez jamais vérifié ce que vous avez produit.

  4. Documentation. Selon le projet et sa technologie, cela peut prendre quelques minutes ou plusieurs jours.

  5. Les merges. Je pense que tout développeur a passé au moins une journée à fusionner une ancienne branche qui, en théorie, consomme au maximum une heure de travail.

  6. Déploiement dans plusieurs environnements. Le développeur code en local la plupart du temps, et il/elle a besoin de déployer les livrables sur le serveur de développement, de recette et de production. Même avec un déploiement automatisé, cela nécessite quelques efforts qui doivent être pris en compte.

  7. Correction des bugs. Tout le monde veut une solution sans défauts. On s’attend à ce que l’équipe technique aille rectifier les malformations trouvées.

  8. La refactorisation de code est le processus naturel de nettoyage et de simplification du code de certaines fonctionnalités. Cela peut améliorer les performances, accélérer le dépannage et réduire les temps de maintenance. C’est important de prendre en compte les optimisations du code dans le développement de fonctionnalités complexes.

  9. La communication. Nous devons transmettre l’information entre les membres d’équipe et nos clients, et nous aligner quotidiennement en équipe. Tout cela fait partie du processus de développement.

  10. Validation du métier. De la présentation de la fonctionnalité aux gestionnaires / responsables de produit à leur validation, le livrable répond à leurs exigences et fait partie du processus d’approbation.

Tous les points ci-dessus sont des actions nécessaires pour « développer » une fonctionnalité spécifique. La partie codage n’est qu’une portion du développement logiciel.


Comment faire pour éviter le piège de la mauvaise estimation ? Demandez-vous « combien de temps cela prendra-t-il pour METTRE EN PRODUCTION une certaine fonctionnalité ? »

Cela change l’équation.

Contact

+33638790322

Follow

©2020 by MAWIA.