Domanda

Il titolo dovrebbe dire tutto, quindi posso confermare altri 2 segni di spunta nel test di Joel.

Ho già implementato l'automazione della compilazione utilizzando un makefile e uno script Python e comprendo le basi e le opzioni.

Ma come posso io, il nuovo ragazzo che legge i blog, convincere i miei colleghi della sua intrinseca efficacia?

È stato utile?

Soluzione

Chiedi perdono invece del permesso.

Fallo funzionare in privato (cosa che sembra che tu abbia fatto) e poi dimostra i suoi vantaggi.

Una cosa che convince sempre le persone è l'utilizzo dell'utilità Tray di CruiseControl: le persone adorano quando possono vedere, attraverso la barra delle applicazioni, che la creazione è riuscita.(questo presuppone che tu sia in un ambiente Windows, che CruiseControl funzioni con i tuoi sistemi esistenti, ecc.)

NOTA:Se chiedere perdono invece del permesso comporterà la risoluzione immediata, potresti non voler fare quanto sopra.Potresti anche voler cercare lavoro altrove.Il tuo chilometraggio può variare.

Altri suggerimenti

Strumento costruire luci ...abbiamo fatto qualcosa di simile con le lampade lava ed è stato un grande successo.Per ulteriori punti bonus, dai a ogni sviluppatore una luce rossa sulla propria scrivania e fai accendere la luce giusta quando la build si interrompe.

Prendi un vecchio computer di riserva e mettilo nell'angolo del tuo ufficio.Configuralo per creare il tuo progetto.Scrivi un piccolo script che faccia:

  1. Ottieni l'ultima versione di tutti i file.
  2. Se è stata apportata una modifica al file, build
  3. Avvisa se si verifica un errore.

Quando ti prendi una pausa, aggiustala con compassione.

Prendi in considerazione l'aggiunta di un passaggio per eseguire anche i test unitari.

Se riesci a evitare di rimproverare le persone per i loro errori, molto presto le persone rimarranno colpite dall'affidabilità della build da quando sei arrivato.Costruisci da lì.

Il trucco è dedicare pochissimo tempo a generare molto valore per la tua squadra, senza far incazzare nessuno.

Configura un costruttore automatico.Una volta che avrai creato ed eseguito i test automaticamente, non avrà importanza se convinci altre persone a risparmiare tempo :)

Se stai utilizzando git per il controllo della versione, ecco un autobuilder che trova automaticamente l'esatto check-in che ha iniziato a causare il fallimento dei test: http://github.com/apenwarr/gitbuilder/

Prenderei una scatola di riserva, installerei un server di integrazione continua (Hudson O Regolazione automatica della velocità nel mondo Java) e imposta un lavoro che crea la tua applicazione ogni volta che qualcuno inserisce del codice.

Puoi provare a convincere il tuo collega o semplicemente aspettare che qualcuno rompa la build.In quest'ultimo caso è sufficiente inviare la seguente email:

to: all developers

Guys,

I've just noticed that I can build our software using the 
latest version because of the following error:

    ...

I you want to be notified by our continuous 
build system (attached is the mail I received when
it failed to build our application), just let me know.

Di solito non ci vuole molto tempo prima che tutti siano sulla lista

Imposterei la build automatizzata come un processo notturno in modo tale che ogni notte acquisisca la revisione del codice più recente, la crei e generi un report.Ora saprai per prima cosa ogni mattina se la build è danneggiata o meno e, in tal caso, potrai avvisare il team.Se le build non funzionanti rappresentano un grosso problema per il tuo progetto, probabilmente le persone inizieranno a venire prima da te per scoprire se è sicuro sincronizzarsi con il codice più recente, dal momento che sarai la persona che tenderà a sapere in un dato giorno se o non la build è danneggiata (a proposito, una suite automatizzata di unit test aiuta molto anche in questo).Con un po' di fortuna, le persone inizieranno a rendersi conto che la tua build notturna è una cosa utile da avere e sarai in grado di impostare il tuo report di build giornaliero come un'e-mail che viene inviata.

James Shora ha due ottimi link:

Per l'hardwarehttp://jamesshore.com/Blog/Continuous-Integration-on-a-Dollar-a-Day.html

Per "Umanità"http://jamesshore.com/Change-Diary/

(La storia di come lo ha fatto.La lettura è lunga ma cambiare organizzazione è più difficile)

Quando la build è necessaria regolarmente al team, è piuttosto semplice.Nomini un membro del team (ruotato periodicamente) per eseguire la build.Se il processo di creazione è abbastanza complicato, il team troverà da solo un modo per automatizzare almeno parzialmente la creazione.Nel peggiore dei casi, dovrai automatizzare la costruzione da solo, ma nessuno sarà contrario all'automazione.

La dimostrazione è il modo migliore, e in realtà l'unico, per cambiare la mente di chiunque sia restio a fare le cose in modo diverso.

Qui abbiamo mostrato quanto siano utili le build automatizzate dando la possibilità al QA di prendere una build con il via libera direttamente dal server di build, installarla e testarla senza alcuna indicazione da parte degli sviluppatori.Sono in grado di continuare a lavorare, sanno che almeno supera i test unitari.Ha aiutato a integrare test e sviluppo riducendo i tempi di presenza di bug nel sistema.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top