Es muy importante la orientación al usuario. Yo creía entenderlo, pensaba que era acercarse al usuario, hacerle algunas preguntas, tomar requerimientos, elaborar un tedioso documento de requerimientos para comenzar a diseñar e implementar el sistema… ¡que inocente era!. Como muchos informáticos, estaba cerrado a las normas. Estaba más preocupado del CMM, ITIL, ISO en vez de preocuparme de lo que realmente necesitaba el usuario.
Gracias a dios, he tenido la oportunidad de trabajar en unidades usuarias. Eso me ha ayudado ver que quieren realmente los usuarios. Sobretodo al darme cuenta que el usuario por lo que general requiere soluciones simples y no mega aplicaciones del tipo “World Class” o “Enterprise” que tratan de vender la mayoría de gerencias TI.
Para muestra un botón. Había un usuario que quería efectuar un cálculo que involucraba reglas de negocio. En la gerencia TI pensaron inmediatamente… ¡compremos una herramienta Business Intelligence! Lo cual puede ser interesante, y probablemente resolvería el problema, pero despues de largos procesos de levantamiento de requerimientos, adquisición y adaptación de la herramienta al usuario.
¿Qué fue lo que hice en ese entonces? Me acerqué a la persona, y no le pregunté que quería. Sino que le pedí que me mostrara que es lo que hacía el en el día a día. Resulta que el cálculo era super simple, y lo único clave era poder obtener datos de un repositorio de datos para el efectuar operaciones que quedaban principalmente para el mismo. Por otra parte, mi colega (me carga el termino cliente o usuario, si somos de la misma organización) independiente de que herramienta estuvieran los datos. Tenía que ponerlos al final igual en una planilla Excel… O sea, su interfaz de usuario mas cómoda para el, era el Excel y era lo ideal para el evitar cambios en ese sentido.
. Así que ¡manos a la obra!. Le propuse lo siguiente, una planilla Excel donde pudiera definir los parámetros específicos para su cálculo, en el Excel el presionaba un botón para ejecutar el cálculo, el cual por debajo llamaba a un programa desarrollado en .NET que llamaba al servidor haciendo el cálculo. El programa recibía la respuesta y la escribía en un archivo .csv que lo leía el Excel y…. ¡voilá! ¡Los datos llegaban a su planilla! Para el usuario era magia, el solo definía un par de parámetros en el Excel hacía clic y le llegaban los datos. Una solución siimple y elegante, donde nos ahorramos horas de consulta, capacitación con empresas externas, además de la incomodidad que se genera al usuario de decirle que hay que sacarlo de su entorno familiar para pasar a una herramienta muy desconocida… En resumen, una solución más cercana al usuario que cumplía en forma práctica y eficiente con lo que el esperaba.
No critico a las herramientas BI, son buenas si son usadas apropiadamente. El problema son las unidades TI muy orientadas a solucionar todo poniendo herramientas. Sin estudiar realmente el contexto de negocio de la organización y su necesidad real. Se apoyan en nombres y marcas, sin analizar si es lo que hay que comprar, o desarrollar.
Debemos eliminar ese complejo del ingeniero de buscar la “mejor solución” respecto a un producto de una empresa. La mayoría de las veces, da lo mismo si usas la línea Oracle/Java o la linea Microsoft (.NET, SQL Server… etc), eso al usuario no le interesa y nunca le va a interesar. Entiendo a las unidades TI que el usuario puede ser odioso y muy cargante en casi la mayoría de las ocasiones. Pero es nuestra responsabilidad como Ingenieros de Software idear y crear la forma de solucionar sus problemas en forma práctica y eficiente.
¿Y tú? ¿Cuál ha sido tu experiencia respecto a la orientación al usuario? Te invito a que agregues tus comentarios: