De acuerdo con la Wikipedia, outsourcing es “el proceso económico por el cual una empresa determinada mueve la dirección y/o la ejecución día a día, de ciertas tareas en una empresa externa, mediante un contrato”. Obviamente esta definición cubre un amplísimo rango de productos y servicios. En un extremo estaría la filosofía del software como un servicio (SaaS), en el que una empresa contrata la ejecución de una solución tipo ERP o CRM, en el otro lado estaría la subcontratación del departamento de informática (IT) completo.

Esta claro que en nuestro País, y en general de toda Europa, en la pequeña y mediana empresa, prima la subcontratación del departamento de informática completo, lo que incluye no sólo las aplicaciones, su mantenimiento, soporte técnico y el hot-line, sino también todos los servicios de sistemas, como son la actualización y soporte de sistemas operativos, bases de datos, copias de seguridad, etc. etc. Y también, pero no menos importante, el desarrollo y adaptación de los programas subcontratados.

El outsourcing es uno de los términos inherentes a la globalización. Esencialmente las empresas subcontratan como una manera de reducir costos, pero no están perdiendo el tiempo en considerar su valor estratégico. Vital Roy y Benoit Aubert, en su excelente análisis sobre el outsourcing, “A resource-based analisys of IT outsourcing”, citaron algunos de los elementos menos tangibles del costo del outsourcing pero cuyo impacto es tremendo en los beneficios empresariales a corto y largo plazo.

El más interesante, desde mi punto de vista, es la pérdida de competitividad. Esencialmente en el mundo de hoy, extremadamente competitivo, las tecnologías informáticas son un elemento diferenciador y por tanto generador de valor.

Es curioso ver cómo en la pequeña y mediana empresa se está confundiendo compra de software, con outsourcing. Los directivos compran software en función de ese elemento diferenciador del que hablan Roy y Aubert, pero no utilizan los mismos conceptos a la hora de subcontratar sus departamentos de informática empresarial, que es lo que en la práctica está ocurriendo cada vez que se compra un programa en una pequeña o mediana empresa.

Las empresas españolas cambian de proveedor informático, de media, cada 3 años. Creo que este período tan corto de permanencia es debido a que, en el criterio de compra, no se está teniendo en cuenta que, cuando se compra software, en realidad se está subcontratando todo un departamento de una empresa. Y es fundamental contar en cada departamento de cada empresa con personas en las que se pueda confiar, profesionales, conocedoras del sector en el que se desenvuelve la empresa, y del sector concreto que se está dirigiendo. Y esto no se consigue a través de una relación puramente comercial.

El desarrollo de aplicaciones de gestión se debate desde hace años entre dos filosofías: los generalistas y los especialistas. Si bien últimamente ha aparecido una nueva categoría: Los frameworks. En la práctica todos desean construir la mejor escalera posible para subir desde la planta baja al primer piso de un edificio.

El framework aporta un nuevo concepto: existen varios escalones que pueden ser considerados ‘estándar’, y otros que pueden ser sustituidos a gusto del cliente, o comprados como un grupo. Por último, sólo algunos escalones deben ser hechos ‘en la obra’ completamente a medida. Esta filosofía tiene como ventaja, contra los programas generalistas monolíticos, que permite una gran adaptación a las necesidades del cliente. Aventaja a los programas especialistas en que habitualmente el framework en lo que respecta al módulo principal tiene un grado de terminación y calidad muy elevado, comparable al de programas generalistas con miles de horas/hombre de desarrollo. Además los framework procuran marcar unas pautas de integración visual y tecnológica a los programas que finalmente se construyen usando sus bien establecidos cimientos.

Sin embargo no todo es color de rosa. El framework no consigue competir con los programas monolíticos ya que en definitiva la escalera la han hecho varias empresas, y cada una de ellas quiere responsabilizarse únicamente de sus escalones lo que genera una tensión importante en el cliente, que no sabe quién es el responsable de que su sistema no funcione. Los escalones ‘estándar’ que se suponen hacen de base para otros no son tan sólidos como se espera, y los desarrollos sobre ellos no siempre tienen el éxito asegurado.

Por otra parte, cuando se compara el framework contra un programa especializado, este último tiene importantes ventajas finales, ya que el framework no deja de tener únicamente unos pocos escalones especializados, mientras que el otro proporciona una escalera completamente adaptada desde el primer peldaño.

El soporte técnico es un punto importante, el framework fracasa estrepitosamente en este punto ante las dos filosofías tradicionales, por un motivo básico: tanto el programa generalista, como el especialista, son soportados por agentes que únicamente tienen que conocer un programa, más o menos grande, pero uno sólo. Mientras que el soporte técnico del framework debe darlo un personal que debe conocer múltiples módulos diferentes y todos los problemas derivados de la interacción entre los diferentes módulos. Además de conocer cómo funciona el código especializado de cada tramo de escalera que han vendido a lo largo de su historia.

Otro punto conflictivo son las actualizaciones. Los modelos tradicionales evolucionan sus productos de forma completa, hay solamente un responsable final. El framework tiene enormes dificultades para evolucionar, cualquier cambio en los escalones bajos de la escalera afecta a toda la escalera. Lo que en muchas ocasiones provoca que el cliente tenga que acabar pagando la evolución tecnológica de los módulos que ha comprado, y el de rehacer los peldaños que se hicieron a su medida.

Finalmente el framework que promete unos costos bajos de propiedad termina fracasando en este aspecto también, no es raro ver propuestas de adaptación de varios miles de horas/hombre, lo que no deja de ser la negación de la filosofía en si misma, y la demostración de que los cimientos y la integración de nuevas características es al final un problema importante. A lo que hay que sumar las miles de horas necesarias para mantener, probar y evolucionar un software que finalmente quiere ser … un programa especializado.

Parece que últimamente las empresas y sus directivos están afrontando las inversiones en tecnología como si de gastos se tratase. La informática se ve como un gasto más, algo necesario para el funcionamiento de la empresa, como si de la electricidad o del agua se tratase. Esto puede ser así porque ha llegado un punto en que las empresas no se plantean su funcionamiento sin informática, de la misma forma en que nadie espera hacer funcionar una empresa sin electricidad en los enchufes. Como dirían los americanos es un ‘comodity’.

Sin embargo no nos hemos dado cuenta de que la informática, al menos hasta el día de hoy, no es algo que pueda comprarse, o alquilarse, y que resulte tan simple de usar como un enchufe: uno conecta una cafetera y funciona, listo! La informática sin embargo no es llegar y pegar, hay procesos de implantación, de mantenimiento, de formación, y un larguísimo etcétera.

Todo esto debe hacernos pensar a los informáticos en las verdaderas necesidades del usuario. Alguien que en realidad no quiere saber de la complejidad que conlleva generar la electricidad, ni de los controles que hay que operar o monitorizar para que nuestros enchufes tengan electricidad y podamos encender la tostadora por las mañanas, tampoco queremos saber nada de las inversiones necesarias para construir presas hidroeléctricas,  o del costo de una torre de alta tensión, ni de su mantenimiento. Sólo queremos electricidad en nuestras casas, y cuando sube el costo de producción, debe venir el estado a impedir una subida que nos afecte a nuestra economía. Ni que decir tiene que ante un apagón todo el mundo se molesta. Nadie ni quiere, ni puede, prescindir de las comodidades adquiridas.

Desde el punto de vista del usuario, la informática debe ser comprada y gestionada como se haría con la electricidad, el teléfono o el agua Se ha generado el mismo grado de dependencia, y se reacciona de la misma forma ante su pérdida, o mal funcionamiento. Por tanto, debe funcionar de la misma forma. Si se producen problemas con el sistema, se quiebra la confianza del usuario.

La calidad en el software es cada día más importante, es una realidad que debemos gestionar. Al usuario de nuestros sistemas se le exige una productividad cada día mayor, menos medios, más productividad, y eso sólo se consigue con sistemas altamente fiables y fáciles de usar.

Este término se aplica a los sistemas que permiten a un ser humano percibir la realidad y adjunto a ella, datos extra que pudieran ser necesarios para comprender el fenómeno u objeto que se está observando. Según este principio un sistema de realidad aumentada nos permitiría saber, mientras miramos por ejemplo La tour Eifel datos como la altura, peso, número de remaches, número de vigas, tiempo de construcción, número de personas necesarias para su construcción, incidentes, la historia del arquitecto, etcétera. Es casi como si tuviéramos un guía junto a nosotros, integrado en nosotros mismos, y cuyos conocimientos abarquen todos los aspectos del saber humano.

Desde un punto de vista conceptual es, simplemente fantástico, pero a día de hoy sólo están en marcha un puñado de proyectos de investigación en las mejores universidades del mundo sobre este tema, lo que no evita mi reflexión sobre este asunto, que me lleva a ver una aplicación posible de este concepto en el desarrollo de sistemas de gestión informáticos de empresas.

De hecho, bien mirado, un CRM no es más que un inmenso microscopio bajo el que ponemos a un cliente, para realizar análisis sobre él. Sin embargo, y es aquí donde un cambio de mentalidad puede ayudar, en lugar de analizar un bicho, para inferir su comportamiento, aplicándole corriente en una pata, para ver si mueve la cabeza. ¿Que tal un cambio de enfoque?, algo sutil, pero…. y si lo que hacemos es proporcionar la máxima información posible sobre los clientes que ayuden al observador a comprender el comportamiento del fenómeno bajo observación?

Esto no deja de ser un objetivo menos ambicioso que el de los CRMs actuales, pero no todos los estamentos de las empresas necesitan un sistema de predicción de comportamientos, sino únicamente un sistema que les permita percibir al cliente en toda su extensión, mientras navegan por la información relevante.

La diferencia es sutil, pero en la mayor parte de las ocasiones sólo hace falta una lupa, que presente la información más importante, pero que esté disponible en todo momento, que no sea necesario un procedimiento de búsqueda, es decir el sistema debe ser activo, y reaccionar antes de que su presencia sea requerida. Despertando nuestra curiosidad innata