lunes, agosto 24, 2009

Adoptando TDD en una compañia

Luego de casi 6 años de usar TDD como desarrollador y teniendo excelentes resultados en los proyectos que trabajé, decidimos comenzar con la interesante y desafiante idea de propagar el uso de TDD para todos los proyectos de IBM, por supuesto contanto con apoyo ejecutivo y técnico para poder lograrlo. Esto digamos que no tiene ninguna cosa muy complicada, hay que:
  • capacitar
  • guiar y resolver problemas
  • proveer herramientas que faciliten la implementación
  • implementar y medir constantemente (muy importante!!!)
El temita con TDD es que es un cambio de enfoque de como uno viene trabajando y no podes capacitar de la misma manera al Senior que al Junior, y varias cosas más que los que están en el tema sabrán... el concepto clave es que TDD es una técnica de diseño que permite mejorar el diseño de las aplicaciones, mejora la productividad y permite tener menos defectos.
Con lo cual hemos definido 5 puntos que consideramos claves para el éxito de esta iniciativa, y que fueron los siguientes:
  1. Soporte de la gerencia: Partiendo de la base que no es una técnica sencilla de aprender se necesita tener disponibilidad de los profesionales para educarlos.
  2. Ser pacientes: Al comienzo durante la implementación de TDD puede disminuir la productividad del desarrollo, pero hay que saber en tender que seguramente los tiempos de Testing se van a achicar por menor cantidad de defectos, y que luego de 3 meses, la productividad va a mejorar rotundamente.
  3. Educación constante: Profesionales rotan, nunca hay que dejar de educar.
  4. Formar una comunidad: Esto refiere a que luego de la educación e implementación los profesionales puedan conectarse y compartir conocimientos especificos de TDD y se organicen para ayudarse entre si no estructurada a través de Blogs, Wikis, Coding Dojos, etc
  5. Definir y capacitar expertos: Estas personas tendrán la experiencia y los conocimientos de TDD para ayudar a profesionales y proyectos que recien comienzan, guiandolos en su adaptación.
Ya tuvimos el primer curso de TDD de un día completo, la verdad que nos fui muy bien, nos encantó hacerlo y tuvimos muy buen feedback. También tenemos pensado dar este curso 4 o 5 veces más en este año.
Una de las cosas que me encanta de este es el grupo que armamos con otros nerds de aca, Damian Garcia, Marcelo Mendoza, Bernardo Capra (desde Tandil) y Mauro Galvan Rainhart (anti-nerd).
Calculo que en otro post voy a contar un poco como encaramos el curso y obviamente como nos está yendo

No hay comentarios.: