Quando sviluppi un'applicazione in una squadra, non tutti in questa squadra saranno altrettanto validi sviluppatori. Alcuni saranno esperti in alcune cose e alcuni in altri e altri no.
Come team che lavora in un processo agile, di solito hai una definizione di "fatto" da seguire. Nel nostro DoD dice di non unire mai codice non documentato e test adeguati. A volte, tuttavia, una funzionalità è così importante per alcuni membri del team, quindi il codice deve essere unito senza test. A volte uno sviluppatore pigro potrebbe unirsi e chiamarlo un fine settimana.
Un'unione come questa significa che quando gli altri membri del team estraggono il codice, riceveranno il codice che potrebbe funzionare o meno e poiché non ci sono test è difficile da verificare. Può essere molto complicato attraversare quel codice per assicurarsi che funzioni prima che il membro del team possa lavorare al loro compito.
È successo in diverse occasioni che il codice che è stato commesso senza test è stato interrotto da altri membri del team senza che questi se ne accorgessero.
Quindi la mia domanda diventa:
- Come gestiresti problemi come questo?
- Indica una cattiva pianificazione piuttosto che un cattivo comportamento?
- Chi è da "incolpare" se il codice che manca di test è rotto?