Considera il seguente scenario.
Al momento hai un set di funzioni A che desideri estendere per includere il set di funzioni B . Nella funzione vicina c'è un'alta possibilità che desideri estendere ulteriormente questo aspetto includendo il set di funzioni C .
- Opzione 1) Costo per estendere
A- >Bè minimo, ma alta manutenzione i costi. - Opzione 2) Costo per refactoring
AeBper rendere più logico il senso moderato, ma bassi costi di manutenzione.
Estensione per includere il set di funzioni C :
- Costo da estendere refactored (
A&B) - >Cè minimo, di nuovo basso costi di manutenzione. - Costo per estendere A, B - > C è alto, (sia per il refactoring che per l'estensione).
Supponendo che l'inclusione del set di funzionalità C esuli dallo scopo dello sprint corrente, come si fa a scegliere un'opzione?
Come cambia questo se l'aggiunta del set di funzioni C è di diversi (2 o più) sprint?