Em diversos setores, os processos de negócios estão passando pela mais profunda transformação desde que as empresas substituíram os arquivos em papel por registros eletrônicos. Um novo conjunto de tecnologias, incluindo a automação de processos robóticos (RPA, na sigla em inglês), fluxos de trabalho inteligentes e técnicas de inteligência artificial, como machine learning, ferramentas de linguagem natural e agentes cognitivos, promete melhorar radicalmente a eficiência, eliminando erros e reduzindo o risco operacional. Uma pesquisa realizada por nossos colegas do McKinsey Global Institute sugere que, em todos os setores, já existe o potencial para automatizar mais de 30% das tarefas que compõem 60% dos empregos atuais. Em finanças e seguros, por exemplo, os trabalhadores passam mais da metade do tempo coletando e processando dados, tarefas que são eminentemente adequadas para automação, utilizando técnicas já disponíveis hoje.
Fique em dia com seus tópicos favoritos
Muitas empresas identificaram oportunidades substanciais para usar a automação, e os resultados de projetos piloto e demonstradores de tecnologia têm sido animadores. Entretanto, até o momento, a maioria delas tem enfrentado problemas para captar todo o potencial dessas novas abordagens ao aplicá-las em escala em suas operações.
Implementar a automação é uma empreitada desafiadora por diversos motivos. Algumas das tecnologias envolvidas ainda não estão plenamente desenvolvidas, por exemplo. Utilizar essas tecnologias fora de um ambiente de testes cuidadosamente controlado pode revelar fraquezas e limitações imprevistas. E com milhares de processos envolvendo dezenas de milhares de funcionários, a criação de roteiros viáveis para a automação em larga escala torna-se difícil para as organizações.
O desafio do desenvolvimento
O desenvolvimento e a implementação de software são também desafios. As empresas precisam ajustar e personalizar as tecnologias escolhidas para que trabalhem no contexto da organização como um todo. E como a automação envolve mudanças significativas nas funções e tarefas existentes, é necessário coordenar o desenvolvimento de tecnologia dentro de um processo mais amplo de gestão de mudanças.
Como muitas organizações já descobriram, metodologias estabelecidas de desenvolvimento de software não funcionam muito bem nesse ambiente complexo. A primeira coisa a falhar é a tradicional abordagem “em cascata”, na qual a análise, especificação, design, codificação e testes são realizados sequencialmente. Os projetos de automação organizados dessa forma têm sido afetados por atrasos e custos excessivos, à medida que as empresas descobrem problemas ou limitações inesperadas no final do ciclo de vida do desenvolvimento do projeto. Isso pode ser um problema específico quando os esforços são centralizados no nível corporativo. Por exemplo, após um projeto bem-sucedido de prova de conceito, uma empresa mineradora usou a abordagem em cascata para automatizar um processo importante de back-office. A implementação do projeto já estava em andamento havia dez semanas, quando a empresa descobriu que o design de infraestrutura não poderia ser ampliado para lidar com o trabalho. No momento em que o problema foi identificado e corrigido, o projeto já estava atrasado em mais de quatro meses, causando um grande aumento de custos.
Would you like to learn more about our Operations Practice?
Experiências como essa estão incentivando mais empresas a buscar abordagens de desenvolvimento utilizando a metodologia Ágil em seus projetos de automação. Com ênfase em equipes multifuncionais muito bem integradas, esforços concentrados de desenvolvimento e testes contínuos, a metodologia se mostrou extremamente bem-sucedida ao enfrentar desafios semelhantes em outras áreas de desenvolvimento de software.
No entanto, a aplicação da metodologia Ágil a projetos de automação criou também seus próprios desafios. Isso ocorre porque a automação de processos é – de várias maneiras significativas – diferente do desenvolvimento de um produto de software convencional.
Scrum, uma metodologia ágil que aproveita iterações rápidas para desenvolver recursos, funciona decompondo um problema ou recurso complexo em pedaços ou “histórias” distintas. As equipes trabalham separadamente nesses pedaços, concentrando-se na qualidade e fazendo lançamentos frequentes de software, e não somente ao final do projeto. Em um produto de software convencional, isso geralmente significa que os produtos começam oferecendo uma gama limitada de recursos, com novos sendo acrescentados ao longo do tempo. Entretanto, na automação de processos, pode ser difícil decompor um recurso dessa maneira. Os componentes individuais dentro de um processo costumam ser estreitamente conectados: ou ele funciona de ponta a ponta ou não funciona de maneira alguma.
Além disso, a natureza disruptiva da automação de processos, que pode envolver mudanças importantes nas funções e responsabilidades de centenas de funcionários, pode fazer com que ciclos de lançamentos frequentes se tornem inviáveis. Algumas vezes, o valor incremental capturado por um único componente não é suficiente para justificar um lançamento.
Existe também a questão da propriedade. No Scrum, há um Product Owner (Responsável pelo Produto) dedicado que atua como representante do cliente final, trabalhando de perto com as equipes de desenvolvimento para responder a perguntas, priorizar o trabalho e dar feedback sobre protótipos. A automação de processos pode abranger diversas funções, unidades de negócios e regiões geográficas, dificultando a localização de uma pessoa com o conhecimento e as conexões necessárias. E como a automação é algo novo, o “Responsável pelo processo” mais adequado dentro da organização pode ter pouca ou nenhuma experiência em trabalhos com projetos de desenvolvimento de software, e pode nunca ter atuado em um ambiente ágil, intensamente iterativo e em rápida evolução.
Automação ágil em escala
Em resposta a essas limitações, algumas empresas estão se adaptando e desenvolvendo a estrutura scrum para automação de processos. Essa abordagem de “automação ágil” opera como uma variante do scrum, com algumas características distintas (Quadro).
- Estrutura da equipe. A automação ágil usa uma equipe flexível ou uma estrutura de módulo, que inclui desenvolvedores, testadores, equipe de TI e partes interessadas no negócio. Cada módulo é liderado em conjunto pelo Product Owner, com experiência na tecnologia de automação pertinente, e um especialista no assunto que trabalhe na empresa, que fornece conhecimento essencial sobre negócios e domínio.
- Design inicial. A automação ágil envolve um esforço inicial que define completamente o processo antes do início efetivo do trabalho de desenvolvimento. Esse trabalho garante que o projeto de automação se integre à toda a empresa e cumpra as exigências regulatórias e outras restrições. Também permite que os grupos de interesse nas partes afetadas da organização preparem seus funcionários para mudanças futuras.
- Histórias acionadas por gatilhos. Para desmembrar o projeto em partes que podem ser abordadas separadamente, a automação ágil substitui as user stories (histórias de usuários) convencionais pelo conceito de “histórias acionadas por gatilhos”. Tal processo identifica um “evento gatilho”, como a disponibilidade de determinados dados ou uma ação do usuário; em seguida, define as ações necessárias em resposta a esse evento e o resultado a ser produzido. A utilização dessa abordagem permite que as equipes separem os processos em partes administráveis. Além disso, como as entradas e os resultados de cada parte são claramente definidos, as equipes podem trabalhar em paralelo, acelerando o trabalho de desenvolvimento.
- Gestão de lançamento. A automação ágil separa os lançamentos de protótipos e de softwares de produção. Para minimizar interferências na organização como um todo, os lançamentos de produção são realizados de acordo com um cronograma controlado e rigidamente coordenado com as partes afetadas do negócio. Os protótipos são lançados com mais frequência em um ambiente de testes dedicado, no qual seu desempenho é avaliado em conjuntos de dados representativos.
- Suporte ao programa. A automação ágil requer uma profunda mudança organizacional, pois exige que as empresas submetam as atividades essenciais de negócios a tecnologias desconhecidas e a novos métodos de trabalho – tudo ao mesmo tempo. Especialmente nos estágios iniciais, esses esforços exigem um apoio significativo. Para a maioria das organizações, é útil implementar um escritório de programa dedicado a fornecer expertise, estabelecer boas práticas e monitorar o progresso do esforço geral de automação.
The automation imperative
Ainda estamos no início da automação ágil em escala, mas a abordagem já está gerando resultados animadores. Após os primeiros contratempos, a mineradora descrita anteriormente refez seus esforços de automação utilizando os princípios da metodologia Ágil. A segunda tentativa de lançar o projeto foi duas vezes mais rápida que a primeira e economizou cerca de 5.000 horas de trabalho no primeiro ano, recuperando seu custo em menos de 10 meses.
Já uma empresa do setor de serviços financeiros construiu uma capacidade ágil de grande escala para apoiar seus ambiciosos objetivos de automação. Em uma abordagem em etapas, a empresa primeiro inseriu técnicas ágeis em suas equipes de desenvolvimento de software. Em seguida, aplicou a metodologia em diversas equipes para coordenar esforços e compartilhar as melhores práticas. Finalmente, a empresa persuadiu a liderança de seu programa a adotar a abordagem como padrão para todos os esforços de automação. Desde a mudança, o tempo de entrega do projeto foi reduzido em cerca de 30% e os custos em 15% a 20% em seis linhas de negócios diferentes.
Para grandes empresas, a automação que temos hoje atingirá todo o seu potencial somente quando atingir a escala total. Uma aplicação criteriosa de conceitos ágeis ajuda a simplificar os níveis de complexidade para aqueles dispostos a se comprometer com a mudança – não apenas em como pensam um software, mas em como trabalham todos os dias. Não há tempo a perder.