Qual a diferença entre macros e robôs na automatização de tarefas?

Em artigos como Robotic Process Automation (RPA) – o próximo salto de agilidade em processos e 5 Razões para adotar Robotic Process Automation, exploramos os benefícios da automatização de tarefas com esta tecnologia que utiliza a interface de usuário como canal de interação com os sistemas, realizando operações para produzir o resultado de uma atividade necessária ao negócio.


A robotização do processamento de tarefas pode trazer sensíveis ganhos de agilidade, aceleração do trabalho e redução de erros na realização de buscas, atualizações e consolidações de informações em sistemas sem a necessidade de alterar funcionalidades das aplicações envolvidas – simplesmente através da operação de controles sobre memória, tela, mouse e teclado.

Apesar do hype ter crescido muito em torno do tema RPA nos últimos anos, para algumas pessoas isso pode não parecer grande novidade. Afinal, macros de excel e scripts automatizados já eram usados há muito tempo para realizar este tipo de operação.

Afinal: O que há de novo na robotização em relação às macros e aos scripts?

Macros são funcionalidades de programação simplificada disponibilizadas por uma aplicação, como uma planilha eletrônica ou um ERP. As macros permitem programar sequências de ações que apoiam na execução de passos de uma tarefa específica, o que ajuda a simplificar o processamento de tarefas repetitivas. Em geral, as macros possuem uma linguagem proprietária da própria ferramenta e suas capacidades de interação estão limitadas a executar sequências de operações na própria ferramenta ou nas ferramentas que compõem uma suíte.

Para que a tarefa seja executada, a macro precisa ser acionada pelo usuário a cada vez que precisar ser executada, portanto não poderíamos considerar que é uma execução robotizada.

De forma semelhante, os scritps são sequências de código em uma linguagem programável que pode acionar um conjunto de ações. São diferentes das tradicionais linguagens de programação, porque são interpretadas, e não compiladas em um executável (o executável é a linguagem de script transformada em linguagem baixo nível de computador).

Javascript por exemplo permite realizar diversas operações sobre elementos de memória e da tela que está no navegador de internet. Pode-se usar o javascript para somar vários campos de uma tela, transformar dados, transportar informações de um campo para outro. Mas sua execução está limitada a operações no navegador.

Outro exemplo são os scripts de banco de dados. É possível com eles definir uma sequencia de ações que adicionem dados em uma tabela, transportem dados de uma para outra, façam cálculos, etc. Mas sua execução está limitada a operações no banco de dados.

Controlar abertura de planilhas eletrônicas, correio eletrônico, encontrar dados em documentos ou editores de imagens para completar outras etapas da tarefa acaba necessitando a combinação e orquestração de tecnologias e tornando a solução muito mais complexa.

As soluções de Robotização (RPA/RDA) funcionam operando virtualmente qualquer aplicação executada no computador. Isto permite realizar ações mais complexas, como ler e-mails, identificar as partes do e-mail que possuem conteúdos relevantes, cadastrar os dados do e-mail em uma aplicação, gerar um documento com uma carta de confirmação de leitura, adicionar uma assinatura, transformá-lo em PDF, registrá-lo em algum site, fazer login em diferentes sites, realizar consultas de dados e atualizar o cadastro – só para citar um exemplo.

A grande vantagem do RPA (Robotic Process Automation) é que ele oferece uma forma melhor de executar as tarefas podendo agir com autonomia, sem a necessidade de ser acionado por uma pessoa. Ele é capaz de operar comandos de teclado e mouse, processar informações na memória e acionar e operar praticamente qualquer aplicativo de um computador – literalmente controlando a estação de trabalho da mesma forma que uma pessoa poderia fazer.

O script criado para o RPA, além de ser mais abrangente, pode ser agendado para ser executado automaticamente por um robô. Uma infraestrutura de RPA permitirá que a organização tenha múltiplos robôs, que podem ser acionados para executar múltiplas tarefas – inclusive paralelizar a execução de uma tarefa com muito volume de dados. E tudo o que eles precisam é ter uma estação de trabalho e uma licença de robô para receber tarefas, processá-las e informá-las ao controlador (a Sala de Controle). O controlador é o elemento da infraestrutura de RPA que determina quais tarefas serão enviadas para quais robôs executarem. Em outras palavras, é o “gerente do time de robôs”, monitorando o trabalho de cada robô e delegando as tarefas.

Com esta infraestrutura, outro aspecto relevante é a governança. O controlador de RPA possibilita monitorar o desempenho dos robôs, balancear a carga de trabalho, gerenciar versões de scripts e auditar o trabalho automatizado.

RPA (Robotic Process Automation) e RDA (Robotic Desktop Automation) são tecnologias que evoluíram juntas. Mas enquanto o RPA envolve uma infraestrutura maior, o RDA tem o escopo de atuação como assistente – ele tem o mesmo poder de execução do trabalho em múltiplas aplicações como o RPA, porém funciona como um assistente do usuário humano para realizar ações repetitivas e em grande volume, trazendo agilidade no processamento de parte do trabalho de uma pessoa. Quem determina quando e como ele executará é o próprio usuário

.

Quando associado a outras tecnologias, como gerenciamento de regras de negócio para tomada de decisões, funcionalidades cognitivas de aprendizagem, interpretação visual (ver e interpretar imagens), inteligência artificial e sintetização de voz, as potencialidades de execução do trabalho se tornam virtualmente infinitas.

Este é o escopo do trabalhador digital. Sua organização está preparada?