¿Cómo convierte su oficina para build automation?

El título debería decirlo todo, luego puedo solidificar 2 tics más en la testing de Joel.

Implementé la automation de compilation usando ya un script de mapeo y python, y entiendo los conceptos básicos y las opciones.

Pero, ¿cómo puedo, el chico nuevo que lee los blogs, convencer a mi cohorte de su eficacia inherente?

Pida perdón, en lugar de permiso.

Haga que funcione en privado (que parece que tiene) y luego demuestre sus ventajas.

Una cosa que siempre atrae a la gente es usar la utilidad Tray de CruiseControl: a la gente le encanta cuando pueden ver, a través de la bandeja del sistema, que la construcción tuvo éxito. (esto supone que está en un entorno Windows, que CruiseControl funcionará con sus sistemas existentes, etc.)

NOTA: Si pedir perdón en lugar de permiso dará como resultado la terminación instantánea, es posible que no desee hacer lo anterior. Es posible que también desee search trabajo en otro lugar. Su experiencia puede ser diferente.

Implementar luces de construcción … hicimos algo similar con lámparas de lava y fue un gran éxito. Para las marcas de bonificación adicionales, da a cada desarrollador una luz roja sobre su escritorio y haz que se encienda la luz correcta cuando se rompa la construcción.

Toma una vieja computadora de repuesto y ponla en la esquina de tu oficina. Configúralo para build tu proyecto. Escribe un pequeño script que haga:

  1. Obtenga la última versión de todos los files.
  2. Si hubo un cambio de file, comstack
  3. Notificar si hay una falla.

Cuando tomas un descanso, póntelo compasivamente.

Considere agregar un paso para ejecutar testings unitarias también.

Si puede evitar regañar a las personas por sus errores, muy pronto la gente quedará impresionada con la fiabilidad de la construcción desde su llegada. Construir desde allí.

El truco está en pasar muy poco time de tu parte para generar mucho valor para tu equipo, sin molestar a nadie.

Configurar un autoconstructor Una vez que lo tengas construyendo y ejecutando las testings automáticamente, no importará si convences a otras personas para que guarden su propio time 🙂

Si está usando git para el control de versiones, aquí hay un generador automático que encuentra automáticamente el logging exacto que comenzó a causar que las testings fallaran: http://github.com/apenwarr/gitbuilder/

Tomaría una caja de repuesto, instalaría un server de continuous integration ( Hudson o CruiseControl en el mundo Java) y configuraría un trabajo que construye su aplicación cada vez que alguien revisa algún código.

Puede tratar de convencer a su compañero de trabajo o simplemente esperar hasta que alguien rompa la construcción. En este último caso, solo envíe el siguiente correo electrónico:

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. 

Por lo general, no demora tanto hasta que todos estén en la list

Configuraría la compilation automática como un process nocturno, de modo que cada noche capte la revisión de código más reciente, la cree y genere un informe. Ahora sabrá a primera hora todas las mañanas si la construcción está rota o no, y si es así, puede notificar al equipo. Si las comstackciones rotas son un gran problema en su proyecto, es probable que las personas empiecen a consultarlo primero para averiguar si es seguro sincronizar con el código más reciente, ya que usted será la persona que tienda a saber en cualquier momento si no la construcción está rota (por cierto, un set automatizado de testings unitarias ayuda mucho con esto también). Con un poco de suerte, las personas comenzarán a darse count de que su compilation nocturna es algo útil, y podrán simplemente configurar su informe de compilation diaria como un correo electrónico que se apaga.

James Shora tiene dos grandes enlaces:

Para hardware http://jamesshore.com/Blog/Continuous-Integration-on-a-Dollar-a-Day.html

Para "Humanware" http://jamesshore.com/Change-Diary/

(La historia de cómo lo hizo. La lectura es larga pero cambiar una organización es más difícil)

Cuando el equipo necesita la construcción de forma regular, es bastante fácil. Usted designa a un miembro del equipo (rotado periódicamente) para que haga la compilation. Si el process de compilation es lo suficientemente complicado, el equipo por sí solo searchá una forma de automatizar al less parcialmente la compilation. En el peor de los casos, tendrá que automatizar la construcción usted mismo, pero nadie estará en contra de la automation.

La demostración es lo mejor, y realmente la única manera de cambiar la opinión de alguien que es resistente a hacer las cosas de manera diferente.

Aquí mostramos cuán útiles son las comstackciones automáticas al tener la capacidad de QA de apropiarse de una construcción de luz verde directamente desde el server de compilation e instalarlo y probarlo sin ninguna dirección de parte de los desarrolladores. Pueden seguir trabajando, saben que al less pasan las testings unitarias. Ayudó a integrar las testings y el desarrollo, networkinguciendo los errores de time en el sistema.