La frase del título es ampliamente utilizada en muchas empresas que prometen satisfacer al usuario con los servicios que ofrecen. En el mundo real la frase no es del todo aplicada bien sea por las políticas empresariales, por la poca habilidad de los empleados que deberían satisfacer al cliente o porque simplemente los procesos de las empresas fueron diseñados de un modo que no se apegan a la realidad.

Pues bien, en el mundo del desarrollo de software también se lidia con la satisfacción del cliente. Muchas veces nosotros como ingenieros creemos que nuestra labor consiste en solo escribir código, montar los módulos y realizar un lanzamiento. El enfoque de aislarnos para escribir código dejando de lado las necesidades del cliente tiene un gran problema y se llama: Insatisfacción.

Software para humanos

Los ingenieros de software desarrollamos y producimos sistemas para ser utilizados por humanos, los humanos van desde el cliente, el que nos contrata incluso el que lo desarrollo y escribe el código llegando hasta el usuario final quien lo evalúa y es quien decidirá si es o no útil. Sin embargo, si nosotros no nos esforzamos por cumplir los objetivos y metas del cliente, este no será feliz. Y la realidad es que un cliente infeliz es alguien que no está a gusto con lo que le entreguemos.

No importa que tan impresionante sea los módulos, subsistemas o que tan bien este diseñado pero si el cliente no está feliz, significa que definitivamente tenemos un problema con nuestro enfoque.

¿Qué abarca la satisfacción del cliente?

La satisfacción del cliente es cambiante con el tiempo y con los requerimientos del sistema que se solicite. Sin embargo, no importa si existe un cambio de requerimientos o si el sistema se entrega y en el mantenimiento se solicitan cambios. Incluso si pasado los años el sistema se convierte en un sistema heredado, el cliente aún debe ser satisfecho.

No importa si el cliente solicita un requerimiento, y luego lo cambia o añade más cosas. No importa si pasado los 10 días de haberse entregado con el sistema funcionando el cliente solicita cambios, recuerda “el cliente siempre tiene la razón”.

¿De qué forma se puede asegurar la satisfacción del cliente?

Existen muchísimas herramientas que se han ido descubriendo con el paso del tiempo y que forman parte del estado del arte de la ingeniería del software. Con el tiempo básicamente se entendió y se descubrió que la clave está en aplicar las estrategias correctas en las fases de “toma de requerimientos” y “análisis”.

La premisa principal de dichas herramientas y estrategias es la misma: “Entender las necesidades del cliente”. Sin embargo no esperes que el cliente entienda y que incluso sepa que es lo que quiere, para ello se requerirá de varias reuniones y sobre todo un buen set de preguntas que lo ayudarán y orientarán para aclarar sus ideas. Muchos pensarían que el cliente y el usuario son los enemigos del software, porque tienen la fama de realizar peticiones de cambio inesperados, sin embargo es ahí en ese punto cuando demostramos que tantas habilidades y que tan buena es nuestra aplicación de la ingeniería del software.

En próximas entradas iré cubriendo más sobre las estrategias utilizadas para satisfacer al usuario y lo que “el buen software” es.