Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Introdução à operação de produtos digitais via...

Introdução à operação de produtos digitais via Devconf(Opensanca)

Chrisitano Milfont, apresentando no Devconf 2023 abordando sobre a operação de produtos digitais

Sinopse:

Product Ops (ProdOps) não é sobre como gerir produtos digitais e sim como habilitar a boa gestão e execução com a arquitetura, engenharia e processos que tornam a validação de hipóteses de forma frequente, iterativa e incremental para atingir o melhor Time to Market.

ProdOps permite a independência das equipes para promoverem suas aplicações, tanto experimentos quanto soluções finais, direto a seus clientes e usuários, decidindo o quando, como e para quem quiserem, respeitando a cultura, papéis, cargos, autoridades e políticas de cada companhia.

Apresentaremos um Framework ProdOps com princípios, técnicas, práticas e artefatos para completar seu processo como um Add-on desde Startups à empresas matriciais tradicionais em plena transformação ou que decidiram iniciar com uma jornada de produto.

Opensanca

May 27, 2023
Tweet

More Decks by Opensanca

Other Decks in Programming

Transcript

  1. ESTRATÉGIA DIGITAL Permitir o autoatendimento do cliente Mentalidade Analógica Mentalidade

    Digital Human centered design Tech centered design Reativo Preditivo Transformaçã o Digital Iterativa e incremental The Future of Digital Innovation: To Win in Digital Business, Enterprises Must Innovate, 12/08/2022 https://www.idc.com/getdoc.jsp?containerId=US49450521
  2. INOVAÇÃO, aprimoramento de ideias por EXPERIMENTOS Invenção: criar algo que

    não existe, mesmo que utilizando uma ciência ou base existente, trazer elementos que não pertencem a área. Iteração: Fazer a mesma coisa, mas incrementando a cada versão. Inovação: Fazer a mesma coisa, mas sob caminhos diferentes. Disruptivo: Fazer algo que torna o anterior totalmente obsoleto. "Inovação é a execução de novas idéias que criam valor * * Use 7 Dimensions of Innovation to Create Your Innovation Perimeter and Portfolio, 09/08/2022 https://www.gartner.com/document/3970190
  3. FRAMEWORKS DE INOVAÇÃO CINCO ELEMENTOS-CHAVE DOS ECOSSISTEMAS DE INOVAÇÃO 1.

    Intercâmbio de valores 2. Diversidade de talentos 3. Ampla fonte de recursos compartilhados 4. Regras de engajamento 5. Modelo contínuo de gerenciamento, mensuração e evolução 1 2 Gerenciamento Contínuo Meça, monitore, refine, aprenda e melhore continuamente. Reimagine Innovation With an Adaptive Innovation Ecosystem Framework, 05/07/2022 https://www.gartner.com/document/4016314 SÃO BASEADOS NO MODELO ITERATIVO E INCREMENTAL VISANDO MITIGAR RISCOS
  4. EXPERIMENTAR CAMINHOS DIFERENTES ESTRATÉGIA NOS ECOSSISTEMAS DE INOVAÇÃO * 1.

    Inovação é um processo incremental e Bottom-up 2. Processo de inovação é como um esporte coletivo 3. Toda empresa tem que fomentar inovação no seu ecossistema de negócios AUTONOMIA DIRECIONADA À VALIDAÇÃO FREQUENTE DE HIPÓTESES * Top-Down Innovation Is Overrated, and Other Lessons on Innovation, 06/08/2021 https://www.gartner.com/document/code/756602?ref=authbody&refval=4009218 Prototipação e validação rápida Piloto (MVP) para soluções mais complexas
  5. MUNDO VUCA/BANI ENTREGA ACELERADA E COLABORAÇÃO ENTRE TI E NEGÓCIOS

    SÃO PRIORIDADES Volatility (Volátil) Uncertainty (Incerto) Complexity (Complexo) Ambiguity (Ambíguo) Brittleness (Frágil) Anxiety (Ansioso) Nonlinearity (Não-linear) Incomprehensibility (Incompreensível) Maximize the Success of Enterprise Agile: Utilize DevOps as the Accelerator, 03/09/2019 https://www.gartner.com/document/3969871?ref=solrAll&refval=340284433
  6. ENTREGA ACELERADA INTERVALO MENOR ENTRE RELEASES GARANTE MAIOR SUCESSO EM

    PROJETOS ÁGEIS LEAD-TIME < > DEPLOY FREQUENCY Maximize the Success of Enterprise Agile: Utilize DevOps as the Accelerator, 03/09/2019 https://www.gartner.com/document/3969871?ref=solrAll&refval=340284433
  7. FAKE FEATURES & FEATURE FLAG DESCOBRIR RAPIDAMENTE O QUE O

    CLIENTE QUER REALMENTE OS MAIORES DESAFIOS ENFRENTADOS PELAS EMPRESAS * 1. As organizações lutam para saber o que os clientes realmente querem 2. Habilidades de análise de dados insuficientes 3. Organizações ficando atrás do ritmo de seus clientes Crédito da Imagem https://benoitpasquier.com/feature-flag-mobile-apptimize/ * Quick Answer: What Are the Benefits of a “Test and Learn” Approach to Customer Experience?, 22/04/2022 https://www.gartner.com/document/4013951?ref=solrAll&refval=340786965 "Muitas empresas tiveram bastante sucesso ao adicionar o recurso de Fake Feature ou fazer somente um teste de Landing Page" Laura Klein
  8. TESTES A/B ESTATÍSTICAS PARA DEMONSTRAR PREFERÊNCIAS DOS CLIENTES Teste A/B

    compara versão A versus B de uma experiência de cliente usando conjuntos diferentes de usuários para encontrar a melhor preferência entre os dois, este modelo também é chamado Campeão e Desafiante. Testes multivariantes envolve testar múltiplas versões de múltiplos elementos ao mesmo tempo usando matrizes algébricas para determinar combinações vencedoras. Os dois modelos usam análises estatísticas para determinar a validação dos testes.
  9. CANARY RELEASES CADEIA DE VALOR TOTALMENTE AUTOMATIZADA E ENTREGUE COM

    RISCO MÍNIMO Market Guide for Value Stream Delivery Platforms, 18/10/2021 https://www.gartner.com/document/4007023?ref=solrAll&refval=340789701
  10. FREQUÊNCIA ALTA DE ENTREGA ELIMINAR O TRABALHO PESADO E REPETITIVO

    Market Guide for Value Stream Delivery Platforms, 18/10/2021 https://www.gartner.com/document/4007023?ref=solrAll&refval=340789701
  11. NÃO EXISTE VALIDAÇÃO FREQUENTE DE HIPÓTESES SEM ENTREGA ACELERADA "Se

    você fizer apostas ousadas, elas serão experimentos. E se são experimentos, você não sabe de antemão se vão funcionar. Mas alguns grandes sucessos compensam dezenas e dezenas de coisas que não funcionaram." Jeff Bezos * * How Coca-Cola, Netflix, and Amazon Learn from Failure, 10/11/2017 https://hbr.org/2017/11/how-coca-cola-netflix-and-amazon-learn-from-failure GMUD desacelera a entrega
  12. Estratégia Missão Flexibilizar a utilização de provedores de pagamento Estratégia

    da Companhia Adicionar melhores contratos por tipo de pagamento Estratégia do Produto Desacoplar a gestão de pagamento do Ecommerce Roadmap do Produto Payments 1.1 Objetivos do Produto Criar 99.99% de Invoices de boleto via Starkbank Criar 99,99% de Invoices de Pix via Starkbank Garantir 99,99% do Fallback de Invoice de Pix e Boleto via Wirecard
  13. Release Serviço Confiabilidade Criar Invoice 1.1.0.r1 Error Budget: 2.01% Confirmação

    de pagamento 1.1.0.r1 Error Budget: 0.03% Cancelamento 1.2.0 Pagamento manual 1.2.0 Notificação de status de pagamento 1.1.0.r1 Error Budget: 0.01%
  14. Backlog Criar Invoice Pix Starkbank Release Backlog - 1.1.0.r1 BugFix:

    Enviar mensagem Criar Invoice Pix Wirecard Confirmar Pagamento via Starkbank
  15. Versionamento Production 1.1 Dependencies (Addon) Ecommerce Platform - 11.2 Payments

    Gateway 1.1 Notifier microservice 2.1 Cloud Functions 1.0 Ecommerce Platform - 11.2 Disponível Payments Gateway 1.1 Notifier microservice 2.1 Cloud Functions 1.0 Disponível RDS Postgres - 9.6.1 Disponível Disponível Elasticache Redis - 2.2.0 Disponível Disponível Kafka 3.4.0 Disponível Disponível Disponível Sendgrid V3 Disponível Starkbank V2 Disponível Wirecard V2 Disponível
  16. Christiano Milfont Trusted Tech Advisor [email protected] (11) 94177-4409 https://www.linkedin.com/in/cmilfont/ Metodologia

    ProdOps https://twitter.com/cmilfont https://www.youtube.com/prodops Com 23 anos de carreira em tecnologia, já passou por áreas desde a gestão de CPD e desenvolvimento back-end até diretoria de tecnologia e Produtos Digitais na Via Varejo. Trabalha com Cloud e DevOps desde 2009, e também participou em algumas transformações digitais como CVC e outras tantas. Hoje na Concrete/Accenture, seu objetivo é atuar diretamente na estratégia de cloud first, buscando soluções e implementando estratégias para posicionar mais fortemente neste setor. Como Tech Advisor, participou da estratégia e operação que tornou a Facily em Unicórnio, primeiro e maior Social Commerce Latam, agora segue em busca do IPO. Atua como Advisor, Tech Advisor e consultor em diversas Startups no Brasil.
  17. Business Modeling Implementation Test Analysis & Design Preliminary Iteration(s) Iter.

    #1 Process Disciplines Iterations Iter. #2 Iter. #n Iter. #n+1 Iter. #n+2 Iter. #m Iter. #m+1 Deployment Requirements Elaboration Transition Inception Construction
  18. Business Modeling Implementation Test Analysis & Design Preliminary Iteration(s) Iter.

    #1 Process Disciplines Iterations Iter. #2 Iter. #n Iter. #n+1 Iter. #n+2 Iter. #m Iter. #m+1 Deployment Requirements Elaboration Transition Inception Construction
  19. Business Modeling Implementation Test Analysis & Design Preliminary Iteration(s) Iter.

    #1 Process Disciplines Iterations Iter. #2 Iter. #n Iter. #n+1 Iter. #n+2 Iter. #m Iter. #m+1 Deployment Requirements Elaboration Transition Inception Construction
  20. Business Modeling Implementation Test Analysis & Design Preliminary Iteration(s) Iter.

    #1 Process Disciplines Iterations Iter. #2 Iter. #n Iter. #n+1 Iter. #n+2 Iter. #m Iter. #m+1 Deployment Requirements Elaboration Transition Inception Construction
  21. Desenvolvimento guiado por testes é um caminho de gerenciamento do

    medo durante a programação Test Driven Development by Example Kent Beck
  22. Business Modeling Implementation Test Analysis & Design Preliminary Iteration(s) Iter.

    #1 Process Disciplines Iterations Iter. #2 Iter. #n Iter. #n+1 Iter. #n+2 Iter. #m Iter. #m+1 Deployment Requirements Elaboration Transition Inception Construction
  23. Business Modeling Implementation Test Analysis & Design Preliminary Iteration(s) Iter.

    #1 Process Disciplines Iterations Iter. #2 Iter. #n Iter. #n+1 Iter. #n+2 Iter. #m Iter. #m+1 Deployment Requirements Elaboration Transition Inception Construction
  24. Desenvolvimento orientado pela produção é um caminho de gerenciamento dos

    valores, princípios e práticas durante a programação que foca em Deploy First ProdOps
  25. Porque não miramos as coisas que se vêem, mas sim

    as que não se vêem. Pois as coisas que se vêem são temporais e as que não se vêem são eternas. 2 Coríntios 4:18
  26. Business Modeling Implementation Test Analysis & Design Preliminary Iteration(s) Iter.

    #1 Process Disciplines Iterations Iter. #2 Iter. #n Iter. #n+1 Iter. #n+2 Iter. #m Iter. #m+1 Deployment Requirements Elaboration Transition Inception Construction Observability
  27. Desenvolvimento orientado pela produção é um caminho de gerenciamento dos

    valores, princípios e práticas durante a programação que foca em Observability e Deploy First ProdOps
  28. As Jornadas! Vivemos em uma era de crescimento exponencial com

    toda a tecnologia necessária para entregar software mais rápido, com qualidade e mais barato, mesmo assim falhamos com mais intensidade.
  29. Duas Novas Jornadas Incluindo jornadas para organizar a informação, observando

    a operação do produto e retroalimentando o fluxo com aprendizado contínuo.
  30. O Ciclo ProdOps Uma operação de produtificar os serviços digitais

    utilizando metodologias modernas - como o Kanban - garante um plano de confiabilidade para cada entrega e implementa um fluxo contínuo de cultura da qualidade.
  31. C4E: Criação do Modelo Operacional Abordagem Recomendada: •O monitoramento correto

    das degradações dos serviços criam acionamentos preditivos que evitam dano ao negócio. •O mapeamento visível de dependências e relacionamentos apoiam na definição de contratos e SLAs dos produtos e principalmente fornecem Insights para medir e acionar em caso de ação necessária Blueprint para mapeamento de eventos e métricas
  32. C4E: Formação de Equipes para novo modelo operacional Abordagem Recomendada:

    •O padrão de SLA e Contratos entre as APIs pare endereçar a responsabilidade dos serviços com autonomia das equipes e menor bloqueios e dependencias. •O Mapeamento de métricas e eventos apoiam também nas escolhas sobre o que armazenar, o time que produz as informações tem maior conhecimento necessário para indicar a ingestão necessária. Seleção inteligente de gestão de APIS ajuda na definição das equipes
  33. C4E: Gestão de Fluxo Automatizado Abordagem Recomendada: •Mapear os fluxos

    e Cycle-times para identificar todas as interrupções e trabalhos manuais. •Estabelecer diretrizes com Building Blocks e Plataformas para apoiar as equipes. Guiar o modelo operacional com base no Eliminating Toil
  34. C4E: Implementar Loops de Feedback Abordagem Recomendada: •Criar planos de

    incidentes e falhas graves para simular e validar. •Criar uma cultura de retroalimentar o Discovery com os aprendizados do ambiente. Planos de resiliência com cultura Postmortem
  35. C4E: Operação Efetiva Abordagem Recomendada: • Avançar para o maior

    grau de Observabilidade. • Criar um On-call inteligente. • Garantir os acessos e ferramentas integradas para os times de atuação Garantir um ambiente ágil para o menor MTTR possível
  36. C4E: Área Orientada a Produto Abordagem Recomendada: • Criar modelo

    para o time de Produto atuar • Integrar o ecossistema de desenvolvimento como continuação de incidentes. Operação com monitoramento e acionamento totalmente automatizados
  37. C4E: FinOps gerenciada Guiar a FinOps integrando TI com áreas

    financeiras e contábeis Abordagem Recomendada: • Plano de Confiabilidade com Checklist de iniciativas FinOps endereçando atividades Cross ou por Produto em cada iteração. • Redução rápida e eficiente além da boa organização dos recursos. • Otimização inteligente sem arriscar a operação, medindo a cada mudança.
  38. Continuous Delivery Deployment Speed — Quão rápida é minha Pipeline

    para Deploy em produção? Deployment Volume — Qual minha capacidade de entregar múltiplos Deployments em uma mesma janela de tempo? Deployment Failure — Quão precisa é minha Pipeline para Deploy em produção?
  39. Change & Release Management Change Lead Time — Qual o

    tempo que levamos para receber uma demanda e entregar em produção? Change Volume — Quantas estórias/features e linhas de código (*) nós colocamos em produção por Deploy?
  40. Continuous Integration Test coverage — Qual o percentual de confiança

    que seu time tem ao mudar código? Automated Tests Failure Rate — Qual o esforço para garantir a automatização dos testes? Code Quality Index (ex: SonarQube) — Qual a qualidade interna de sua arquitetura?
  41. Quality Checkers Architecture and Design, Comments, Code Duplication, Coding Standards,

    Testing (Code Coverage), Cyclomatic Complexity, Potential Bugs
  42. Code Coverage (Ratio 4:1) jest --coverage --coverageReporters="json-summary" "total": { "lines":

    { "total": 21777, "covered": 65, "skipped": 0, "pct": 0.3 }, "statements": { "total": 24163, "covered": 72, "skipped": 0, "pct": 0.3 }, "functions": { "total": 5451, "covered": 16, "skipped": 0, "pct": 0.29 }, "branches": { "total": 6178, "covered": 10, "skipped": 0, "pct": 0.16 } }
  43. Complexidade LOC (Lines of Code), NOM (Number of Methods), NOA

    (Number of Attributes), DIT (Depth of Inheritance Tree), CC (Cyclomatic Complexity), WMC (Weight Methods per Class)
  44. Complexidade Ciclomática • 1-4: baixa complexidade – Fácil de testar

    • 5-7: complexidade moderada – tolerável • 8-10: alta complexidade – Refactoring é necessário para facilitar o teste • 11 + altíssima complexidade – Muito difícil de testar CC = E - N + 2P • E: Número total de arestas (edges) • N: Número total de nós (nodes) • P: Número total de ponts de saída (exit points) CC 3
  45. Complexidade Ciclomática CC = E - N + 2P •

    E: Número total de arestas (edges) • N: Número total de nós (nodes) • P: Número total de pontos de saída (exit points)
  46. Acoplamento RFC (Response for a Class), CBO (Coupling between objects)

    WMC (Weighted Methods per Class) DIT (Depth of Inheritance Tree) NOC (Number of Children)
  47. Respostas para uma Classe (RFC) RFC = M + R

    M = Número de métodos no objeto R = Número de métodos remotos chamados pelos métodos no objeto
  48. Falta de coesão de métodos LCOM (Lack of Cohesion of

    Methods) = Single Responsibility Principle