Ho lavorato in un gruppo di Microsoft che ha sviluppato l'aggiornamento all'antivirus di Microsoft Security Essentials. Per un anno abbiamo lavorato alla prossima versione del prodotto. Abbiamo avuto 6 traguardi (pietra miliare ogni due mesi). La maggior parte delle funzionalità sono state sviluppate nelle prime pietre miliari e per la seconda parte dell'anno queste caratteristiche sono state perfezionate e sono stati corretti errori. Ogni pietra miliare di una porzione più ampia di utenti (abbonati ai vari programmi alpha / beta) otterrebbe il prodotto e fornirà un feedback.
I responsabili del programma mi hanno detto che il vantaggio di questo approccio è che c'è più tempo per i potenziali utenti di dare un feedback sulle funzionalità, quindi è preferibile spedire tutte le funzionalità il prima possibile.
Tuttavia Scrum non difende questo approccio. In Scrum si consiglia di fornire un software software completamente testato e funzionante e non funzioni scadenti e fragili. Questo approccio ha vari vantaggi, ma presenta anche alcuni inconvenienti. Uno di questi è che il feedback è in ritardo.
Quindi quale approccio preferisci e perché?