Adoção do Ágil em projetos de Analytics
Por Eduardo Gomes
Não é à toa que o Gartner® fala que 70% a 80% dos projetos de Business Intelligence (BI) falham, uma vez que as organizações têm sido obrigadas a inovar numa velocidade cada vez maior, as regras de negócio implementadas nos indicadores de um dashboard hoje, podem não fazer mais sentido amanhã, trazendo mudanças drásticas ao projeto e diminuindo a chance de alcançar seu êxito, sem contar o desgaste e aumento de custos.
Mas como obter sucesso? Podemos contornar isso? Ao longo da minha experiência no desenvolvimento em projetos de BI, encontrei “a luz no fim do túnel” em métodos ágeis. Isto mesmo! Afirmo para você: é possível em BI utilizar ágil para entregar e incrementar valor ao cliente de maneira eficaz.
Ficou curioso? Então vem ver quatro dicas que poderão te ajudar na adoção de um desenvolvimento ágil em projetos de analytics:
1) Entrega de valor
Geralmente projetos de BI são longos, pois é comum que as empresas ainda possuam pouca capacidade analítica ou até mesmo nenhuma e assim, necessitem de uma solução desenvolvida do zero. E são nesses projetos que possuem um “super” escopo que o BI tradicional acaba se tornando falho por trabalhar com entregas únicas, que ocorrem ao final do projeto.
Com adoção do ágil, temos uma abordagem diferente: conseguimos através das sprints, entregar uma “parte” do projeto que já gere valor ao cliente e com o passar das sprints, podemos incrementar este produto (valor), de maneira consistente. As regras de negócio e o valor a ser entregue irão determinar qual será o tamanho de cada sprint, mas aqui vai uma sugestão de como poderia ser o ciclo de uma:
2) Dividir e priorizar
Mas, não é nada fácil materializar um projeto em pequenos ciclos que gerem valor, quando estamos falando de back-end. Geralmente as atividades envolvidas para a construção do back-end de BI, desde a ingestão do dado, tratamento e transformação até a consolidação do dado em um Data Warehouse (DW) é muito longa.
Para tentar equalizar este problema, sugiro dividir o seu modelo analítico por assuntos.
Por exemplo, um DW financeiro pode ser subdividido em alguns temas: conta a pagar, a receber, contabilidade, faturamento entre outros. Uma vez dividido os núcleos, é possível criar o backlog, contendo as estórias necessárias para cada assunto e a definição do valor que cada uma irá entregar. E uma dica valiosa: Priorize sempre as que irão gerar maior valor!
Já para as atividades de front-end, fica mais fácil dividir e priorizar, pois você pode trabalhar com grupos de indicadores, desenvolvendo cada em uma sprint diferente, e a assim, ir incrementando os relatórios (produtos) a cada entrega.
3) Validar os dados
Costumo dizer que em Analytics uma das etapas mais importante é assegurar que os números estão corretos e que os dados são verídicos. Não adianta nada utilizar a melhor ferramenta para construir os mecanismos se os dados estiverem inconsistentes.
Por isso, para cada sprint é necessário que existam estórias de teste e validação dos dados. E não estou falando aqui da review meeting. A validação dos dados deve ocorrer antes da review meeting para garantir que as regras aplicadas nas transformações dos dados – no caso de atividades de back-end ou regras implementadas em indicadores/KPIs no caso das atividades de front-end – estejam condizentes as necessidades do negócio.
4) Ressignificar papéis
E por fim, para que tudo isso funcione em um projeto de BI precisamos também repensar e incluir novos papéis dentro do time, como:
– Product Owner (P.O.) ou dono do produto: É quem vai definir o backlog de atividades e irá priorizá-las, tendo uma “visão 360 graus” do produto e tendo em mente, a médio e longo prazo, até onde o projeto irá chegar;
– Scrum Master: Irá orquestrar as sprints, reuniões de planejamento, refinamento, retrospectivas e revisões. E, será o guardião da cultura ágil e suas ferramentas.
E, podemos aqui dividir a função do desenvolver nos seguintes papéis:
– Analista/Consultor: É quem colocará a “mão na massa” para desenvolver os entregáveis necessários para o produto, conforme a definição das estórias dentro da sprint;
– Arquiteto de dados: Será o facilitador técnico do time para que durante as sprints não haja impedimentos técnicos. Caso ocorra é ele também o responsável em tentar solucionar este tipo de contratempo o mais rápido possível para que a estória não transborde para as próximas sprints;
– Quality Assurance (QA): Como já disse acima, dados precisam ser verídicos. Por isso, torna-se necessário um profissional de qualidade para aplicar todas as técnicas e metodologias para averiguar os dados, como também é de suma importância que haja alguém do lado do cliente que conheça bem as regras de negócio desenvolvidas naquela sprint para validar aqueles dados.
É tudo sobre…
Vale ressaltar que os métodos ágeis em si têm muito em comum com Analytics, uma vez que ambos abordam o trabalho empírico, isso é, os dois desenvolvem um artefato, analisam os resultados e fazem uma adaptação para melhorar.
E no fim, a adoção do ágil em projetos de analytics acaba sendo sobre aculturamento. No início demanda esforço e reestruturação, mas em contrapartida temos projetos com maior:
1 – Credibilidade, uma vez que o seu processo será transparente;
2 – Valor, uma vez que as entregas serão focadas no negócio e seu grau de prioridade definido pelo cliente;
3 – Agilidade, uma vez as entregas serão incrementais;
4 – Qualidade, uma vez que as validações, principalmente dos dados são feitos a cada sprint, em pequenos ciclos e juntamente com o business.
Inovar em velocidades cada vez menores é realmente um desafio atual e que fazem com que os times de analytics tenham que se adaptar a essa realidade. E além de todos os benefícios que citei acima da adoção do ágil em projetos de analytics, acredito que o maior de todos seja essa entrega contínua de valor ao cliente que esses métodos nos proporcionam.
Espero que essas quatro dicas possam te ajudar a quebrar as estáticas, e no fim ter em mãos projetos de Business Intelligence que obterão sucesso!
Eduardo Gomes é Arquiteto de dados com mais de 10 anos de experiência na área de Analytics, e trabalha desde 2015 na Programmer’s. Atualmente ajuda em inúmeros projetos da área sempre com a missão de auxiliar os clientes a extraírem valor real dos seus dados através de diversas tecnologias.