Por Marvin Mena Montero – Estudiante de la carrera de Ingeniería Informática

En la época actual, la información se ha vuelto un tipo de moneda con un gran valor, lo cual nos lleva tratar de obtener más de ella, de forma compacta y rápida. Cada día tratamos de digerir más información para poder evolucionar en tiempos tan efímeros. En el pasado, se hacían copias de libros a mano; ahora, se analizan terabytes de información por minuto para llegar a conclusiones sobre hipótesis que antes nos hubiera tardado años descartar.

Existen muchas tecnologías para el análisis de datos, entre ellas está el “RPA”, como lo describe el medio digital, “Impacto Tic”: Una ‘nueva raza’ de robots que logran ejecutar procesos automáticos controlados por algoritmos ha llegado para quedarse. Su objetivo: automatizar a través de software un sinnúmero de tareas manuales y repetitivas que hacen los humanos en las oficinas y que les permitirán a las organizaciones ahorrar costos, reducir la posibilidad de errores y hacer en minutos lo que antes les tomaba varias horas. Se trata de la Automatización Robótica de Procesos, conocida como RPA, una tendencia que empieza a convertirse en una parte cada vez más importante de las estrategias de Transformación Digital para las empresas y que, como suele ser tradicional en muchos casos, nació en los países más desarrollados. (Impacto TIC, 2019, párr. 4).

Para abordar la automatización en los procesos de manejo de datos, vamos a contextualizar dicho tema alrededor de sus componentes básicos: los algoritmos y sus estructuras de datos. Lo anterior nos permitirá transicionar entre conceptos primarios, a profundizar a la tecnología RPA.

Simply put, a data structure is a systematic way of organizing and accessing data, and an algorithm is a step-by-step procedure for performing some task in a finite amount of time. These concepts are central to computing, but to be able to classify some data structures and algorithms as “good,” we must have precise ways of analyzing them.” (Goodrich, Tamassia y Goldwasser, 2013, p. 110).

Con lo anterior podemos deducir que la estructuración de datos y los algoritmos nos simplifican nuestro trabajo, al permitirnos organizar los datos en un cierto orden para que luego los algoritmos o secciones del código puedan acceder dichos datos e implementarlos en un cálculo, por ejemplo. Es por tal razón que se eligió RPA como un punto de referencia para esta investigación, puesto que dichos conceptos básicos se utilizan para las siguientes aplicaciones de automatización, según AI Multiple (2020):

• Abrir correos electrónicos y archivos adjuntos
• Iniciar sesión en aplicaciones
• Mover archivos y carpetas
• Integración con herramientas empresariales
• Conexión a las API del sistema
• Leer y escribir en bases de datos
• Realizar cálculos
• Extraer datos de documentos
• Ingresar datos a formularios
• Extraer y formatear datos en informes
• Fusionar datos de múltiples fuentes
• Copiar y pegar datos

Un ejemplo importante para RPA y estructuras de datos sería un correo, como lo indica Deckard (2017), puesto que, aunque su información se pueda interpretar como datos aleatorios y sin estructurar, sin importar la apariencia aleatoria, se pueden anticipar componentes, como el título, archivos enlazados, la persona que envió el correo. Estos campos siempre van a existir y se puede crear una plantilla con una estructura definida que extraiga esos campos específicos y los ordene dependiendo del contenido. Esto hace al algoritmo más eficiente, porque la información se particiona de antemano.

Habiendo tomado el ejemplo práctico del email antes mencionado, podemos visualizar la Figura 1, la cual recibe campos específicos de la plantilla de correos, por lo que se llama una tabla de dispersión, la cual categoriza mediante pilas o colas los datos dependiendo de los filtros o condicionales que haya implementado. Supongamos que se requiere sumar un campo en específico y actualizarlo cada vez que entra un correo nuevo, por medio de un algoritmo que perciba cuando inicie esa entrada de datos; puedo lograr dicho acometido por medio de estructuras de datos y algoritmos.

Figura 1. Elaboración Propia

Aunque podemos denotar que hay numerosas ventajas en este tipo de proceso de RPA, también ha sido criticado por ser una apuesta con errores y que arrebata trabajos. Pero la realidad es que actualmente existen procesos de validación que permiten depurar el software, son pruebas rigurosas que contemplan todos los escenarios y caminos que los datos tomarán durante el proceso. En realidad, en vez de quitar trabajos, este tipo de procesos nos permite obtener data verídica, confiable, la cual nos ahorrará tiempo perdido en trabajos manuales, como pasar datos y darles formato.

La investigación del proceso de estructuras de datos y algoritmos nos permitió demostrar cómo podemos tomar datos en procesos específicos para ordenarlos para que los algoritmos accedan dichos datos cada vez un evento se inicie. Estos nos permiten automatizar procesos tediosos, como mover carpetas, o cálculos precisos constantemente actualizados, los cuales pueden ser registrados en reportes para su analices continuo. Y aunque los procesos de validación son rigurosos y una inversión considerada innecesaria al principio, nos permiten obtener resultados notorios y beneficiosos para un proceso con buenas prácticas.

 

MOXIE es el Canal de ULACIT (www.ulacit.ac.cr), producido por y para los estudiantes universitarios, en alianza con el medio periodístico independiente Delfino.cr, con el propósito de brindarles un espacio para generar y difundir sus ideas.  Se llama Moxie - que en inglés urbano significa tener la capacidad de enfrentar las dificultades con inteligencia, audacia y valentía - en honor a nuestros alumnos, cuyo “moxie” los caracteriza.

Referencias bibliográficas:
• AI Multiple. (12 de junio de 2020). How RPA works. AI Multiple. Recuperado de https://research.aimultiple.com/rpa/#how-rpa-works
• Deckard, M. (2020). RPA In Our Own Words: Managing Unstructured Data. UI Path. Recuperado de https://www.uipath.com/blog/rpa-in-our-own-words-managing-unstructured-data
• Goodrich, M., Tamassia, R. y Goldwasser, M. (2013). Data Structures and Algorithms in Python. Hoboken: John Wiley & Sons, Inc.