J'ai constaté que si vous pouvez fournir des chiffres valides, les gestionnaires sont plus susceptibles d'agir. (S'ils peuvent comprendre la logique et le rapport coût / bénéfice.)
À mon humble avis, pour faire un cas convaincant, vous auriez besoin des éléments suivants pour montrer à quel point c'est mauvais:
- nombre d'incidents de support enregistrés pour les problèmes
- le temps passé en heures à entretenir / aider le mauvais code / à corriger les problèmes de support
- Coût du temps basé sur le taux horaire des personnes faisant la maintenance / les pansements / le support
- un moyen de démontrer à quel point ces éléments sont critiques pour l'entreprise
Et pour justifier la refactorisation, vous aurez besoin de:
- estimation du temps pour refactoriser et mettre en œuvre chacun des 3 premiers de ces mauvaises choses
- estimation des coûts de mise en œuvre (mêmes taux horaires que ceux utilisés ci-dessus)
Avec ceux-ci, vous pouvez faire des économies de temps si le refactoring prend beaucoup moins de temps que le support pour 3 incidents pour chacun de ces 3 meilleurs articles. Vous pouvez faire valoir que cette durée plus courte passera
- moins de n incidents de support supplémentaires
- il n'y aura plus de ces incidents pour ces choses (ENCORE MIEUX!)
Cependant, la partie la plus difficile de cette vente répondra à la question suivante, car beaucoup de gens ne prévoient pas de temps dans les horaires pour tout le support que vous faites:
Combien de temps devrai-je encore attendre que le projet en cours Y soit terminé pendant que vous passez du temps à travailler sur ces problèmes avec X ????? (malgré les délais de prise en charge actuels, qui ne peuvent pas être prévus et planifiés dans les diagrammes de Gantt)
Cela dépend beaucoup de la façon dont vous communiquez avec les décideurs et de la façon dont ils comprennent la situation.
Je pense définitivement que cela vaut la peine de le faire, vous obtenez donc la pratique de construire le cas avec les métriques et de vous faire gagner du temps, même si elles ne le font pas. Malheureusement, tout le monde n'est pas facile à convaincre, malgré les données. BONNE CHANCE!
Tous ces chiffres sont finalement basés sur des suppositions, dans votre cas, comparant le montant que vous pensez qu'il en coûterait de ne pas refactoriser à ce que vous pensez qu'il en coûterait pour refactoriser. Le mieux que vous puissiez faire est de montrer que vous avez une sorte de base factuelle numérique pour les suppositions, et que vous en avez une assez bonne.
Les avantages sont qu'il sera probablement efficace pour les convaincre de vous laisser refactoriser, et cela pourrait bien se passer et réduire le nombre de bugs.
Les inconvénients sont que si le temps passé à corriger les bogues ne diminue pas au moins autant que le temps passé à la refactorisation, vous ne serez probablement plus autorisé à refactoriser et vous serez probablement blâmé pour le temps "perdu" .
Les économies de temps de débogage obtenues en réduisant la complexité du projet global ou en facilitant l'ajout de fonctionnalités peuvent être trop difficiles à mesurer pour vous aider beaucoup, mais vous pouvez mentionner qu'elles existent.
la source