Desarrollo de software. Usuarios, producto, evolución

El objetivo fundamental de la fase de análisis en un proyecto de desarrollo de software consiste en obtener una especificación de lo que realmente quiere el usuario. Esto teóricamente está muy bien si no fuera porque la mayor parte de los usuarios lo que hacen en el análisis es esbozar una solución, la cual no terminan de perfilar hasta que ven al producto en funcionamiento.

Con esto no quiero restarle importancia a esta fase tan importante en el proceso de desarrollo ya que cuanto mayor sea la desviación entre lo que quiere el usuario y lo que finalmente se implementa mayor será el esfuerzo necesario posteriormente para alinear producto y expectativas. Esto resulta sobre todo muy significativo en los ciclos de vida clásico o en cascada o incluso en ciclos iterativos e incrementales con fases de desarrollo de mucha duración.

Ante lo anterior, que es una realidad patente en los proyectos en los que trabajamos se encuentra la solución de intentar acortar los períodos de entrega de manera que se tenga el feedback del usuario cuanto antes y favorecer de esta forma su enfoque en el proyecto (el cual por otra parte debería ser garantizado en lo posible por los responsables funcionales del sistema).

Trabajar de esta manera es lo ideal en muchos tipos de proyectos, pero es importante que se entienda por parte de los directores usuarios que el producto se va a construir por piezas, que lo mismo se tarda algo en tener un conjunto de piezas mínimo para que el producto no sea un esqueleto andante y realmente sea utilizable en un entorno de producción. También deben entender que lo mismo la inversión inicial es superior a la de otros proyectos desarrollados con metodologías no ágiles pero que al final no será superior a estos (una vez que se tiene en cuenta los gastos de mantenimiento de estos) y los resultados serán, por regla general, mejores.

Deja un comentario