Archivo

Archivos diarios: marzo 1, 2012

Si la finalidad de los productos que desarrollamos es que lo utilicen usuarios es un mal síntoma que buena parte del equipo de proyecto esté alejado de los mismos.

Generalmente son los analistas los que tratan con los usuarios, a veces también lo hacen los jefes de proyecto, mientras que el resto del equipo por arriba y por debajo apenas tiene trato con ellos.

En otros modelos orientados a factorías de software, son aún más las capas que separan a los desarrolladores del cliente.

Sobre esto habrá opiniones de todo tipo, pero desde mi punto de vista, cuando los técnicos solo ven papel (o su equivalente en una herramienta CASE) termina por olvidarse para qué y para quién se desarrolla y eso es un problema importante porque nos robotiza en lugar de humanizarnos y nos convertimos en autómatas que ejecutamos trabajo, que anotamos nuestras horas en el sistema de gestión de incurridos que se utilice y que tratamos de no desviarnos de las previsiones que nos han indicado nuestros superiores, en ese contexto, ¿qué margen le queda al usuario?, ¿qué margen le queda a la calidad del producto?.

Más funcionalidades no significa que el producto sea mejor. El producto es mejor cuando satisface las expectativas del cliente al que va dirigido y eso no es proporcional al número de funcionalidades sino a la calidad de las mismas.

Si un producto está estable, si el cliente está satisfecho, ¿para qué incrementar la complejidad?, ¿para qué crear necesidades que no existen?, incluso si es el cliente el que lo pide, ¿no deberíamos reflexionar conjuntamente sobre el coste y el beneficio de realizar las mismas?, tal vez si lo hacemos las nuevas funcionalidades a implementar o los cambios en las ya existentes son realmente fruto de la necesidad, no fruto de un capricho o de una idea que no está lo suficientemente madura.

No se trata de no evolucionar un sistema sino de hacerlo con medida, con justificación, ante una necesidad.

El dibujante Scott Adams, creador de la tira Dilbert, tiene una cita que resume perfectamente la actitud muchos desarrolladores ante un producto: “La gente normal cree que si no algo no está roto, no hace falta arreglarlo. Los ingenieros creen que si algo no está roto es que no tiene todavía suficientes funcionalidades”.

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.

Únete a otros 3.202 seguidores