Plática en la reunión de GUN

2009 Septiembre 25
por Dx

En la entrada anterior, les avisaba de la plática de Scrum para la reunión del Grupo de Usuarios NET (GUN) celebrada este jueves 24 de septiembre.

Hubo mucha audiencia, la plática ofrecida sobre Iron Python fue muy interesante, y con la que yo ofrecí sobre Scrum, se hizo mucha polémica.

Se me hizo muy interesante que las personas más convencidas con el cambio de paradigma, eran personas que juegan el papel de “clientes”. Las personas más desconfiadas eran personas que juegan el papel de “consultores”.

En mi opinión es una señal de que nuestros clientes ya están más convencidos que la manera de trabajar actual (waterfall) no funciona o les ha traído muchos problemas. Y pues ellos son los que pagan los sistemas, son los que se quedan con lo que les construímos, que dan mantenimiento o terminan hasta en demandas con las consultoras.

Es claro para todos que el empezar a trabajar de manera ágil es difícil. Se requiere de mucha disciplina y sobre todo, el equipo debe “creer” y tener confianza en Scrum y las técnicas ágiles. Si como consultores no podemos “creérnosla”, está mucho más difícil poder transmitir esa confianza al cliente.

La enseñanza que me llevo: el cliente está preparado a escuchar nuevas formas de trabajo, solo hay que mostrarles las ventajas y desventajas. Pero como todo, la solución empieza primero en uno mismo, estudiando y siendo más disciplinados.

Gracias a los asistentes! Pronto subo fotos de la reunión.

Plática de Scrum

2009 Septiembre 24
por Dx

Hola!

Este jueves 24 de septiembre, ofreceré una plática sobre Scrum en la reunión de la comunidad GUN (Grupo de usuarios NET).

La cita es en el restaurante Daiki, desde las 7pm. Es en la colonia Condesa, en Tamaulipas 47.

Más información del evento aquí

Ojalá puedan asistir!

Presentación en 7ma reunión SpringHispano

2009 Junio 16
por Dx

La comunidad SpringHispano invitó a Sergio Acosta a ofrecer una plática de Scrum el pasado 13 de junio.

3628769425_c5993b9b0c_b.jpg

3629590946_f50c640336.jpg

Para todos los que no hayan podido asistir, les dejo aquí los slides de la presentación, para que se animen a la que sigue :)

Update: Chequen el excelente resumen de Miguel aquí.

¿Los developers tienen sentimientos?

2009 Junio 14
por Dx

Recordé a mi amigo Javier Castañón que comentó eso en broma (creo) en el curso de certificación de Scrum Master.

Y apenas leía en el libro Agile Retrospectives, que al hacer una retrospectiva es importante que los participantes comenten los problemas que han encontrado en la iteración que acaba de terminar, incluyendo sus sentimientos.

Bueno, todos sabemos que las metodologías ágiles están más orientadas a las personas que a los procesos. Pero qué ¿significa eso? El problema, a mi manera de pensar, es el mismo que para muchas áreas. Olvidamos que somos más que maquinitas diseñadas para sacar y sacar trabajo. Programar y programar. Y precisamente como programadores, nos gusta pensar en que así somos, máquinas letales de código, que producimos código perfecto. Y somos tan eficaces que, ¿por qué no? pensamos que no necesitamos ni testear (claro ese es tema de otro post, en tal vez otro blog).

Por eso, un Scrum Master debe tener capacidades sensoriales especiales. Debe poder ser el hombro de consuelo, el terapeuta, el amigo. Y para ello debe ganarse la confianza de su equipo. Después de todo, este líder servil debe ayudar a las personas a crecer.

Muchos problemas que surgen en los equipos de trabajo tienen que ver más por los momentos emocionales que tienen cada uno de sus miembros. Tal vez una persona esté en su nubecita de smart-ass y tiene secuestrada la creatividad del equipo. Tal vez una persona se está sintiendo relegada o que todos se lo agarran de su puerquito. Y entonces deja de participar o su productividad baja, no se siente parte importante. A lo mejor alguien tiene problemas en su familia o no sé.

Es ahí donde el equipo deja de ser equipo y solo es una bola de gente, jalando cada quien para su lado. Es difícil, y sobre todo en un área llena de ingenieros, poder hacer clic con las personas y encontrar las fuentes de los problemas.

En el libro Agile Retrospectives, da algunas ideas de cómo hacer que las personas hablen de lo que sienten sin tener que decir “The F Word” (feelings), que siempre bloquea a los duros ingenieros, les pongo unas preguntas:

When were you excited to come to work? When was coming to work “just a job”? When did you dread coming to work?
How was it to be on this iteration?
When were you [fill in an emotion word (mad, sad, surprised)]?

Trabajemos en nuestra parte empatizadora con la gente y seguro vamos a encontrar que muchas veces la raíz de los problemas no es que :“el cliente no sabe lo que quiere” :)

Scrum y disciplina

2009 Mayo 27
por Dx

Utilizar metodologías ágiles no significa que sea más sencillo. Aunque la responsabilidad es más compartida en el equipo, no significa que sea una total anarquía. El equipo de trabajo debería estar formado por personas autoadministrables, automotivables y tal vez hasta autosuficientes.
De hecho creo que Scrum exige más disciplina que las metodologías tradicionales.
Cuando nosotros hemos utilizado Scrum, los errores comunes con los que nos hemos topado son los siguientes:

Los scrum meetings no se realizan a la misma hora, y hay días en que se pasan por alto. Las reuniones diarias en el equipo son como la banda de transmisión de los motores! Generan la retroalimentación a los miembros del equipo, y cada uno de ellos se presiona para cumplir sus metas. Además ayudan a la comunicación de problemas que en equipo es más fácil resolver.

Asignarse más de una tarea a la vez. A veces uno se siente demasiado capaz, así que empieza con una tarea, pero se desvía a otra, termina haciendo un spike y… diablos! Llega el scrum meeting y no podemos mostrar ninguna tarea terminada. Mentalmente sientes más presión para el siguiente día, y se va complicando que las termines todas. Por otro lado, si alguien quiere comenzar una tarea tal vez tienes tomadas muchas y no permites avanzar a los demás. Haz disciplina de comenzar una sola tarea y no tomar otra hasta terminar la primera**.

Reportar equivocadamente horas de trabajo en una tarea. A veces perdemos la cuenta, a veces era tan sencilla la tarea que nos dio flojera y nos tardamos el doble, pero cómo decir eso? En el equipo de trabajo se debe fomentar a decir la verdad. El tiempo estimado en una tarea vs. el tiempo real que se ocupó nos ayudan a calcular la velocidad de cada miembro del equipo, y mientras más certera pueda ser esa velocidad, en las siguientes iteraciones se tendrán mejores estimaciones y resultados.

Estas son los puntos en los que hay que poner mucha disciplina. Lo bueno de la disciplina es que con el tiempo también se convierte en hábito.

*Que el equipo sea autoadministrable, automotivable y autosuficiente no es absoluto, pero sí influye mucho la experiencia de los colaboradores.

**En el pizarrón construido por Sergio, existe una zona de tareas en pausa, que utilizamos cuando es necesario realizar otra tarea antes. Yo pondría como regla que solo puede existir a lo más una tarea en pausa por miembro del equipo.

Discuss :)

Construye tu propio Scrum dashboard

2009 Mayo 5
por Sergio Acosta

El Scrum Dashboard

En mi opinión, uno de los elementos más críticos para el éxito de Scrum es tener un dashboard apropiado, de buen tamaño y en una pared cercana al equipo de trabajo:

El Scrum Dashboard

El dashboard de mi equipo

Existen muchos lugares en donde un principiante de Scrum puede leer acerca de cómo trabajar con el dashboard para llevar el seguimiento de las actividades del Sprint. Uno de los mejores recursos que yo encontré es el libro (disponible gratis en línea) de Scrum and XP from the trenches de Henrik Kniberg.

Sin embargo, un tema menos frecuente en la literatura de Scrum es:

“¿De dónde saco un Dashboard?, ¿Cómo lo construyo?”

En este post comparto mi experiencia de haber construido el dashboard para mi equipo, con la esperanza de que les sirva a otras personas que estén incursionando en Scrum.

¿Por que no simplemente usar software?

A pesar de que existen muchas aplicaciones con las que puedes tener un dashboard ‘virtual‘, creo que para un equipo que comienza a experimentar Scrum no hay como tener el dashboard físicamente en la pared.

Hay algo acerca de poder ver el dashboard ahí ‘en persona‘ que te da una sensación de estar realmente haciendo Scrum, más en contexto de lo que estás haciendo y consciente del avance del sprint.

Da mucha satisfacción levantarte de tu escritorio a mover una tarea a la zona de ‘terminadas‘, además de ser buen pretexto para estirar las piernas e ir de paso por un cafecín.

Además, es muy útil para el Scrum Master o algún chicken el entrar al cuarto y ver de un solo vistazo, ahí muy prominente, el avance en la pared.

Supongo que después de algún tiempo de estar haciendo Scrum te acostumbras bien al proceso de tal manera que una herramienta de Software puede sustituir al dashboard real y darte características más avanzadas.

Dashboard Virtual

El dashboard virtual de ScrumDesk

El Dashboard típico: papel y post-its

Uno de los enfoques más frecuentes para armar el dashboard es usar hojas de papel bond (tipo rotafolio) pegadas en la pared con cinta adhesiva y usar Post-Its para representar las tareas del Sprint.

Como ejemplo, aquí hay algunas fotos: 3 exemples de tableaux Scrum, proporcionadas por Dimitri Baeli (según entiendo con mis casi nulos conocimientos de francés).

paperdashboard.jpeg

Ejemplo de un dashboard de papel y Post-Its

Desventajas

Este enfoque tradicional tiene algunas desventajas:

  • Cada Sprint hay que despegar las hojas de rotafolio de la pared y pegar hojas nuevas, a menos que el equipo sea sumamente cuidadoso de que no se maltraten.
  • En mi opinión, los Post-It son estúpidamente caros para ser simples cuadritos de papel. Por lo menos mucho mas caros que recortes de papel del mismo tamaño.
  • Es probable que después de algún tiempo los Post-It comiencen a perder su adhesivo y acabes un día buscando tus tareas en el piso (recuerda que los vas a estar moviendo en el dashboard).

    Tal vez suene exagerado, pero puede ser un factor de ansiedad estar con la duda de si todas las tareas están en el pizarrón o alguna ya se cayó, se voló con el aire, y tal vez alguien por error la tiró a la basura ó está debajo de algún mueble.

  • Es difícil meter un Post-It a la impresora. Así que las tareas tienen que ser escritas en ellos manualmente.

Por todo esto, en mi equipo decidimos usar un pizarrón de corcho con el que pudiéramos:

  • Usar tachuelas para poner cualquier tipo de papel
  • Reducir el riesgo de que se caigan
  • Poder moverlos fácilmente cuantas veces queramos sin temor a que se desgaste el pegamento del Post-It.
  • Simplemente luce mejor

Construyendo tu propio dashboard de corcho

¿Por qué no simplemente comprar uno?

Naturalmente nuestro primer intento consistió en ir a comprar un pizarrón de corcho.

En las papelerías grandes son fáciles de encontrar, pero no necesariamente son ideales para Scrum.

Por ejemplo, en OfficeMax y OfficeDepot un pizarrón de corcho cuesta desde $300 a $500 pesos y los mas grandes que encontramos son de mas o menos 90cm x 60cm.

Un pizarrón de ese tamaño es perfecto para tener pegado el número de la pizzería y la lista de compras del super, pero necesitarías unos dos o cuatro de esos para cubrir decentemente una pared pequeña y tener suficiente espacio para las varias docenas de papelitos que vas a estar manejando con Scrum.

Otra desventaja que vimos de esos pizarrones, es que el corcho que tienen es como de 2mm de grosor!, con un fondo de cartón grueso (como aglomerado de fibra de cartón): Sacas mal una tachuela y ya tienes un hoyo en el corcho de tu dashboard.

Al final decidimos construir nuestro propio pizarrón casero, mucho mas grande, más resistente, portátil, y por el mismo precio de un solo pizarrón chiquito.

Seguramente hay muchas formas de construir un dashboard útil. Aquí describo simplemente la forma en que nosotros lo hicimos. Tal vez no es la mejor o la única manera de hacerlo, pero a mi me gustaría haber tenido como referencia una descripción como esta, como idea de donde poder iniciar.

Materiales

Necesitas:

  • Una pared cercana a donde esté tu equipo de trabajo.
  • Un espacio de 1m de altura x 150cm de largo puede ser suficiente, pero entre más espacio mejor.

    Es esencial que el dashboard esté cerca (visible) a todas las personas del equipo. Si no hay una pared cerca, hay que mover al equipo a donde haya una. Así de simple.

  • Láminas de corcho suficientes para cubrir el espacio que tienes disponible en la pared, de unos 4 ó 5 mm de grosor.
  • Lámina de corcho

    Láminas de corcho

    Si no encuentras tamaños exactos no hay problema, puedes recortar las láminas de corcho para armar un dashboard que se ajuste bien al tamaño deseado.

    Estas hojas de corcho las puedes encontrar en las tiendas de materias primas para manualidades y decoración, pero nosotros las conseguimos en el OfficeMax. Cada hoja de 60cm x 120cm por 0.5cm de grueso nos costó cerca de $130 pesos.

  • Cartones grandes (por ejemplo, una caja del empaque de una lavadora o un refrigerador)
  • Cartón

    Cartón corrugado

    El cartón sirve principalmente para aumentar el grosor del pizarrón y poder meter tachuelas (que generalmente tienen unos 8mm a 1cm de largo) sin temor de llenar de hoyitos la pared. De lo contrario tendrías que conseguir corcho de al menos 1cm de grosor, aumentando bastante el costo y tal vez el pizarrón sería mas pesado y mas difícil de sujetar a la pared.

    Además, ayuda a que el dashboard quede rígido y no se esté doblando o que el corcho se vaya a romper en pedazos.

    Seguramente puedes ir a una tienda y comprar las láminas de cartón, pero nosotros encontramos una caja del tamaño adecuado y ya no tuvimos que gastar.

    Reiterando, por el largo de las tachuelas, es importante que el grueso del cartón y el grueso de la lámina de corcho den mas o menos un total de 1cm.

  • Pistola de pegamento (silicón)
  • pistola.jpeg

    Pistola de pegamento

    El silicón sirve para pegar el cartón al corcho. Puedes experimentar con varios tipos de pegamento. Nosotros teníamos a la mano una pistola de silicón con 8 barritas de repuesto y funcionó excelente como pegamento para el corcho y el cartón.

    Estas pistolas y los repuestos las puedes encontrar también en las tiendas de materias primas de manualidades y decoración, pero seguramente la puedes pedir prestada con alguna amiga o tía que tenga el gusto por hacer recuerditos para bodas y bautizos.

  • Cuadritos auto-adheribles de Velcro
  • IMG_0300_2.jpg

    Velcro

    Son para fijar el dashboard en la pared. Los puedes conseguir también en papelerías grandes como OfficeMax o en OfficeDepot, aprox $30 pesos por cajita. Calcúlale en el peor de los casos 1 cajita por cada metro cuadrado que mida tu pizarrón.

    Naturalmente puedes sujetar tu pizarrón a la pared con clavos o tornillos, pero ésta es una manera fácil y que no requiere perforar la pared.

    Gracias a que el cartón y el corcho son relativamente ligeros, el pizarrón es liviano y el Velcro lo soporta perfectamente.

  • Una navaja o ‘cutter’, para cortar el corcho y el cartón.
  • cutter.jpg

    El arma letal

  • Tachuelas
  • Te recomendamos conseguir de dos tipos: una caja de tachuelas planas, que son mas estables, y un par de cajas de pines, que son más fáciles de estar quitando y poniendo.

    tachuelas.jpg

    Pines y tachuelas planas

    Yo encontré tachuelas planas por $17 pesos 100 piezas, y los pines $17 pesos 50 piezas.

    Seguramente no vas a necesitar mas de 50 de cada una.

  • Pliegos de papel bond cuadriculado, para tu burndown chart.
  • Ok, en la foto no está cuadriculado, pero no tenía otra.

    papelbond.jpeg

    Papel bond cuadriculado

Procedimiento y tips de construcción

Aunque con la lista de materiales ya te diste una muy buena idea de cómo es la construcción del dashboard, hay algunos tips que nos resultaron muy bien y que quiero compartir:

  1. Pega las láminas de corcho al cartón
  2. El primer paso es recortar el cartón del mismo tamaño que tus láminas de corcho y pegarlas con el silicón.

    paso1.jpg

    Cartón para darle profundidad al asunto

    Tip: Te recomiendo que el dashboard no sea de una sola pieza, sobre todo si va a ser grande. Al dividirlo en varias partes resulta mas fácil de fabricar, de transportar y es menos probable que un día se despegue de la pared por el peso.

    Nosotros estamos usando 2 láminas independientes de 120cm x 75cm una al lado de la otra, para un total de 150cm x 120cm.

    IMG_0307_2.jpg

    El dashbord en piezas portátiles

    Tip: Un puntito de silicón cada 4 ó 5 cm pegan increíblemente bien el corcho y el cartón.

    Asegúrate que están bien alineados por que se seca rapidísimo.

    Tip: Además, verifica previamente que tu refrigerador o lavadora está funcionando correctamente, porque ya no vas a poder despegar el cartón para volver a armar la caja y regresar tu aparato a la tienda para garantía. =)

  3. Aplica los cuadritos de velcro auto adheribles al cartón.
  4. velcro.jpg

    Velcro en el cartón y la pared

    Tip: En vez de pegar por separado el velcro a la pared y al cartón e intentar atinarle a que embonen, ‘ensambla‘ las dos contrapartes de cada cuadrito y ponlos en la parte posterior del dashboard, uno con el adhesivo al cartón y el otro con el adhesivo expuesto. Luego, simplemente presiona la lámina del dashboard contra la pared para que automáticamente queden alineados.

    El adhesivo del velcro seca rápido: presiona el dashboard contra la pared por unos 10 segundos y listo.

  5. Etiquetas
  6. Puedes usar tachuelas planas para las etiquetas permanentes del pizarrón.

    IMG_0305_2.jpg

    Lindas etiquetas (el font es Digital Strip)

    Otra opción sería fijar las etiquetas con pegamento, pero el usar tachuelas te da la ventaja de que puedes reorganizar las secciones del Dashboard cuando quieras en vez de que queden secciones de tamaño fijo. Te ayuda a que tu dashboard esté mas ordenado.

    Usa pines para los papelitos que vas a estar moviendo constantemente:

    pines.jpg

    Las unidades de procastinación

  7. La gráfica de burndown
  8. El material para la gráfica es muy sencillo: papel cuadriculado.

    El único tip interesante es que te recomiendo que no compres hojas de rotafolio en OfficeMax. Son carísimas. El paquete de 15 hojas costaba como $100 pesos.

    Busca en una papelería de tu barrio pliegos de papel bond cuadriculado. De un pliego salen 2 gráficas de buen tamaño y cada pliego cuesta al rededor de $1 peso.

    Ajusta la gráfica con tachuelas planas, pues no se va a mover durante el sprint.

    Eso es todo.

    ¿Qué sigue?

    El el siguiente post describiré cómo estamos llevando el backlog y generando e imprimiendo los papelitos que representan las actividades en el dashboard, en vez de usar Post-It rotulados a mano.

Te invitamos a que participes

2009 Abril 30
por Sergio Acosta

El propósito de este blog es servir como punto de expresión para todo aquel que quiera formar parte de la comunidad de Scrum México.

Por lo tanto, invitamos a todos los que deseen hacer uso de él:

  1. Si te interesa escribir en este blog acerca de cualquier tema relacionado con Scrum, métodos ágiles, administración de proyectos, te invitamos a que lo hagas. Sólo necesitas sacar una cuenta en WordPress.com. Es gratuita y no necesitas crear un nuevo blog para obtenerla. Contáctanos para agregar tu cuenta al grupo de escritores del blog.
  2. Si ya tienes un blog en donde publiques algo acerca de Scrum y quieres que lo anunciemos aqui, avísanos también. Con gusto podemos anunciar tus posts de forma individual, o poner un link permanente a tu blog.

Déjanos un comentario o envía en Twitter un mensaje directo a http://twitter.com/comunidadscrum.

Objetivos

2009 Abril 2
por Sergio Acosta

Este sitio es el nuevo punto de colaboración para las actividades de la comunidad de Scrum Ciudad de México.