Aplicando revisión de código en entornos ágiles

Aplicando revisión de código en entornos ágiles

Desde hace unos años he tenido la oportunidad de trabajar con metodologías agiles, específicamente con Scrum, sin embargo, ha sido hasta hace un año en el que tuve la oportunidad de incorporarme a un equipo en el cual se implementa la revisión de código o “code review” como un componente más dentro del flujo de trabajo.  Al inicio esta práctica me tomo un poco por sorpresa, especialmente en determinados casos en donde estaba un poco limitado de tiempo y sentía que las correcciones y las discusiones surgidas a partir de sugerencias o comentarios me estaban “robando” tiempo para continuar con otras <<user stories>>.

 

Con el paso del tiempo y la madurez dentro del equipo, he logrado valorar aspectos muy positivos dentro de la revisión de código, aspectos que trascienden más allá de comentarios y sugerencias y se enfocan en elementos que deben ser a mi parecer parte integral dentro de todo entorno o equipo de desarrolladores de software, entre ellos me gustaría mencionar:

  1. Espacio de aprendizaje
  2. Fomentar el respeto y la tolerancia
  3. Mejora del código

 

Espacio de aprendizaje

Cada desarrollador tiene (o debería) tener sus mecanismos de autoaprendizaje, de forma tal que se mantenga actualizado a través de nuevas características o métodos más eficientes para alcanzar determinados resultados, estos pueden ir desde suscripciones a sitios web, revistas de programación, foros, etc.; sin embargo, como es normal, tenemos limitaciones de tiempo, pero cuando estamos dentro de un equipo en el cual sus miembros se han tomado en serio esta labor de revisión de código, es seguro que dentro de las sugerencias salgan a relucir nuevas características, patrones de diseño, buenas practicas, o simplemente enlaces de interés a artículos o sitios web que pueden sustentar o refutar determinadas soluciones implementadas.

 

Fomentar el respeto y la tolerancia

Aunque puede sonar trivial, el respeto y la tolerancia son aspectos fundamentales dentro de todo equipo de trabajo (sin importar la profesión), por eso es muy importante interiorizar algo básico: “mi código no es mi hijo y un comentario hacia ese código no representa un ataque”. Al inicio cuando un nuevo desarrollador se integra dentro de un nuevo equipo es probable que se pueda sentir intimidado y hasta “herido” en su autoestima como desarrollador, puede incluso tomarse ciertos comentarios como un ataque personal, por eso la clave es el respeto y la tolerancia, enfocándonos en que la revisión de código es una forma de compartir y aprender, y lo que pasa dentro de la revisión de código, se queda en la revisión de código.

 

Mejora del código

Invariablemente, dos cabezas piensan mejor que una, como resultado directo de toda revisión de código es muy probable que se genere algún cambio, por mínimo que sea, que hará que el código inicial haya mejorado y por tanto el código de nuestro software se beneficiara y en futuros desarrollos es seguro que se tomaran en cuenta las sugerencias surgidas en previas revisiones de código.

En caso de que en sus equipos de trabajo no hayan incorporado aun la revisión de código, les invito a hacerlo, los beneficios tanto a nivel del código como a nivel de aprendizaje son altos y la inversión en términos de tiempo permiten tener una buena relación costo-beneficio.

Happy Code !!!!

Leave a Reply

Your email address will not be published. Required fields are marked *