Aplicando Scrum en el departamento de IT

Esta entrada la tengo pendiente desde hace bastante tiempo y resume un poco las experiencias que hemos tenido en el uso de Scrum y metodologías ágiles dentro del departamento de IT. Cómo hay muchísimo ya escrito sobre cómo aplicar Scrum y sus efectos beneficiosos voy a enfocarme en una lista de comentarios sobre cómo he visto nuestra aplicación de la metodología.

– Cómo nuestro trabajo tiene un componente alto de resolución de incidencias y solicitudes que deben ser atendidas en un periodo muy corto de tiempo no pudiendo esperar a ser incluidas en el siguiente sprint al finalizar las dos semanas de este optamos por dedicar un porcentaje de nuestro esfuerzo diario al sprint en curso y el resto del porcentaje a las tareas del día a día, resultando ser bastante efectivo y sólo en algunos casos comiendose el tiempo de uno el otro.

– Inicialmente para que el salto de concepto no fuera demasiado grande no empezamos usando historias de usuario sino algo más parecido a una división por tareas y las valoraciones de dificultad estaban más enfocadas sobre el tiempo que le llevaría a cualquiera de nosotros llevar a cabo la misma que en la dificultad intrinseca de la misma. – Para evitar eternas discusiones de si eso era la forma «verdadera» de hacer Scrum les decíamos que nosotros hacíamos Scrutch no Scrum.

– La reunión de planificación del Sprint resulta mucho más útil que el modelo tradicional en la que alguien se encarga del diseño y el calculo de esfuerzos y luego todo el equipo debe responder por ello. Así todo el equipo recibe una visión temprana del volumen de trabajo y las dificultades y crea también una especie de compromiso con lo pronosticado, mucho mayor que si alguien te impone una cifra. Además el Planning Poker es divertido y también saca un poco la personalidad de cada uno a la hora de estimar tareas, ejercicio muy recomendable junto con las reuniones de retrospectiva.

– La pizarra con los postit y el burndown chart son una medida muy útil para que todo el mundo pueda ver de un vistazo dónde estamos y lo que queda por hacer para llegar al final del sprint a tiempo, además resultó un atractivo para el resto de equipos que no veían muy claro que hacíamos con los postit.

– Otro punto muy positivo fue el de la defnición de terminado para una tarea. Para nosotros en este caso no sólo siginificaba que estuviera hecho sino que estuviera provado, documentado y su correspondiente ticket actualizado, sin los cuales la tarea no se podía parasar a finalizada y así comenzar otra, con lo que todo el mundo tenía muy claro lo que había que hacer.

– Uno de nuestros fallos fue no conseguir una mayor implicación por parte de los distintos product owners, en muchos casos actuando la misma persona, vamos yo, actuaba cómo product owner, scrum master y miembro del equipo, lo que quitaba un poco el factor integrador que nos da el uso de Scrum. Otro fallo en algunos proyectos que implicaban otras areas fue no incluirlos en nuestro Sprint y simplemente esperar que para cuando nosotros estuvieramos en el punto de necesitar sus productos estos estarían listos.

– El product backlog es una herramienta que sigo utilizando para todo tipo de actividades para que nada quede en el olvido, se clasifique y se prepare su entrada a la ejecución.

– La valoración de la satisfacción creo que fue bastante grande y sobretodo una gran mejora frente a no utilizar ninguna metodología, quizá poco a poco se podría ir incorporando más conceptos puros de Scrum y mantener aquellas modificaciones que nos han sido de utilidad.

– Actualmente sólo lo usamos en momentos puntuales cuando aparece un trabajo que nos va a costar más de dos semanas y que debe ser llevado por varios miembros del equipo

– Constantemente pienso que Kanban podría ser una alternativa más global que nos permitiría también meter la gestión de incidencias y tengo pendiente que hagamos algún piloto para ver que tal nos funciona.

Sorteo en el departamento de IT

Con la escusa de que habíamos acumulado algo de merchandising de los distintos eventos en los que hemos participado, decidimos hacer un pequeño sorteo dentro del departamento de IT para ver quién se quedaba cada cosa. Cómo no, el sorteo no podía ser por los medios tradicionales, lease papelitos o piedra-papel-tijera, así que me aventuré a tirar unas líneas de python que resolvieran el problema de forma sencilla, aunque como veréis luego decidimos complicarlo un pelín más. El sorteo lo proyectamos en la tele que tenemos para la monitorización justo al lado del departamento:

La primera versión del código era realmente sencilla y muestra lo fácil que es hacer algo con python, simplemente declara un array de personas y otro de regalos, recorre los regalos y va eligiendo una persona de forma aleatoria como ganador de cada regalo y eliminando esa persona del array de personas:

sorteo-simple.py (Pincha sobre el enlace para ver o descargar el código)

Pero así quedaba un poco simplón por lo que añadí alguna opción más para hacerlo más interesante. La idea es que había gente que sólo estaba interesada en algunos regalos y tenía su orden de preferencia, así que modifiqué el código para que las tuviera en cuenta en caso de que te tocara un regalo a modo de Wish List:

sorteo-wish-list.py (Pincha sobre el enlace para ver o descargar el código)

Y por supuesto el código fue enviado a todos los participantes para que lo auditaran antes de su ejecución con el consiguiente debate de cómo se podría hacer mejor… además en el correo me colé y puse para vuestra audición y alguno quería ponerlo con el festival. Y claro, así no hay forma de hacer trampa, con lo que finalmente no me tocó ningún regalo cómo podéis ver si pincháis sobre la imagen de la tele, pero al menos me queda esta entrada del blog cómo recuerdo.

El sindicalismo del «me gusta»

Estas pasadas semanas con motivo del revuelo generado por la Huelga General, que ya sea a favor o en contra, ha levantado bastante expectación, me han sorprendido bastante los mensajes lanzados por mucha de la gente «de interné». A diestro y siniestro rasgándose las vestiduras virtuales de sus avatares por las tremendas injusticias cometidas por los sindicalistas Neandertales, no muchas veces exentos de razón, y tratando de defender porqué ellos desde la comodidad de sus teclados eran capaces de difundir de forma mucho más clara y alta el malestar que se ha generado con las «soluciones» del gobierno y el recorte a nuestros derechos que se ha llevado a cabo ¿Para qué queremos sindicatos en el siglo XXI, si ya tenemos Facebook y Twitter? ¿Para que vamos a enderezar nuestras arqueadas columnas vertebrales y salir a la calle a gritar por nuestros derechos si podemos pulsar en el «me gusta» de nuestra red a-social favorita en algún comentario en el que se pone a parir a diestro y siniestro?

Y no digo que estos medios no tengan su valor, pienso que lo tiene y mucho de hecho yo intento explotarlas al máximo, pero también pienso que todavía hay mucha gente que no tiene acceso a estos medios y que tiene que buscar su forma de hacerse oir. Si atendiéramos al número de gente que estaba dispuesta a hacer huelga por los mensajes de twitter o tuenti podríamos afirmar que nadie salió a la calle el 29 de Septiembre, en cambio si miramos las cifras, sectores no tan afines a la tecnología cómo el minero o el industrial, duramente azotados por la crisis, estaban todos allí. Todo esto siempre me recuerda a una frase de la mítica Guerra de las Galaxias adaptada al caso: «No se ofusque con este terror tecnológico que ha construido. La posibilidad de pinchar en Me gusta es algo insignificante comparado con el poder de la fuerza.», la fuerza de toda la gente unida que es capaz de conseguir lo que sea, de acabar con el no se puede y el esto va a seguir así hagamos lo que hagamos.

Lo que nos motiva

Me ha llamado bastante la atención este vídeo, en inglés, que habla sobre las cosas que nos motivan dentro del trabajo, tiene un enfoque bastante tecnológico pero que seguro también se puede adaptar a otras áreas. Está claro que el dinero es un factor importante, pero no único a la hora de conseguir que estemos motivados, otros elementos cómo el de enfrentarte a nuevos retos o de mejorar cada día muchas veces están infravalorados.

Por otro lado el formato de un narrador y otra persona plasmando las ideas en papel me parece una forma muy clara de presentar las cosas.

A mí me ha hecho pensar, así que por eso lo he puesto por aquí… a vosotros, ¿qué os motiva en el día a día?

Reciclaje continuo

Siempre se ha dicho que la informática es una de las disciplinas que requiere mantenerse al día constantemente, pues si no, los conocimientos de uno quedan obsoletos en menos de lo que canta un gallo. Quizá algún día esto pueda llegar a preocuparme, pero lo que es a día de hoy es algo que me encanta. Explorar nuevas tecnologías, nuevas aplicaciones y todas sus posibilidades hace que nunca termines de aburrirte de esto porque si un día estas con una cosa a la siguiente ya tienes algo nuevo en lo que investigar.

3192656796_b991d213ae1

Además viviendo en Madrid, bueno al lado, la ventaja es que siempre puedes encontrar eventos interesantes «cerca» de casa a los que acudir. Por ejemplo el Hackmeeting de hace unos días, los eventos Red Hat Happy Hour a los que ya me he hecho adicto con sólo asistir a la de seguridad con SELinux y ya me he apuntado a las ediciones sobre migración a Jboss y virtualización, o ciclos de conferencias cómo al que asistí antes de ayer sobre Cloud Computing y Virtualización en el centro Madrid On Rails, en el que se vieron todas las opciones disponibles de virtualización con Software Libre (usando Linux y OpenSolaris principalmente) y luego una introducción al Cloud con la presentación de la plataforma Abicloud para la gestión de nubes privadas.

Charla Cloud en Madrid On Rails

En el campo del Cloud Computing también llevo algún tiempo investigando y desarrollando ya que va a jugar un papel importante en los próximos movimientos dentro de Andago. Además, y para no ser acusado de leecher y sólo recibir conocimiento, ya tengo programada una charla sobre cómo desplegar servicios en la nube en los próximos cursos del GUL de la Universidad Carlos III, a la que todos estáis invitados. Esta era mi primera visita a Madrid On Rails, el lugar está bastante agradable y la idea me parece genial, sólo les falta quitar los Macs que tienen a la entrada o instalarles Ubuntu, ya que no pegan nada con la temática, y ver cómo evoluciona este concepto de centro en el futuro.

Por otro lado, en este último año y a raíz de que pusimos en marcha el departamento de arquitectura de sistemas en Andago me ha tocado pelearme bastante con las tecnologías basadas en Java. El curso de Red Hat sobre administración de JBoss fue una base interesante sobre la que empezar a jugar, a partir de allí muchas horas peleando sobretodo en la integración de las soluciones de Andago en Jboss para poder consolidarlas, al loro con la palabreja, todas en un sólo servidor de aplicaciones. Pues la semana pasada asistí al curso de Administración de Liferay, aplicación de portales basada en portlets, que utilizamos bastante a la hora de integrar aplicaciones. El curso resultó muy interesante y la gente de Liferay muy amena, avanzamos temas cómo la clusterización y el tunning en los que estábamos algo perdidos.

Curiosamente mientras subía este post llegó mi pedido de libros a Amazon de dos clásicos que faltaban en mi colección: «The cathedral & the bazar» y «The mythical man-month«, así que no me va a faltar tampoco lectura.

Pues lo dicho a ponerse al día en este mundo tan competitivo, que opciones no nos faltan.

– Photo Dumpster empty by Hugo90 (CC By 2.0).

The deadline

Se acabaron las vacaciones y ya estoy de vuelta por aquí. La verdad es que han sido diez días de desconexión en el campo bastante buenos, y espero hacer un post dentro de poco sobre esos días. Pero antes de salir de vacaciones pasé por Cocodrilo Libros a ver si cazaba algo interesante sobre JBoss y acabé con un libro sobre Wifi y con una supuesta novela sobre gestión de proyectos… es sobre este libro sobre el que quiero hablaros: The deadline: A novell about project management.

El concepto me atrajo inmediatamente, pues hacía tiempo que estaba especulando con comprar algo sobre gestión de proyectos, pero qué mejor para el verano que combinarlo con el formato novela y además poder practicar un poquito de inglés. La historia trata de un gestor de proyectos al que le proponen el reto de crear una industria informática dentro de un país en vías de desarrollo a través de 6 proyectos que compitan con los más exitosos del momento… las aventuras del señor Tomkins y sobretodo lo que consigue aprender en el desarrollo de los mismos resultan bastante didácticas y al tiempo entretenidas. Además los conceptos mostrados en el libro me han reafirmado mucha de las ideas que tenía sobre la gestión correcta de un proyecto y me han traído muchas más que espero poder llevar a la práctica. De hecho me han dado ganas de comprar otros libros del autor, Tom DeMarco, cómo por ejemplo Peopleware.

Aquí van algunas pinceladas que me han parecido interesantes:

– Añadir más recursos a un proyecto retrasado la mayoría de las veces tan sólo consigue retrasarlo más.
– El abuso de la presión y las horas extras en un proyecto apenas consigue mejorar la productividad de este, mientras que un pequeño apretón de vez en cuando nos dá la sensación de la importancia de nuestro trabajo.
– Las mejoras en la productividad requieren una inversión a largo plazo.
– Es más productivo minimizar los fallos y problemas que intentar mejorar los métodos.
– Un día perdido al principio de un proyecto duele tanto cómo uno al final
– La gente bajo presión no piensa mucho más rápido.
– Lo más perjudicial no es lo que no sabes sino lo que crees que sabes y es incorrecto.

Y añado una que le he oido alguna vez a mi compañero Carlos que siempre me ha parecido muy acertada:

– Las tareas tienden a durar, cómo mínimo, el tiempo que designes para ella.

Si os gusta el tema de la gestión de proyectos, creo que es una buena forma de iniciarse y pasar un rato divertido.

La olvidada arte del liderazgo

Voy a rescatar de una de mis últimas entradas en twitter para empezar a elaborar este post al que lleva varios dí­as dándome vueltas en la cabeza:

Aquí­ van algunas palabras que no aparecen en el diccionario de algunos: motivar, incentivar, potenciar, hacer equipo, promocionar… ¿sigo?

Son algunas de las cualidades y habilidades que se le presuponen a un jefe o mejor aún a un lí­der y que la mayorí­a ni siquiera entiende de que van. Esa figura a la que seguir y que nos debe marcar el camino, que nos protegerá de los abusos de los de arriba y que potenciará nuestras habilidades hasta lí­mites que no sospechábamos y del que vamos a aprender muchísimo, que sabe explotar nuestras virtudes y reducir al má­nimo nuestros defectos. Espero que algún dí­a sean las armas que pueda esgrimir para convertirme en una figura que hace tiempo no logro encontrar.

En cambio uno no para de toparse con estas frases de la gente:

– «La gente de mi equipo son unos vagos y es que así­ no se puede.»
– «¿Pero chaval tú sabes a que hora se sale en Acenture?»
– «Uyyy no, lo siento hoy no tengo tiempo para atenderte, me voy a tomar un café.»
– «Ha sido Manolito, que es un zarpas, y claro ha jodido el trabajo de los demás.»

Voy a intentar descifrar algunas de las claves de esas palabras tan ajenas hoy en dí­a a la gente que tiene otra gente a su cargo:

Motivar: Es el arcano arte de hacer que tu trabajo sea aquello que te gusta, hacerte participar en proyectos interesantes, reconocer cuando se está haciendo un buen trabajo.

Incentivar: Se trata de una parte de la alquimia en la que se te reconoce el buen trabajo y se te conceden mejoras en tu situación: económicas, ascensos, vacaciones, etc…

Potenciar: Es la olvidada habilidad de sacar lo mejor de tí­ aprovechando al máximo tus cualidades y haciendo cada vez menos y menores tus debilidades.

Hacer equipo: Esta quimera versa sobre la habilidad de hacer darse cuenta a la gente que está trabajando dentro de un equipo, codo con codo con otras personas y que el trabajo de cada uno es importante para lograr una meta.

Y podrí­a seguir un buen rato destapando el grial de las antiguas esencias y de las arcanas artes ya olvidadas. Aquí­ una entrada que me resultó intresante: [EN] 10 formas de motivar a un geek y otra más aportada por un lector: Un jefe incompetente es la principal causa de estrés.