archivo

Archivos diarios: septiembre 7, 2010

Hace poco tiempo tuve una reunión con un proveedor para revisar, entre otras cosas, la calidad del software del producto que están desarrollando, mediante la realización de un análisis estático de código utilizando Sonar.

La verdad es que pese a que todavía queda más de la mitad de la construcción las métricas eran bastante decentes pese a que se reutilizaba dentro de la aplicación un software desarrollado hace años y que tenía algunas carencias en este sentido.

¿Cuáles han podido ser las claves?

– Que el proveedor sepa que el producto va a pasar por Sonar y que el cliente sabe interpretarlo ya es de por sí un elemento motivador importante para esmerarse. Además conoce qué reglas aplicamos y qué plugins tenemos instalados, por lo que no hay trampa ni cartón y puede reproducir en su entorno de desarrollo los resultados que posteriormente vamos a obtener nosotros.

– El proveedor utiliza un entorno de integración continua integrado con Sonar, por lo que cada cierto tiempo obtiene las métricas relacionadas con la calidad del software en cada desarrollo. Eso en sí mismo no supone nada, ya que lo importante no es solo tener un proceso que te permita obtener las métricas sino que se revise, interprete adecuadamente y se aleccione al equipo de desarrollo cuando se empiezan a detectar desviaciones en la calidad del software. Cuanto antes se detecten los problemas menos esfuerzo y por tanto menos coste tendrá solucionarlo. En este caso el responsable del equipo de trabajo revisa semanalmente Sonar y advierte de las carencias que se van encontrando.

El uso de Sonar detecta y apunta las problemáticas, pero no todas se solucionan fácilmente, ya que si se parte de un diseño de la aplicación que no es bueno probablemente el resultado no será bueno, es decir, la calidad del software no empieza cuando se codifica sino mucho antes y eso hay que tenerlo en cuenta. En cualquier caso, integrar el uso de Sonar dentro del proceso de desarrollo me parece un acierto total ya que esperar al final para obtener las métricas es peligroso, ya que aunque se puedan mejorar cosas siempre serán muchas menos (y costará más esfuerzo) que si las mejoras se han ido realizando mientras se realizaba la construcción.