Ho scoperto che se è possibile fornire numeri validi, è più probabile che i manager agiscano. (Se riescono a comprendere la logica e il costo / beneficio.)
IMHO, per fare un caso convincente, avresti bisogno di quanto segue per mostrare quanto è brutto:
- numero di incidenti di supporto registrati per i problemi
- tempo impiegato in ore per mantenere / aiutare il cattivo codice / fare correzioni di supporto
- costo del tempo basato sulla tariffa oraria delle persone che effettuano la manutenzione / aiuti / supporto di banda
- un modo per dimostrare quanto siano cruciali questi elementi per l'azienda
E per fare il caso del refactoring, avrai bisogno di:
- tempo stimato per refactoring e attuare ciascuna delle prime 3 di queste cose cattive
- stima dei costi di implementazione (stesse tariffe orarie utilizzate sopra)
Con questi, è possibile risparmiare tempo se il refactoring richiede molto meno del tempo di supporto per 3 incidenti per ciascuno di quei 3 articoli principali. Si può sostenere che questo breve periodo di tempo trascorso lo farà
- essere inferiore a n più incidenti di supporto
- non ci saranno più questi incidenti per queste cose (ANCORA MEGLIO!)
Tuttavia, la parte più difficile di questa vendita risponderà alla seguente domanda, dal momento che molte persone non prevedono il budget nei tempi previsti per tutto il supporto che stai facendo:
Quanto ancora dovrò aspettare che il progetto Y attuale venga completato mentre passi il tempo a lavorare su questi problemi con X ????? (nonostante gli attuali tempi di supporto, che non possono essere previsti e programmati nei grafici di Gantt)
Ciò dipende molto da quanto bene comunichi con i responsabili delle decisioni e da come comprendono la situazione.
Sicuramente penso che valga la pena farlo, quindi hai la pratica di costruire il caso con le metriche e di risparmiare tempo, anche se non lo fanno. Sfortunatamente, non tutti sono facili da convincere, nonostante i dati. IN BOCCA AL LUPO!