Leggendo il test di joel e su build giornalieri , una discussione con alcuni miei amici tecnologici in varie aziende ha rivelato che non hanno mai fatto build giornaliere o integrazione continua perché in base a loro:
- Le build giornaliere sono state pensate per i progetti che seguono pratiche Agile. Non funziona per il modello a cascata.
- L'integrazione continua richiedeva test automatizzati che il loro progetto di grafica di tipo OpenGL / OGRE / OSG non poteva utilizzare, perché i test apparentemente automatizzati non sono fattibili per i progetti in cui la parte grafica è in fase di (ri) sviluppo.
- Uno di loro crede che non sia necessario avere la gestione della configurazione. È sufficiente seguire la filosofia di esso, definendo piccole attività di 2-3 giorni, eseguire tutte le attività del ciclo di sviluppo per ogni attività (codice, revisione del codice, unit test, integrazione), fornire al flusso di integrazione e creare e generare il set up.
- Anche se hanno creato script per l'intera build e il processo di masterizzazione su CD, la creazione di test automatici è stata un problema perché in qualsiasi programma creato non è sempre possibile sapere quali test eseguire e come script il test case richiede troppo tempo e gli strumenti di test automatici potrebbero non supportare sempre il tipo specifico di test che potresti voler fare.
Le build giornaliere e l'integrazione continua sono davvero pratiche per progetti non agili? È inteso solo per lo sviluppo basato su test? Ed è davvero sufficiente seguire il tipo di filosofia del punto 3 (sopra)? Stavo parlando con loro del tipo di automazione basata su script passo-passo di cui parla Joel, ma non erano disposti a comprare l'idea.
p.s: ho letto le domande di questo sito sulle build quotidiane, ecc., ma credo che questa domanda sia diversa.
EDIT: il punto 3 avrebbe dovuto iniziare con "Uno di loro ritiene che non sia necessario integrare il mangaement di configurazione con gli strumenti di sviluppo"