miércoles, 14 de noviembre de 2018

Pensamientos sobre el auge y riesgo de los robots software


Algunos de los últimos artículos de este blog los he dedicado a RPA (Robotic Process Automation), es decir, robots software que automatizan total o parcialmente procesos de negocio. En breve, dedicaré algún artículo también a los chatbots, voicebots, asistentes virtuales o, si se prefiere, interfaces conversacionales. Son dos tipos de soluciones que se encuentran en pleno auge como negocio y, desde luego, en lo mediático. Dos tipos de soluciones en que, personalmente, tengo mucho interés en la doble vertiente tecnológica y de utilidad para los negocios. Aunque todavía hay mucha información que quiero recopilar, asimilar y, sobre todo, estructurar, me ha apetecido hoy hablar de forma un poco genérica de la foto general y, muy en concreto, del auge y riesgo de los robots software.

Son pensamientos un poco improvisados, tal vez precipitados incluso, por lo que pueden ser sometidos a revisión y ampliación, pero he querido ir recopilando ya algunas ideas.

Razones para el auge de los robots software

Me pregunto: ¿Por qué ahora? ¿Por qué se encuentran tan de moda los robots software, el RPA y los chatbots en sus diferentes vertientes cuando, especialmente RPA, tienen antecedentes ya lejanos en, por ejemplo, las herramientas de screen scrapping?

Se me ocurren algunas razones.

  • Porque han aparecido productos bien empaquetados. Por ejemplo, el caso de RPA, aunque es cierto que desde un punto de vista tecnológico, muchos de sus elementos constituyentes ya existían hace años, lo cierto que es ahora, hace muy pocos años, cuando se han estructurado en productos completos, de alta calidad, atractivos. Eso democratiza el uso por ejemplo del screen scrapping que pasa a dejar de ser una solución casi oculta y para gurús, a estar al alcance de cualquiera. Y algo parecido sucede con los chatbots y con la aparición de herramientas tan sencillas como Dialogflow o Chatfuel.

  • Porque esos productos incluyen en su mayoría la filosofía del low-code, es decir de un tipo de desarrollo de software con pesudolenguajes de muy alto nivel, basados en general en atractivas y sencillas herramientas gráficas que apenas exigen conocimientos informáticos, al menos para el desarrollo de robots sencillos

  • Muy importante es también la intencionada caída de barreras de entrada para este tipo de aplicaciones. Por un lado caen las barreras de entrada económicas ya que algunas soluciones (por ejemplo, UiPath en RPA y lo smismo sucede con muchas herramientas de desarrollo de chatbots) incluyen versiones gratuitas de sus productos con muy buenas funcionalidades y el acceso a una formación también gratuita. Pero también una eliminación en las barreras de entrada del conocimiento y expertise, tanto por la facilidad de desarrollo (low-code) como por el fácil acceso a formación.

  • Mención especial requiere el desarrollo de la Inteligencia Artificial. Aunque tanto RPA como los chatbots pueden proporcionar soluciones muy interesantes sin usar inteligencia artificial, lo cierto es que los grandes avances de los últimos años en tratamiento de lenguaje natural, reconocimiento de imágenes, reconocimiento de voz, síntesis de voz, etc enriquecen sobremanera las capacidades de los robots. Se ha facilitado también hasta límites insospechados el acceso a librerías e incluso entornos de desarrollo de calidad con complejos algoritmos de inteligencia artificial, tanto porque existe mucho en software abierto como porque los grandes actores de la inteligencia artificial como IBM, Google, Microsoft, etc dan muchas facilidades para incorporar sus API en un afán por posicionarse en este más que atractivo segmento de soluciones.

  • Además, tanto RPA como los chatbots permiten el desarrollo muy rápido de soluciones útiles e incluso brillantes y afectando poco o nada a la base de sistemas instalados. Y eso elimina riesgos y encaja muy bien con esa tendencia a la búsqueda de los resultados a corto y los quick-win, a la innovación rápida e iterativa según inspiración lean startup y a la adopción de filosofías de base 'agile' que buscan resultados, quizá más pequeños, pero mucho más rápìdos e incrementales.

  • Y si, también voy a mencionar el marketing, ese marketing tecnológico que interesa adoptar a fabricantes de software y consultoras, que suelen hinchar las expectativas, mezclar conceptos y rebautizar tecnologías existentes pero que, sin duda, consiguen el efecto de llamada de atención y de contribución a catalizar mercados. Un marketing que, no de forma exclusiva, pero que sí ha prestado mucha atención a los robots de software especialmente en lo que a su vertiente de inteligencia artificial se refiere.

Puede que haya otras razones. Tal vez si lo pienso más o más despacio, se me ocurran otras o matice algo éstas, pero creo que el ramillete de razones expuestas ya explican bastante del auge de los robots software

Riesgos asociados a los robots software


Pero si. también veo riesgos y no me voy a referir al ya casi convertido en lugar común debate sobre si la automatización creará o destruirá empleo. No. Me voy a fijar en otros aspectos:

  • En primer lugar, me voy a referir al exceso de expectativas. En este caso, el marketing como factor negativo. Mucha de la literatura sobre los robots software, de la literatura superficial en medios digitales y blogs, pero también en la comunicación en eventos profesionales, está tan sobrecargada de promesas infundadas, de triunfalismos poco realistas y de conceptos tan y tan confusos cuando no erróneos, que puede conseguir un efecto boomerang en que la expectativas se conviertan en decepción y volvamos a un nuevo invierno de la inteligencia artificial que arrastre consigo al mundo de los robots software.

  • Se puede caer en el error también de olvidar que, en el fondo, los robots software, tanto RPA como chatbots son soluciones enfocadas, en cierto modo de nicho. Es decir, automatizan tareas concretas en casos concretos y donde tiene sentido, pero no se pueden considerar  soluciones generalistas de automatización extremo a extremo de procesos de negocio. Sin embargo, no estoy nada seguro de que todo el mundo tenga esto claro, ni siquiera entre profesionales de la tecnología. Y ese malentendido puede conducir a un empleo en situaciones inadecuadas, y por lo tanto con una estrategia avocada al fracaso, de este tipo de soluciones, muy especialmente RPA. De nuevo, el marketing triunfalista no ayuda a clarificar esta cuestión.

  • Dado que el mercado de los robots software es muy goloso, parece lógica la tentación de que las grandes empresas del mundo del software, digamos Oracle, SAP o Microsoft, quieran introducirse en el mundo de los robots software para lo cual, una opción posible es la compra de las empresas líderes (por ejemplo UiPath, Automation Anywhere o Blue Prism). Eso es una dinámica de mercado y en principio no se puede decir que sea intrínsecamente buena ni mala pero sí podría llevar a tres afectos adversos. Uno de ellos sería eliminar competencia y sobre todo la innovación rápida y constante que está caracterizando a las empresas que abanderan el desarrollo especialmente en RPA. Otro sería de naturaleza técnica: si una gran empresa adquiere una solución de otro fabricante de RPA o Chatbots es muy fácil que la quiera integrar en sus grandes 'suites'. Como en su diseño y arquitectura no fueron concebidos para integrarse directamente, es probable que la solución de fusión de herramientas lleve a una especie de Frankenstein tanto técnico como funcional y con resultados no óptimos.

  • Existe una posibilidad, que apunto más que como un factor de atención que como un riesgo explícito, hacia la convergencia y difuminación de fronteras entre soluciones de BPMS, RPA y de chatbots. Los BPMS, añadiendo screen scrapping y quizá algo de inteligencia artificial, pueden perfectamente absorber RPA. De la misma forma, un RPA que trabaje algo mas la visión y diseño de proceso extremo a extremo, que permita el diseño de formularios de entrada y salida, incremente sus posibilidades de integración vía servicios  y que mejore en el seguimiento (BAM) de los procesos y la analítica, puede convertirse en un BPMS. Y ambos, BPMS y RPA pueden integrar sin muchas dificultades, interfaces conversacionales como un tipo particular de actividades del proceso. Sin embargo, y aunque BPMS y RPA compartan muchas funcionalidades, sus filosofías son diferentes, por lo que una eventual fusión de conceptos debería entender bien cuándo se trabaja en modo BPMS y cuándo en modo RPA, aunque sea en la misma herramienta.De nuevo, esta convergencia no tiene por qué ser necesariamente mala... pero si se hace correctamente.

  • Se puede poner en riesgo las automatizaciones y mejoras estructurales. Es decir, dado que RPA y chatbots pueden dar soluciones de corto plazo y muy efectivas y brillantes, se puede olvidar que en ciertos casos, la problemática de un proceso de negocio mal diseñado, o ineficiente, o con una defectuosa digitalización, seguramente no se solucione mediante una solución táctica con RPA y en algún momento haya que plantearse evolucionar el ERP, la arquitectura de servicios, el BPMS o, en fin, los elementos más estructurales de una digitalización de procesos extremo a extremo.

Reflexión final



Y esta es la lista improvisada, y un poco precipitada, de motivaciones para el auge y riesgos relativos a los robots software. Veo que algunos de los puntos son más complejos de explicar y desarrollar de lo que inicialmente pensaba y que quizá precisarían una explicación más profunda. Además, por supuesto, es posible que existan otros factores no identificados en estas listas o que no todo el mundo esté de acuerdo con mi visión.

Pero espero que sirva como un punto de partida y, especialmente en lo relativo a los riesgos, un toque de atención y una llamada al realismo, la cordura y el análisis sensato.