Monday, September 26, 2011

Las Perspectivas nos las dan las Pruebas

A primera vista puede resultarnos absurdo diseñar, describir e implementar las pruebas antes que código que lleva a cabo la tarea descrita por la petición del cliente. Después de todo, en un mundo perfecto, entenderíamos por completo al cliente y podríamos lanzarnos como tigres a realizar el código final, si cabe, directamente sobre el entorno de producción. De obrar así es de esperar una vida llena de altibajos y desasosiegos, una gran aventura digna de llevarse a una película, si llega a buen fin, porque las películas deben terminar bien.

Los habemos que preferimos una vida laboral más tranquila, sensata y racional. Esto en principio nos lo ofrece el disponer de las pruebas antes de realizar un producto entregable puesto que, una vez realizado y sometido a las pruebas, su calidad estará garantizada.  Las pruebas nos aportan confianza y una buena percepción del avance del proceso de desarrollo.

Un pensamiento pueril nos puede llevar a pensar que las pruebas nos roban tiempo, puestos a ser inmaduros eliminemos también la etapa de captura de requisitos, ¡programemos directamente frente al cliente! ¡Bienvenidos al LiveProgramming! La experiencia nos dicta que eso no funciona, al menos casi nunca.

Puede resultarnos osado, nuestro objetivo siempre es aumentar la productividad manteniendo las cotas de calidad deseables. En principio las pruebas pueden parecernos ir en contra de la productividad. Cada prueba es un punto de apoyo en la escalada hacia la cima donde se coloca un producto finalizado de calidad garantizada. No niego que existen maestros de la escalada capaces de llevar a cabo tal proeza sin anclajes ni puntos de apoyo (las pruebas), pero lo cierto es que aquellos que sobreviven terminan por aceptar que, con las pruebas, el proceso de desarrollo es más certero, previsible y productivo.

El Diseño Guiado por las Pruebas (a partir de ahora TDD: Test Driven Design) nos indica un marco de trabajo que permite desarrollar código en pequeños incrementos. En breve veremos su bases y en ellas radica su complejidad: hay que ceñirse a ellas y seguirlas con perseverancia y buen talante.

No comments:

Post a Comment