Por Marcell Biemann, arquiteto de Soluções Analíticas da Via Consulting

Este é o segundo texto da nossa série de dez textos sobre “Dados” e falaremos sobre metodologia Agile e DataOps, uma nova forma de manter entregas contínuas de dados.

 

“Intelligence is the ability to adapt to change.”
Stephen Hawking

 

Algumas empresas estão presas em formas mais antigas de gerenciar processos e desenvolvimento. É comum, por exemplo, o departamento de TI solicitar requisitos e estimar a entrega para daqui um ano. Essas empresas são resistentes a mudanças – consequentemente, solicitações de novas ferramentas e métodos vão antes para comitês de arquitetura para justificar os gastos. Muitas vezes, um grande esforço será financiado simplesmente para estudar se a solução proposta funcionará. Outras vezes, um comitê decidirá quais problemas têm prioridades. Paralisia de análise deve ser quebrada para atingir a maturidade e o sucesso da ciência de dados. A burocracia não funciona bem na ciência convencional e também não funcionará na ciência de dados. Para qualquer ciência, exploração, agilidade e experimentação fast-fail (falha rápida) é o melhor caminho.

A experimentação nos leva ao nosso destino final através de barreiras, voltas e mais voltas. Fast-fail não implica falta de compromisso com o objetivo final, mas indica uma disposição para experimentar no processo, aprender rapidamente com os resultados e fazer ajustes para alcançar uma melhor experiência do cliente. Isso não minimiza o valor de um plano bem pensado, mas facilita a melhoria contínua da qualidade.

Assim como o desenvolvimento de software com a metodologia Agile tem defendido curtos casos de usos e iterações em detrimento de cronogramas prolongados e entregas defasadas, a utilização de Agile na orientação e ciência de dados requer colaboração próxima com o negócio e liberdade de experimentação. Ela permeia todos os níveis da empresa. Promover tecnologia e cultura flexíveis pode ser um desafio, mas será imensamente gratificante devido à colaboração e a criatividade cultivada.

Agile não é uma metodologia de desenvolvimento, é um mindset, uma mentalidade de trabalho.

Ter uma metodologia ágil de DevOps (desenvolvimento e operação) voltada para Dados é fundamental – isso é chamado de DataOps. O DataOps trabalha com os mesmos princípios do DevOps: colaboração estreita entre desenvolvedores e usuários finais; coleta de requisitos claros e concisos e rodadas de análise; ciclos de iterações mais curtos em lançamentos de produtos (incluindo sucessos e oportunidades de falhas rápidas); time-to-market mais rápido; melhor definição do seu MVP (Minimum Viable Product – mínimo produto viável / protótipo) para ganhos rápidos com menores taxas de falha do produto; e geralmente criando uma atmosfera de equipe dinâmica e envolvente em toda empresa. Além dessas características gerais do Agile, o DataOps acelera os recursos de análise de dados atuais, explora naturalmente novas arquiteturas de dados rápidas (como Data Lakes com esquema na leitura) e permite fazer análises que antes eram impossíveis. Com um foco aprimorado em cada MVP e nas Sprints correspondentes, o DataOps minimiza o tempo de inatividade da equipe em relação aos longos ciclos de desenvolvimento e aos custos de alternância cognitiva entre diferentes projetos.

O termo DataOps foi inventado em meados de 2015 e foi reconhecido pela Gartner este ano.

De acordo com o manifesto de DataOps, os princípios devem ser:

1. Satisfazer continuamente o seu cliente:
A prioridade é satisfazer o cliente através da entrega antecipada e contínua de informações analíticas valiosas que podem ser de 2 minutos até duas semanas.

2. Valorizar o trabalho analítico:
A principal medida do desempenho da análise de dados é o grau em que as análises são entregues, incorporando dados precisos ao invés de dados e sistemas robustos.

3. Abraçar a mudança:
Acolher as crescentes necessidades do cliente e, de fato, abraçar essas necessidades a fim de gerar vantagem competitiva. Acreditar que o método de comunicação mais eficiente, eficaz e ágil com os clientes é uma conversa cara a cara.

4. Trabalhar em equipe:
As equipes sempre terão uma variedade de papéis, habilidades, ferramentas favoritas e títulos.

5. Interações diárias:
Clientes, equipes de análise de dados e operações devem trabalhar juntas durante todo o projeto.

6. Auto-organização:
A melhor visão analítica, algoritmos, arquiteturas, requisitos e projetos emergem de equipes auto-organizadas.

7. Reduzir o heroísmo:
À medida que o ritmo e a amplitude da necessidade de insights analíticos aumentam, as equipes devem se esforçar para reduzir o heroísmo e criar equipes e processos sustentáveis e escaláveis.

8. Reflexão:
Equipes de análise de dados devem aperfeiçoar seu desempenho nas operações através de uma autorreflexão, em intervalos regulares, sobre os feedbacks fornecidos por seus clientes, por eles próprios e pelas estatísticas operacionais.

9. Os códigos:
As equipes usam uma variedade de ferramentas para acessar, integrar, modelar e visualizar dados. Fundamentalmente, cada uma dessas ferramentas gera códigos e configurações que descrevem as ações tomadas sobre dados para fornecer informações.

10. Orquestração:
Orquestração de dados, ferramentas, códigos, ambientes e equipes de trabalho são fatores-chave para o sucesso dos projetos de análise de dados.

11. Faça tudo ser reproduzível:
São necessários resultados reproduzíveis e, portanto, versionar tudo: dados, configurações de hardware e software, código e configurações específicas de cada ferramenta utilizada.

12. Ambientes descartáveis:
É importante minimizar o custo para os membros das equipes de análise de dados fazerem experimentações, proporcionando-lhes facilidade de criar ambientes técnicos descartáveis, isolados e seguros que reflitam o ambiente de produção.

13. Simplicidade:
A atenção contínua à excelência técnica e ao bom design aumenta a agilidade; bem como a simplicidade, a arte de maximizar a quantidade de trabalho não feito é essencial.

14. Análise de dados é manufatura:
Os pipelines de análise de dados são análogos às linhas de fabricação enxuta. Um conceito fundamental de DataOps é o foco no pensamento processual destinado a alcançar eficiência contínua na construção de insights analíticos.

15. A qualidade é primordial:
Os pipelines de análise de dados devem ser construídos com uma fundação capaz de detectar automaticamente erros no código, configuração e dados, e devem fornecer feedback contínuo aos operadores para evitar erros.

16. Monitorar a qualidade e o desempenho:
O objetivo é ter medidas de desempenho e qualidade que sejam monitoradas continuamente para detectar variações inesperadas e gerar estatísticas operacionais.

17. Reutilização:
Um aspecto fundamental da eficiência na fabricação de insights analíticos é evitar a repetição do trabalho anterior pelo indivíduo ou pelo time.

18. Melhorar os tempos dos ciclos:
Devemos nos esforçar para minimizar o tempo e o esforço para transformar a necessidade de um cliente em uma ideia analítica, criá-la em desenvolvimento, liberá-la como um processo de produção repetível e, finalmente, refatorar e reutilizar esse produto.

 


Referências:
• www.oreilly.com/data/free/files/ten-signs-of-data-science-maturity.pdf
• social.eyeforpharma.com/commercial/experiment-innovate-cultivating-fail-smart-learn-fast-culture
• streamsets.com/blog/dataops-applying-devops-to-data
• www.gartner.com/doc/3884077
• dataopsmanifesto.org

CADASTRE-SE AGORA MESMO

Preencha com o seu email e receba as atualizações do ViaBlog.