archivo

Archivos diarios: marzo 17, 2012

Recoger especificaciones en bruto de los usuarios, sin asesorarles y convertirlas en código es un camino que puede implicar menos riesgo (al fin y al cabo siempre podremos echar la culpa a los usuarios de que el sistema no cumpla sus expectativas ya que nos hemos limitado a implementar lo que nos han dicho) pero que no por ello deja de ser una tarea compleja (conseguir que los usuarios colaboren, obtener de ellos los requisitos y hacer un buen código es algo complicado) y que pese a todo probablemente nos alejará de un sistema que satisfaga las expectativas del usuario.

Pero, ¿cómo es posible que siguiendo las especificaciones del usuario no cumplamos sus expectativas?

Henry Ford, tiene una cita que aunque está relacionada con la innovación, nos puede dar la clave para responder a la pregunta anterior: “si le hubiera preguntado a la gente qué querían, me hubieran dicho que un caballo más rápido”, es decir, el usuario sabe de su negocio, tal vez tenga más o menos claro el tipo de sistema que quiere manejar pero siempre se encontrará con el condicionante de que su imaginación estará limitada por los sistemas que conoce y que cuando sobrepasa esos límites corre el riesgo de empezar a pedir sistemas mucho más complejos de lo que posiblemente necesitan.

De un desarrollador se espera que aporte valor al cliente y al usuario, que no sea un simple traductor de especificaciones a código. Esto presenta un riesgo y es que el desarrollador quiera explotar en el proyecto toda su creatividad, realizando el sistema que a él le gustaría (tanto por dentro como por fuera) y no el sistema que necesita el usuario.

Otro riesgo es que el desarrollador se vea seducido por la posibilidad de dirigir el sistema no a la opción más óptima para el usuario sino a la opción más óptima desde el punto de vista contable para su organización (parcheo de aplicaciones realizadas para otros clientes, recorte de funcionalidades necesarias para el usuario, etc…).

Aportar valor realmente consiste en ofrecer al usuario, en base a la experiencia, al sentido común y al conocimiento de la tecnología una solución o conjunto de soluciones que vayan dirigidas a obtener un sistema que alcanzando las expectativas del usuario sea más óptimo, más productivo, menos complejo y más mantenible.