BLOG

El mantenimiento de aplicaciones es un gran negocio

Por [N4] jarboleya el | 6 Comments

Todo lo que tienes que saber y más sobre como convertir el mantenimiento de aplicaciones en tu mayor negocio.

El mantenimiento de aplicaciones es un gran negocio

Javier llevaba 6 horas sin levantar las manos del teclado y el ratón, con los ojos enrojecidos y un gesto de profunda frustración.

Después de año y medio en el departamento de soporte ya estaba acostumbrado a jornadas maratonianas, pero no estaba preparado para lo que le estaba pasando.

Aquella llamada había sido diferente, le había llamado directamente el Gerente del mejor cliente de la compañía, y aunque con buenas formas le metió toda la presión que se puede meter a un desarrollador joven que debe encargarse de resolver un problema en su aplicación con la mayor urgencia.

De no resolverlo ya, su cliente podría perder una operación de millones de euros.

-¡Maldita sea! ¿Por qué ha tenido que ser hoy que estoy solo en el departamento?, pensaba Javier.

Ahora ya no le hacía ninguna gracia la conversación del pasado viernes cuando fueron a tomar unas cañas después del trabajo para despedirse, pues se quedaban de vacaciones todos sus compañeros, y entre risas afirmaron que tendrían sus teléfonos de empresa apagados hasta la vuelta.

-¡Joder! para eso sí que han sido coherentes con sus palabras. Ninguno estaba localizable.

Javier estaba solo ante el peligro.

-Como no lo resuelva hoy mañana se va a montar una muy gorda en esta empresa- le repetía su cerebro una y otra vez.

En el tiempo que llevaba buscando la solución ya le han llamado 4 veces, diferentes personas. La presión crece por momentos, y cada vez está más nervioso.

-¡Por favor!, que no vuelva a sonar el teléfono, pensaba mientras otra gota de sudor resbalaba por su frente.

-Necesito un milagro, porque el tiempo se me acaba y ese maldito proceso hace de todo salvo lo que tiene que hacer. “Está programado con el c…”

-¡Si pillo al que lo programó…!

-Hace 3 horas, cuando tenía más tiempo tenía que haber tomado la decisión de reescribirlo entero, seguro que estaría más cerca de la solución. Pensaba Javier tratando de convencerse a sí mismo de una falsa realidad.

Esta historia no pinta bien, ¿verdad?

Así es la vida de cualquier programador, hay días maravillosos y días que son una auténtica pesadilla como el que está teniendo Javier.

Todos los que programamos sabemos que las aplicaciones son como lo seres vivos: nacen, crecen, se desarrollan, tienen achaques, se recuperan, y finalmente se mueren en un soporte magnético donde se hizo la última copia de seguridad.

El eslogan podría ser ¡Un software sin mantenimiento está muerto!

Bien.

La conclusión detrás de esta historia es que el mantenimiento de las aplicaciones es mucho más importante de lo que pueda parecernos.

Y con esta piedra volveremos a tropezar una y otra vez. Cuando nos pilla la tormenta nunca tenemos un paraguas a mano para resguarnecernos de la lluvia.

Cosas del destino, mientras estoy escribiendo este texto me acaba de llamar mi esposa para que vaya con todos los paraguas que hay en casa a buscarla porque les ha pillado una fuerte lluvia a ella y a unos cuantos más. En su defensa he de decir que no estaba prevista lluvia y estamos en agosto.

-Si es que cuando primero lo pienso, ¡boom!, primero pasa. En fin.

-Que digo yo que menos mal que estaba donde tenía que estar para hacer las labores de mantenimiento en sus vidas y acudir con una solución rápida y adecuada en el momento más necesario.

De eso trata el mantenimiento de las aplicaciones. Hay quien lo compara con un seguro, y tiene toda la razón. Parte del valor de un mantenimiento tiene que ver con ese concepto, pero hay muchas más cosas que vamos a ir viendo.

Voy a compartir contigo un montón de ideas que espero te sirvan para mejorar la rentabilidad de tu negocio, y sobre todo evitar cometer errores que siempre suponen fuertes dolores de cabeza para ti y para tus clientes.

Muchos de esos errores los conozco bien porque los he cometido y vivido en primera persona.

No te voy a aburrir contándote un montón de teoría sobre los tipos de mantenimiento que existen y cuya definición puedes encontrar en decenas de artículos por internet. Pero sí necesito enumerarlos y acompañarlos de ejemplos prácticos y comentarios de interés.

Mantenimiento preventivo

Mantenimiento preventivo

Su objetivo es que te adelantes a los posible problemas y ponerles remedio antes.

-¡Jaja! Esto es igual que los billetes de 500€ que dicen que existen pero nadie los ha visto. Bueno algunos sí, tienen bolsas de basura llenas.

Por ejemplo podríamos preparar procesos de auditoría de los cálculos que se realizan en las tablas, y planificar su ejecución diaria para detectar posibles errores.

A ver, la idea es buena, pero todos sabemos que a la hora de priorizar las tareas a meter en el sprint siempre habrá algo más importante y urgente.

Salvo cuando se detecte que ese problema ha ocurrido. En ese momento se hará de forma urgente. Pero claro ya no será preventivo, tendrá otro nombre.

Mantenimiento correctivo

Mantenimiento correctivo

Es tipo de mantenimiento es el encargado de resolver los errores de programación.

A diferencia de las matemáticas o la música, la informática es una ciencia inexacta en la que Murphy y sus leyes, campan a sus anchas.

En definitiva, que los programadores nos equivocamos, sí, ¿qué pasa?

El que sea capaz de programar una aplicación de cierto tamaño y asegurar que no hay ningún bug que tire la primera piedra.

Este es un gran problema para los desarrolladores de software, porque es algo que nosotros tenemos claro, pero que resulta complicado de entender por nuestros clientes.

Es difícil explicarle a un cliente que tiene que pagar para que corrijamos un error que nosotros mismos hemos cometido. No parece tener mucho sentido.

-El cliente tiene razón. Pensarás.

Por este motivo hay muchas empresas que el mantenimiento correctivo lo realizan “gratis”. Y lo pongo entre comillas, porque hay muchas formas de envolver esa gratuidad.

Este mantenimiento es polémico porque es fácil de malinterpretar por ambas partes.

Por ejemplo, no es tan raro llegar a discutir un funcionamiento de la aplicación que para el cliente es un bug (corrígemelo gratis) y para el desarrollador una funcionalidad no desarrollada (horas a cobrar).

Lo bueno es que más adelante te voy a contar cómo puedes evitar que estas cosas pasen y no poner en riesgo la buena relación con tu cliente.

Te daré la solución para convertir el problema en un beneficio para ti y tu cliente.

Mantenimiento evolutivo

Mantenimiento adaptativo/evolutivo

Su objetivo es añadir nuevas funcionalidades o cambiar la existentes.

Es el más habitual.

-Quiero poder grabar en el transportista la matrícula de su camión, ¡ah! y que cuando entre en fábrica leas la matrícula del camión y en ese momento imprimas la orden de carga. Vamos algo sencillo que te llevará 5 minutos. Te dice el cliente.

¿Cuántas veces nos ha pasado esto? El cliente además de decirnos lo que necesita, también es capaz de estimar el tiempo que tardamos en desarrollarlo. ¡Impresionante!

Lo curioso es que es bastante habitual que cuando el cliente piensa que lo podemos desarrollar en 5 minutos lleve muchas horas y lo contrario cuando piensan que es algo muy complicado lo podemos resolver en poco tiempo.

En este tipo de mantenimiento también entran los cambios legales, fiscales, tributarios, etc. Es decir necesidades funcionales de la aplicación procedentes en su mayoría de las Administraciones Públicas.

Este tipo de cambios siempre hay que hacerlos con tiempo, porque te has comprometido a hacerlos dentro del servicio de mantenimiento.

No te puedes retrasar, que te pille el toro y entre en vigor una ley sin que tu cliente pueda cumplirla y acabe recibiendo una sanción.

Estas mejoras debes priorizarlas para ponerlas en producción en todos los clientes a tiempo.

Casi todo el mundo entiende que este tipo de mantenimiento es necesario, pero hay que hacer las cosas bien porque en este tipo de mantenimiento se esconden muchas trampas.

Trampas que nosotros mismos nos generamos o que no vemos venir, y cuando nos caen encima de la mesa ya es tarde. Recuerda que esto siempre termina igual, generando un conflicto con nuestro cliente.

Te contaré como evitarlo.

Mantenimiento perfectivo

Mantenimiento perfectivo

Son cambios orientados a mejorar el rendimiento de la aplicación o la compatibilidad con nuevos dispositivos, sistemas operativos o estándares.

¿Te acuerdas lo que comentamos en el preventivo? Sí, pues puedes aplicarlo de nuevo, porque mientras la aplicación funcione bien nadie va a priorizar este mantenimiento.

Solo cuando se convierta en una necesidad urgente se suelen tomar cartas en el asunto.

Resumiendo, el mantenimiento por excelencia es el mantenimiento evolutivo seguido por el correctivo, todo lo relacionado con el mantenimiento preventivo o perceptivo tiene baja prioridad y difícilmente llega a hacerse.

Soluciones

Mantenimiento ¿Cuándo lo vendo?

¿Cuándo tengo que venderle el mantenimiento al cliente?

Lo mejor es hacerlo en el momento de la venta inicial. Clarito, clarito desde el primero día, con la máxima transparencia.

-Es que yo no quiero decírselo antes de venderle la aplicación por si le parece caro

¿Cómo? ¿Quieres engañar a tu cliente?

Una venta es el resultado de una relación de confianza. Por lo tanto desde el primer momento debes dejarle claro a tu cliente, salvo que ya lo sepa, que el software es un producto vivo, que no solo tiene que crearse, además tiene que evolucionar igual a la par que lo hace su empresa, sus negocios y sus requisitos.

Si tu cliente te dice que el solo quiere pagar una vez por la aplicación, aunque le cueste más, pero que no está dispuesto a seguir pagando un mantenimiento después de la puesta en producción, solo hay dos opciones: hablar con el cliente y que él termine comprendiendo que el mantenimiento es necesario y lo veo como algo beneficioso para su negocio, o decirle que no le vendemos porque no es el perfil de cliente con el que nos gusta trabajar.

¡Eh! y no pasa nada, a por otro cliente sin mirar atrás.

No te engañes, si un cliente no quiere pagar mantenimiento y solo está dispuesto a pagar por el desarrollo inicial te está llevando a un terreno de juego donde no puedes ganar.

Acabarás escuchando la famosa frase de “por lo que he pagado lo quiero todo”.

Así que huye de ese tipo de cliente porque de lo contrario vas a perder mucho tiempo y dinero discutiendo si su necesidad estaba o no especificada en los requisitos iniciales.

Mantenimiento ¿Cuándo lo facturo?

¿Cuándo debes empezar a facturar el mantenimiento

Hace dos meses me compré un coche nuevo al que le añadí como extra unas llantas de 17”, ¡súper deportivas!, pero como no estaban disponibles todavía no me las cobraron.

La semana pasada llevé el coche al servicio técnico oficial porque había alcanzado los primeros 15.000 kilómetros y le tocaba hacer el primer mantenimiento.

¿Crees que no me cobraron el mantenimiento porque todavía no había llegado las llantas?
Pues claro que me lo cobraron. Parece lógico ¿No?
Y cuando lleguen las llantas, me las pondrán y me las cobrarán.

Pues entonces ¿Por qué cuando vendemos software con mantenimiento no lo hacemos igual?

Si vendes un software estándar es más fácil fijar plazos, ya que normalmente este tipo de software se pone en producción bastante rápido.

En ambos casos “software a medida” o “software estándar” debes comenzar a facturar el mantenimiento el día siguiente a su puesta en producción.

Cuando vendes “software a medida”, debes fijar con el cliente cuál será el MVP o alcance mínimo para la puesta en producción, aunque no esté la aplicación 100% terminada.

Eso no implica que no vayas a terminarla en su totalidad, sino que al poner en producción una parte conseguimos entregar valor al cliente en un menor plazo.

Aunque tengamos partes del desarrollo contratado pendientes de entregar, y lógicamente también de cobrar, debes facturar ese mismo mes el mantenimiento.

Sí la puesta en producción es el día 15 del mes, le cobraremos el 50% del precio de mantenimiento, o el 50% de la parte proporcional de mantenimiento correspondiente al porcentaje de aplicación entregado o la parte proporcional respecto al número de usuarios finales de la aplicación.

¿Por qué hay que hacerlo así?

Porque en el momento que está en producción, aunque solo sea con un usuario, empezarán a producirse necesidades típicas del mantenimiento tanto correctivo como evolutivo. Y aunque sea en menor medida ya hay que atenderlo, y esto afectará al equipo que está desarrollando la aplicación.

En realidad los buenos desarrolladores saben que el mantenimiento de las aplicaciones no se inicia una vez puesta en producción, empieza mucho antes.

Desde el punto de vista del equipo de desarrollo, el mantenimiento nace desde el día 1 de inicio del desarrollo.

Cada línea de código que escribimos debe estar mimada pensando en que nosotros mismo u otro desarrollador puede necesitar revisar ese código para hacer alguna corrección o mejora en el futuro.

Aumentar la calidad del código reduce el número de incidencias y facilita un mantenimiento más rápido lo que redunda en una mejor experiencia del cliente.

Mantenimiento - problemas + beneficios

Anticípate a los problemas y convertirás problemas en beneficios

Si por algún motivo no le cobras mantenimiento a un cliente, puedes encontrarte con el serio problema de que te llame diciendo que su aplicación falla.

Puede ocurrir que lo que comenta el cliente sea un bug, pero ¿Qué pasa cuando para el es un fallo de la aplicación y para ti una funcionalidad no programada?

-Buenos días Javier, soy Fernando de Clientela SA, acabo de probar el botón de enviar factura, he visto el email que se envía al cliente y está fatal, tienes que corregir ese bug urgentemente.

-Buenos días Fernando, perdona el texto que lleva el email es un texto estándar que ponemos siempre a todos los clientes.

-Javier, servirá para todos los clientes, pero para mí no sirve. Así que es un error y me lo tienes que corregir gratis.

-Fernando, cuando analizamos la aplicación no me pasaste ningún texto, si lo hubieses hecho en ese momento ahora estaría como tu quieres, pero eso no es un bug es un cambio sobre la funcionalidad actual de la aplicación.

-Javier, no te pasé ningún texto porque no me lo pediste y tampoco soy adivino, ahora lo veo por primera vez y te repito que esto no sirve, es más, hasta tiene faltas de ortografía. No me parece normal que estemos discutiendo algo que parece tan obvio que es un error.

-Fernando disculpa, un error sería que si pulsas el botón no se enviase el correo, yo no digo que no quieras cambiar el texto, pero no es error es un cambio que te haremos y lo imputaremos como horas de mantenimiento evolutivo.

¿Te suena familiar?

Está claro, Houston tenemos un problema. Porque si ninguno de los dos cede se romperán las relaciones y si alguno cede el que lo haga tendrá una espinita clavada pendiente de devolverla en cuanto le sea posible. Vamos que la cosa no pinta bien.

Por ese motivo es “tan importante” vender con mantenimiento y que el cliente lo tenga claro desde el principio. Aún así, como habíamos comentado anteriormente el cliente no sabe programar y no tiene por qué discernir entre lo que es un bug, una funcionalidad no programada o una mejora evolutiva.

Pongamos solución a este problema y vamos a tratar de evitar todo conflicto.

Podemos usar la misma técnica que asumimos de forma natural cuando compramos un coche. Todos los coches tienen un período de garantía. Eso sí, para que la garantía sea válida tienes que hacer rigurosamente las correspondientes revisiones y mantenimientos del coche en el taller oficial. Creo que todos hemos pasado por esa circunstancia y lo tenemos asumido porque nos parece lógico.

Bien. Pues vamos a aplicar el mismo criterio.

En el servicio de mantenimiento vamos a incluir todos los tipos de mantenimiento: preventivo, correctivo, adaptativo/evolutivo y perfectivo. Del precio ya hablaremos.

Debemos indicar al cliente que el mantenimiento correctivo es gratuito. Es decir, que le damos garantía de por vida de los desarrollos siempre que tenga contratado el mantenimiento.

Recuerda que habíamos dicho que si un cliente no está dispuesto a pagar el mantenimiento no es nuestro cliente objetivo. Si ya lo tiene asumido nosotros convertimos el mantenimiento correctivo gratuito en un beneficio para él.

De esta forma nunca tenemos que discutir si lo que ellos ven se debe resolver gratis o pagando, porque todo está incluido dentro del servicio.

Entonces te puede surgir esta duda ¿Qué pasa si el cliente me inunda con errores del aplicación?

Si realmente son bugs, le doy la razón al cliente, ponte las pilas y ¡programa mejor!, porque una cosa es que aparezca algún bug de vez en cuando y otra que todos los días aparezcan varios.

Es cierto que tras la puesta en producción de una aplicación hay un par de meses críticos donde esto es fácil que pueda suceder, y de forma gradual deberían reducirse en el tiempo.

Mantenimiento ¿Lo incluyo todo?

¿Cómo voy a incluir todos los mantenimientos?

Tenemos que delimitar que cubren cada uno de los mantenimientos, por ejemplo:

En el mantenimiento perfectivo debemos indicar que daremos compatibilidad con los sistemas operativos donde corre la aplicación, por ejemplo si se puede ejecutar en Windows, el mantenimiento no va a incluir que también se ejecute en Android.

Pero hay un riesgo, que pasa si mañana mi plataforma de desarrollo no me permite dar soporte a Windows de 128 bits, y tengo que quedarme en Windows de 64.

Para evitar este problema debes dejar claro en el contrato de mantenimiento que te comprometes a dar soporte en base a la plataforma de desarrollo con la que está programada la aplicación.

Porque está claro que si tienes que reprogramar toda la aplicación en otra plataforma o lenguaje no estamos hablando ya de mantenimiento.

Por este motivo es tan importante apostar por lenguajes y plataformas de desarrollo estables y que tengan una garantía de continuidad.

Yo llevo 20 años trabajando con Velneo porque es garantía de evolución tecnológica constante y estable.

En este tiempo he visto llegar muchos clientes desde muchas herramientas que han quedado obsoletas o han sido abandonadas por el fabricante, y en muchos casos hablamos de grandes multinacionales como Microsoft o Google.

El mantenimiento preventivo no supone mayor problema ya que es raro que el cliente solicite ese tipo de mejora.

Se puede usar con clientes que apenas usan el mantenimiento. Este tipo de cliente agradece la estabilidad, por lo que estas mejoras preventivas las valorará positivamente.

El mantenimiento correctivo es la garantía que ofrecemos como fabricante software, recordemos que es gratuita para el cliente final, ya que la ofrecemos como garantía.

Si un cliente te pregunta que por qué tiene que pagar el mantenimiento para tener esa garantía le puedes indicar que una aplicación puede fallar por muchos factores difíciles de controlar como los virus, errores de hardware, instalación de software que afecta al sistema operativo, etc.

Por ese motivo es necesario disponer de un servicio de mantenimiento integral que cubra cualquier problema.

Y aquí una advertencia.

Si también le vendes el hardware al cliente entonces ya tienes asumido que pase lo que pase te van a llamar.

Si no le vendes el hardware es posible que el cliente te llame para cualquier problema que tenga, incluida la cafetera. Educadamente debemos desde el primer día dejar claro que solo damos asistencia técnica de nuestra aplicación, no la damos ni de ofimática, ni de aplicaciones de correo, ni de ningún software que no sea nuestra aplicación.

El mantenimiento adaptativo/evolutivo es el más valorado por los clientes ya que les hace sentir que tienen cubiertas sus necesidades a medida que van apareciendo.

Pero… tiene trampas implícitas que debemos evitar a toda costa para conseguir que el servicio de mantenimiento sea bueno para el cliente y rentable para mi negocio.

Mantenimiento ¿Cuántas horas dedico?

¿Cuántas horas le puedo dedicar al mantenimiento?

El mantenimiento normalmente es una cuota fija mensual.

El mantenimiento tiene una gran similitud con un seguro, es el seguro de tu aplicación.

-Nunca se me olvidará la frase que me dijo el CEO de una empresa a la que le había desarrollado su ERP y a la que le hacía el mantenimiento.

-Jesús, te pago para no verte, me dijo.

-Ya sé que no soy guapo, ¡pero tanto como para no querer verme!, le respondí yo riéndome.

-Es que si estás aquí es que tenemos algún problema, me respondió

-No siempre, no siempre, a veces vengo a instalaros cosas nuevas que pedís…

Pero aquí hay un riesgo a evitar, que el cliente cuando contrata el servicio se quede con la sensación de que puede pedir lo que quiera cuando quiera, porque está incluido en el servicio.

Y esa frase es relativamente cierta.

Puede pedir cuando quiera, dentro del horario de mantenimiento.

Y puede pedir lo que quiera, pero en el mantenimiento solo estará cubierto hasta un número de horas definidas.

Es muy importante dejarle claro al cliente cuantas horas mensuales están incluidas en el servicio de mantenimiento.

Es normal que haya clientes que usen el mantenimiento todos los meses, pero no es extraño que haya clientes que no lo usan durante meses.

Para ser justos, lo mejor es contemplar la liquidación del consumo de las horas anualmente. Te pongo un ejemplo:

Un cliente contrata el servicio de mantenimiento que incluye 10 horas al mes. 120 horas al año.

Este cliente durante 11 meses no consume nada, pero en el mes 12 te solicita una mejora que requiere 100 horas de desarrollo.

¿Qué debes hacer en ese caso?

Pues lo lógico es decirle que sí, que harás ese desarrollo porque realmente ha consumido incluso 20 horas menos de las que tiene contratadas.

En estos casos es bueno aclarar al cliente, que el desarrollo está incluido dentro del mantenimiento porque durante meses no ha consumido horas, pero que se suelen distribuir en 10 horas al mes para gestionar mejor la carga de trabajo, porque si ese mes hacen eso varios clientes tenemos un problema.

Normalmente este tipo de clientes asumirán que esas 100 horas las hagamos durante varios meses, y no en un solo mes.

No todos los clientes son iguales en cuanto a requisitos, evolución y necesidades. Cada aplicación tiene su tamaño, características, complejidad, etc. Además, cada aplicación en cada cliente tiene un número de usuarios que también afecta a la cantidad de horas de mantenimiento.

Por lo tanto debemos ajustar los mantenimientos a todas estas circunstancias.

En aplicaciones estándar se suele tener un precio fijo de mantenimiento por módulo de la aplicación de usuario. Por ejemplo:

– Cada usuario de contabilidad: 10€ /mes, incluye 1 hora.
– Cada usuario de gestión: 20€ /mes, incluye 2 horas.
– Cada usuario de nóminas: 30€ /mes, incluye 3 horas.

En las aplicaciones a medida se puede seguir el mismo criterio o fijar un número de horas y el precio.

Mantenimiento ¿Si piden demasiado?

¿Qué pasa si me piden una mejora que lleva más horas de las contratadas?

Este es un caso que debe estar contemplado en el contrato de mantenimiento para evitar que no haya dudas ni problemas cuando suceda, ¡que sucederá!

Por ejemplo, tenemos un cliente tiene un contrato de mantenimiento de 20 horas al mes para su aplicación que incluye gestión, contabilidad, almacén y producción.

Eso supone que tiene un pack de 240 horas anuales.

Nos llama y nos indica que quiere que desarrollemos un módulo de recursos humanos.

Lo analizamos con el cliente y hacemos una estimación de 400 horas de desarrollo.

¿Cómo debemos gestionarlo?

Como ya lo tenemos contemplado en el contrato que esto no está cubierto por el mantenimiento se gestionará como un desarrollo nuevo y se le facturará en base a las entregas que vayamos realizando.

Puede ocurrir que sea un cliente de los que no consumen horas y que lleve 10 meses sin consumir horas, en ese caso y siempre de mutuo acuerdo se pueden asumir de las 400 horas, 200 de mantenimiento y las otras 200 facturadas a parte.

Esto es algo que si lo hacemos debe ser para que el cliente quede súper satisfecho con nosotros, es decir, tenemos que venderlo bien para que lo valore en su justa medida, porque realmente no hay una obligación contractual para hacerlo.

Mantenimiento más beneficios

Precio especial y priorización, más beneficios del mantenimiento para tu cliente

Otro beneficio del mantenimiento que debemos vender bien para que se valore en su justa medida es que mientras tenga contratado el servicio de mantenimiento cualquier desarrollo nuevo fuera del mismo tendrá un precio/hora especial. Es decir se beneficia de un descuento.

¿Qué descuento?

Cada maestrillo tiene su librillo. El que veas más adecuado: 5%, 10%, 20%. A más horas también le puedes hacer un descuento mayor.

Otro aspecto a vender como un gran beneficio del mantenimiento es la atención prioritaria.

¿Qué significa eso?

Si tienes clientes con mantenimiento y sin mantenimiento (cosa que no deberías, pero que a veces pasa). Todas las semanas recibes soportes, llamadas o emails de clientes que requieren una prestación del servicio.

A los clientes con mantenimiento siempre hay que darles prioridad, aunque tengas ya un soporte en marcha, si es de un cliente sin mantenimiento, se paralizar y hay que ponerse con el soporte del cliente de mantenimiento.

Si tienes desarrollos nuevos en marcha y hay un soporte urgente de un cliente de mantenimiento hay que darle prioridad y resolverlo primero.

Eso es lo que debemos vender como parte del servicio de mantenimiento. Son clientes VIP, clientes por los que lo dejamos todo para atenderlos.

¿Y si tengo soportes de clientes y todos tienen mantenimiento?

Pues en ese caso, los soportes se atienden por riguroso orden de llegada.

Con la salvedad de que las urgencias como es el caso de un aplicación parada o un usuario que no puede trabajar debe tener una atención inmediata.

Mantenimiento tiempo de respuesta

¿Cuál debe ser el tiempo de respuesta?

El cliente siempre te dirá, cuanto más rápido mejor. ¡Lógico!, yo también lo pienso y lo digo.

Atender las necesidades de un cliente lo más rápido que puedas siempre será sinónimo de un buen servicio.

Ahora bien, hay que diferenciar claramente lo que es una respuesta de lo que es una solución.

¿Qué piensas cuando pones un soporte y te llega un correo indicando que hemos tomado nota de su consulta y le atendermos lo antes posible?

Lo primero que pienso es. Bueno no me han solucionado nada, pero al menos ya sé que la consulta ha llegado a destino. ¡Gracias!, sigo esperando más tranquilo.

Hay mucho servicio que por contrato indican que la respuesta “no automática” se realizará en las siguientes 48 horas, sin contar los días festivos. Otros reducen ese plazo a 24 horas.

Los buenos servicios suelen responder en menos de 4 horas. Y dependiendo del horario de la consulta, porque no todos son servicios 24 horas y 7 días a la semana, puedes recibir respuesta en menos de 2 horas.

Por lo tanto para no pillarte los dedos deberías fijar en el contrato un tiempo de respuesta de entre 24 y 48 horas, según el tipo de clientes y software que desarrollas.

También es muy diferente tener que atender a 100 clientes que a miles de clientes. En esos casos el servicio es mucho más impersonal y frio.

Si tu servicio es con un grupo reducido de clientes, la atención será mucho más directa y cercana. Eso siempre ayuda y genera más confianza.

Un tema delicado y que debemos gestionar bien son los niveles de soporte.

Por ejemplo. Pones un ticket te atiende el becario, no se aclara. Le respondes, le pasa el ticket al junior, se aclara algo más pero no lo resuelve, y el hilo del ticket sigue creciendo y entonces acabas hablando con el senior que por fin ya te entiende y te lo resuelve.

¿Cuál es el problema?

Es probable que hayas tenido que contar 3 veces o más cuál era tu problema, necesidad o duda. Y eso desgasta.

Por eso es necesario que si tienes establecidos varios niveles de soporte, la información fluya bien y que los compañeros cuando se van pasando el ticket se comuniquen entre ellos evitando que el cliente tenga que repetir sus palabras más de una vez.

Si el ticket llega a un nivel que requiere pruebas, o programación. Es conveniente informar al cliente que su ticket ha pasado a ese estado y que se pueden tardar días en resolver, y que se la mantendrá informado de los avances.

Las palabras que no se las lleve el viento. Si quedamos en informar ¡Hay que informar!

Y si la resolución del ticket se complica ¡Hay que informar!

Siempre una comunicación a tiempo evita muchos problemas.

Mantenimiento los medios

¿Cuáles son los mejores medios para prestar el servicio?

El mejor medio es el presencial. Pero eso es muy caro para ti a nivel de costes y para el cliente porque al final se le acaba repercutiendo.

El segundo mejor en la clasificación de mejores medios es la llamada telefónica. De momento y hasta que los chatbots y la IA no consigan suplantarnos, lo mejor es hablar directamente con una persona. El resto de medios son muy fríos, y en muchas ocasiones dan lugar a malas interpretaciones de los textos.

El tercer medio más eficaz es tener integrado el soporte en la propia aplicación. Es decir, que desde una opción del menú de la aplicación se conecte a tu software de gestión de tickets y directamente puede enviar sus dudas, consultas, incidencias detectadas o solicitudes de mejora.

El cuarto mejor sistema es usar una plataforma especializada como Zendesk o similar. Estas plataformas te permiten buscar en la base de conocimiento posibles respuestas y ayudas, en caso de no encontrar una solución puedes abrir un ticket del que puedes hacer total seguimiento. Además, te enviará notificaciones automáticas.

El correo es el medio menos eficaz de todos, porque las bandejas de correo, los spam, y otros muchos problemas de productividad. Aunque realmente las consultas y respuestas llegan igual la experiencia de usuario es mucho más pobre.

¿Qué hay que hacer cuando el hilo de un ticket se alarga con muchos mensajes?

Esto es algo que genera mucha frustración.

Pones un ticket.

Te responden con preguntas para que aclares mejor el soporte.

Respondes.

Sigue sin estar claro, no logran entenderte o no consiguen reproducirlo.

Te vuelven a preguntar.

Y así unas cuantas veces más.

¿Qué pasa por la cabeza del cliente?

Estoy cansado de explicarme y que no me entiendan. Yo creo que me están dando largas. Estoy pensando en cerrar el ticket y pasar de todo.

¿Qué pasa por la cabeza del desarrollador o la persona de soporte?

Otro cliente más que cree que soy adivino. Nunca pone la información que le pido. Le hago tres preguntas y no me responde a ninguna. Es imposible resolver la incidencia con la información que tengo.

¿Te suena verdad?

Seguro que nos ha pasado y probablemente en ambos bandos.

Lo que pasa es que explicar las cosas en un texto es muchas veces complicado. Si trabajar con clientes de diferentes países, aún más. El idioma siempre es una barrera. Incluso en países con el mismo idiomas la forma de expresarse y la cultura es muy diferente y eso se nota en la comunicación.

Poder enviar imágenes o vídeo es un gran avance que facilita el entendimiento del problema y agiliza la resolución. Pero no siempre los usuarios de tus clientes saben como hacerlo.

¿Qué hay que hacer en estos casos?

¡Llama a tu cliente!

No esperes a que el hilo del ticket llegue al cuarto mensaje. Si después el segundo mensaje no está claro debes encender la alerta naranja, y si en el tercer mensaje no has avanzado, ¡alerta roja!

Llamando al cliente todo es mucho más fácil, todo fluirá mejor.

Hay 2 problemas a tener en cuenta:

El primero es que para poder atender al cliente telefónicamente debes tenerlo incluido en el servicio de mantenimiento. Pero si no es así, yo te recomiendo que le llames de todas formas porque los dos ahorráis tiempo y dinero.

El segundo problema es que las llamadas si no las gestionas bien se pueden alargar mucho. Porque el cliente aprovecha que está hablando contigo para hablar no solo de la incidencia del ticket, sino de otros temas, del tiempo, y de la noticia del día, ¡ah!, y si es lunes de la victoria de su equipo de fútbol.

Para evitarlo debes cortar cualquier intento del cliente de hablar de otro asunto, y dejarle claro desde el primer momento que le llamas para hablar del ticket que estás gestionando. No siempre es fácil pero si lo haces a menudo te saldrá de forma natural.

En caso de que esté incluido el servicio de atención telefónica corremos el riesgo de que sea el cliente el que nos llame. En esos casos debemos, siempre con el máximo respeto, de intentar educar a los clientes para que solo llamen cuando tengan temas urgentes, y que para el resto de casos usen la plataforma o envíen un email.

Sea como sea vuelvo a repetir algo que a veces cuesta entender a los desarrolladores y personas de soporte. Una llamada a tiempo es una victoria, aunque no te guste llamar a los clientes.

Llama o escribe, pero informa siempre al cliente de que estás con su ticket.

Si no lo sabe, pensará que no estás haciendo nada, y se acabará desesperando. Mientras que si lo sabe se quedará tranquilo, aunque al final el tiempo de resolución sea el mismo.

Esto mismo pasa cuando quedas en entregar algo a un cliente, tienes un plazo que cumplir, pero por los motivos que sean ves que no llegas a tiempo. En el momento en el que lo sepas, le llamas y se lo explicas.

¿Sabes que pasará?

Nada, que tu cliente te dirá en la mayoría de los casos que acepta el nuevo plazo que le des, salvo que se lo retrases mucho, e incluso te agradecerá que le hayas avisado con tiempo.

Mantenimiento ¿Cuánto cobrar?

¿Cuánto debo cobrar por el mantenimiento?

Vamos a empezar con la fórmula sencilla.

Mantenimiento = horas de trabajo.

El precio de la cuota mensual de mantenimiento debe ser el resultado de calcular las horas incluidas al mes por el precio hora.

¿Cuál debe ser el precio hora?

Lo primero que tienes que tener establecido en tus tarifas es cuál es el precio hora que cobras por tus servicios: análisis, desarrollo, consultoría, soporte, etc.

Es posible que tengas precios diferentes para desarrolladores junior y senior.

El precio hora de mantenimiento debería ser un precio ponderado. Si van a trabajar diferentes personas con diferentes perfiles hay que calcular un precio basado en el porcentaje de tiempo de cada perfil.

¿Qué es la cuota fija?

Hemos dicho que el mantenimiento tiene unas características y aporta una serie de beneficios como son la priorización en la atención al cliente o un precio especial para desarrollos adicionales fuera del servicio.

Aunque el cliente no solicite nada un mes nosotros tenemos que tener disponible a personal cualificado y tiempo reservado de esas personas para atenderle en el momento que solicite el servicio.

Por otro lado si tu servicio incluye el desplazamiento a las instalaciones del cliente al menos 1 vez al mes si te llama, deberás tenerlo en cuenta en la cuota fija.

No es lo mismo un servicio de mantenimiento que se realice a través de una página web de soporte o contacto, que a través de un servio especializado como puede ser Zendesk o que tu servicio incluya la posibilidad de que el cliente te llame por teléfono o tú le llames a él para resolver un ticket. Esto hay que tenerlo en cuenta en la cuota fija.

Por lo tanto podemos fijar una cuota fija que deberán pagar todos los clientes y que podemos vender como la suma de los siguientes beneficios:

Cuota fija = Prioridad + Reserva de personas y tiempo + mantenimiento correctivo (gratis) + ¿Atención telefónica? + ¿Visita presencial?

¿Cuál es el precio final a cobrar?

Precio mensual servicio de mantenimiento = Cuota fija + (Horas mensuales x precio hora).

¿Y si no quiero contratar horas?

Es una posibilidad que podemos ofrecer a los clientes que quieren una cuota más baja porque apenas hacen uso del servicio.

El cliente paga la cuota fija todos los meses y el mes que hace uso del servicio se suman las horas que se le facturan adicionalmente en la factura del siguiente mes de mantenimiento.

Este sistema en realidad es bastante justo para ambas partes porque la cuota fija debe cubrir una parte importante del coste de las personas que prestan el servicio, y por otro lado todas las horas de trabajo se facturan, siempre que no se consideren de mantenimiento correctivo.

Ese es el problema de este sistema, que podemos volver a entrar en conflicto sobre qué es correctivo y cuando no lo es. Por eso es mejor que se incluyan siempre una horas fijas dentro de la cuota mensual del servicio, aunque sean pocas.

Por encima de todo debemos de ser profesionales serios y con ética.

Nunca hagas falso mantenimiento. Es decir, engordar las horas realizadas para cobrar más o poner como mantenimiento evolutivo algo que sea correctivo, porque si cruzas la línea ya nunca volverás a ser el mismo.

¿Por qué mensual y no anual?

Los servicios de suscripción mensual tienen dos ventajas, por un lado es un coste mucho más cómodo de pagar por el cliente y por otro es un servicio que se factura de forma continua todos los meses.

Los servicios de suscripción anual suelen requerir una renovación, que aunque sea automática al ser un importe mucho más elevado suele ser revisado por los clientes, y dependiendo de la situación de la empresa lo contemplan como un gasto más elevado.

Por ese motivo siempre que sea posible es preferible que les factures a tus clientes el servicio de mantenimiento mensualmente.

Mantenimiento el servicio más rentable

El mantenimiento puede ser el servicio más rentable de tu empresa

Para terminar quiero dejarte claro que las empresas más sólidas financieramente son aquellas que tienen ingresos recurrentes.

En las empresas que desarrollan aplicaciones el ingreso recurrente más importante suele ser el servicio de mantenimiento.

En el caso de que no cobres servicio de mantenimiento, tu negocio requiere que vendas nuevos clientes constantemente, y eso significa que ante un período de ventas irregular no puedas asegurar la continuidad de tu negocio por falta de ingresos.

Cuanto mejor sea tu servicio más fidelización conseguirás, y será más difícil perder clientes, pero eso es algo que en muchos casos no depende de ti.

Por eso aunque tengamos unos importantes ingresos recurrentes mensuales debemos seguir vendiendo a nuevos clientes, porque así podemos compensar las bajas que se puedan producir, y en caso de que no sean muchas hará crecer nuestro negocio.

Por lo tanto el mantenimiento es estratégico para tu negocio.

Piensa que si el porcentaje de ingresos del servicio de mantenimiento cubre los gastos de personal. Todos los meses los comenzarás con la garantía de que las nóminas están cubiertas, y eso es mucha tranquilidad.

Por ese motivo cada día son más las empresas que en lugar de vender sus aplicaciones por una compra única prefieren venderlas en modo de alquiler, es decir, una suscripción mensual que lleva implícita tanto la compra del producto como el servicio de mantenimiento.

Y esto nos termina llevando a el por qué cada vez hay más aplicaciones que se venden en modelo SaaS (software como servicio).

Te enumero algunas ventajas.

No tiene un cargo inicial grande, porque realmente no tienes que comprar la aplicación. Incluso hay casos donde no hay un cargo inicial.

Al ser aplicaciones desplegadas en el cloud (la nube) no necesitas comprar un servidor, menos costes de instalación, mantenimiento de hardware, y menos problemas con el servicio.

Incluye los 4 mantenimientos dentro del precio mensual de suscripción.

Aunque te resulte difícil de creer es mucho más seguro que tener tu aplicación instalada en tus servidores.

Tiene el don de la ubicuidad, puedes acceder a tu aplicación desde cualquier lugar, cualquier dispositivo, y cualquier sistema operativo.

Las primeras aplicaciones en SaaS era para software estándar. Ahora ya se empiezan a desplegar muchas aplicaciones a medida.

En definitiva, es mucho más económico que el despliegue local (on-premise).

Pero esto del SaaS es un temas que dejaré para otro artículo.

Tus comentarios son un tesoro

Tus comentarios son un tesoro

Espero que si no lo estás haciendo ya, potencies al máximo el servicio de mantenimiento en tu empresa o negocio.

Si te ha gustado el artículo, déjame un comentario.

Sé que han quedado muchas cosas en el tintero y que seguro que puedes aportar, así que te agradezco que lo comentes.

Artículos relacionados

El por qué del mantenimiento de aplicaciones desarrolladas a medida.

Velneo es el entorno ágil para el desarrollo
de aplicaciones empresariales

DESCARGAR VELNEO

6 Responses to "El mantenimiento de aplicaciones es un gran negocio"
  1. [N2] matcas dice:

    Muy completo el articulo. Se agradece

  2. Muchas Gracias Matías.

  3. [N2] atondo dice:

    Excelente artículo, muy útil tanto para empresas, como autónomos, que llevamos adelante todas esas tareas.

  4. Muchas Gracias. Atondo.

  5. Muchas gracias Jesús, es un tema con el que estábamos luchando y este articulo nos aclara el panorama.

  6. Muchas Gracias Carlos.

    Como decía Atondo todo lo que cuento en el artículo puede ser útil para cualquier perfil. Yo mismo he pasado por todos los casos. He trabajado en varias empresas que hace casi 40 años ya cobraban mantenimiento, era su seguro económico. He sido autónomo y desde el primer clientes he tenido ingresos recurrentes apoyados en el servicio de mantenimiento y también he tenido empresas con donde los ingresos más importantes siempre estaban basados en los mantenimientos.

    Cualquier empresa o autónomo debe pensar en el largo plazo, en ofrecer los mejores productos y servicios, con calidad y dedicación, y eso siempre está reñido con tratar de competir en precio a cambio de un peor servicio. Si queremos tener clientes con relaciones duraderas tenemos que pensar siempre en aportar valor tanto en la venta como sobre todo en los servicios de mantenimiento.

Deja un comentario

Esta web utiliza cookies. Si continúa navegando acepta dichas cookies y nuestra política de cookies. Gracias. ACEPTAR

Aviso de cookies