L'ora esatta è quando il prodotto è pronto per ogni fase.
Spetta a te e al cliente definire "pronto". Questo potrebbe essere quando un determinato numero di bug è stato trovato e risolto o la quantità di documentazione è stata completata. Tutto dipende dall'applicazione e da ciò che il cliente si aspetta.
Per il momento ignorerò la fase alpha.
Una fase beta di solito è quando ritieni di avere funzioni complete per questo rilascio e richiedi feedback sui dettagli della tua applicazione. Questo è spesso visto come test pubblico, ma dipende dalla tua applicazione. Un'applicazione su piccola scala sarà beta testata da pochi utenti selezionati, un'applicazione di grandi dimensioni (come Visual Studio o Stack Overflow) sarà beta testata da chiunque e chiunque sia disposto ad aiutare.
La versione ufficiale è quando voi (e i vostri clienti / utenti) siete sicuri che il vostro prodotto possa fare il lavoro per cui è stato progettato. Potrebbe non avere tutte le sue funzioni, ma quelle implementate per questa versione saranno.
Il test alfa è più nebuloso. Significa cose diverse per persone diverse. Potresti rilasciare una versione precedente che non è completa perché hai bisogno di più feedback da parte degli utenti su un aspetto particolare. Potrebbe anche essere necessario ottenere qualcosa "là fuori" per soddisfare una domanda specifica e non può permettersi di aspettare.