Archivos mensuales: Noviembre 2013

Software craftsmanship en Chile Ágil

Durante la semana pasada estuve trabajando en Santiago de Chile para dar un taller de desarrollo ágil de software.

Como siempre que visito alguna ciudad, intento participar de alguna actividad de la comunidad. En este caso, Agustín Villena, Pablo Cáceres y Chile Ágil organizaron una reunión para debatir sobre Software Craftsmanship en la Universidad de las Américas.

Comenzamos por establecer los objetivos de los presentes, es decir, que debería ocurrir en esa reunión para que cada uno se fuese satisfecho.

Esos objetivos son los post-its amarillos (claro) que verán en el video que les dejo a continuación y en el que podrán ver el resumen de la sesión, cuyo resultado queda representado por los post-its púrpura.

http://www.youtube.com/watch?v=PEyUH6QZhts

Solo me resta dejarles un abrazo y un agradecimiento a la comunidad chilena, a Pablo Cáceres por facilitar este evento y a Agustin Villena y a Philippe Camacho por su hospitalidad.

Los tres caminos

51rMT69p7rL._SY344_PJlook-inside-v2,TopRight,1,0_SH20_BO1,204,203,200_Hace un tiempo terminé de leer el libro The Phoenix Project.

El libro tiene un fantástico olor (si, huelo los libros) pero, además, me gusta mucho el estilo de novela en el cual esta escrito. Describe la situación de Parts Unlimited, una empresa en la cual las tecnologías de la información están en completo descontrol. El relato es impecable y bastante creíble, de hecho, me imagino a muchas compañías en esa misma situación.

Nuestro héroe, Bill Palmer, ayudado un misterioso amigo, va descubriendo, paso a paso la forma de mejorar la situación aplicando paralelismos creíbles. En otras palabras, llega desde una situación caótica creíble a una situación muy familiar para un agilista y lo hace mediante la descripción de los tres caminos, de eso quiero hablarles hoy.

El primer camino: flujo

Este camino se propone la visión sistémica de una gerencia, una organización completa o un individuo, enfatizando el flujo de valor en sistema completo, cuidando de que optimizaciones locales no degraden el rendimiento general.

El segundo camino: realimentación

Una vez establecida la visión sistémica es necesario habilitar la mejora continua estableciendo el mecanismo de realimentación, lo mas inmediata posible para garantizar que el flujo de valor buscado en el primer camino mejora continuamente.

El tercer camino: experimentación continua y aprendizaje

El tercer camino propone un cambio cultural basado en dos conceptos: el aprendizaje continuo habilitado por la experimentación, tomando riesgos y aprendiendo de los errores y el entendimiento de que la repetición y la práctica sostenida son imprescindibles para lograr la perfección.

¿Como aplican estos principios al desarrollo de software?

Para que este artículo no sea una mera traducción de los textos cuyos originales incluyo al pie, me gustaría hacer una breve interpretación ajustada a la construcción de software, según mi experiencia.

Logramos el flujo (el primer camino) cuando priorizamos la puesta en producción continua de funcionalidades con valor para los usuarios. También garantizamos un flujo continuo y sostenible con prácticas como TDD (Tesd Driven Development), logrando maximizar la velocidad y la calidad.

Logramos la realimentación (el segundo camino) poniendo tempranamente, en el proyecto, software en manos del usuario, con calidad de producción y en lapsos breves (una semana o, mejor aún, diariamente). ńo menos importante es la participación del cliente o usuario final en el proceso de desarrollo, en la priorización de las funcionalidades y, sobre todo, en la construcción y su validación continua.

Logramos establecer la cultura del aprendizaje continuo y la práctica sostenida (el tercer camino) mediante los conceptos de Software Crafsmanship, Coding dojos, para el caso de los equipos de desarrollo multidisciplinarios. También es destacar el rol del responsable de producto para lo cual  recomiendo enfáticamente éste video de Henrik Kniberg.

Para mas detalle, pueden revisar éste y éste texto (en inglés) y, por supuesto, el Toyota production system (inglés).