GoConqr hat ein neues Design! Sag uns, wie es dir gefällt.

Mindmap

1a. Maneira - Integração Contínua

Luis Felipe Guariento Jornada DevOps e Certificação oficial EXIN Profissional Gestão Devops Portugiesisch

Inhalt der Mindmap

1a. Maneira - Integração Contínua

  1. Melhor Alternativa para Branching

    • Destacar o que usualmente ocorre em um ambiente de Desenvolvimento
      • - Trunk ou Master: é a linha principal que o projeto sempre deve se basear até o deploy em ambiente de produção. - Branch: Ramificações que cada desenvolvedor ou equipe de desenvolvimento cria em dado momento. Representa uma cópia do código atual doTrunk em dado momento. - Check-in e check-out do código será sempre baseado no trunk.
      • - É comum existirem várias branches ao mesmo tempo dependendo da quantidade de equipes. - Tag: marcador do estado do código em dado momento. Ex: tag para marcar versão 3.4.2 do projeto. - Sempre que fazemos uma merge de código da branch para o repositório principal ou trunk é importante marcar esse evento com uma tag. Pois caso aja algum problema no código pode-se fazer um rollback com relação à tag em questão. A tag também pode relacionar marcos importantes do projeto, como implantação de uma funcionalidade crítica no repositório principal de produção ou alterações estratégicas.
      • Quando se tem muitas branches, há problemas quanto ao merge - Integração do código
        • - Quanto mais branches temos em paralelo ( ex: equipes trabalhando em versões diferentes do código ) isso significa mais alterações em paralelo sendo realizadas.
        • - Quanto mais tempo demorar o merge, maior será o conflito e complexidade para integrar. - O uso de muitas branches em paralelo costuma aumentar o débito técnico. - Deve-se minimizar a quantidade de branches em paralelo que levem muito tempo para fazer o commit no Trunk.
      • Estratégias de branching
        • - Estratégia 1: Produtividade Individual. Vantagem: Projeto privado que não atrapalha outras equipes. - Estratégia 2: Produtividade da equipe com desenvolvimento baseado no Trunk. Vantagem: Fila única com todos trabalhando no Trunk e Commits frequentes.Não há o estresse de merge ao final do projeto.
        • Produtividade Individual
          • Vantagens: Projeto Privado que não atrapalha outras equipes
          • Desvantagens: Merge do código ocorre ao final do projeto e gera muitos problemas
        • Produtividade da equipe baseada no Trunk ( melhor escolha para Devops )
          • Vantagens: Fila única com todos trabalhando no Trunk e Commits frequentes. Não há o estresse de merge ao final do projeto
          • Desvantagens: Difícil de implantar porque cada commit pode quebrar o projeto inteiro. Deve-se puxar a corda de Andon para corrigir
  2. Débito técnico e fluxo de valor

    • - A dívida ou débito técnico aumentam caso não cuidemos da integração contínua.
    • Erros não corrigidos aumentam a dívida técnica
      • Dificulta entrega de qualidade ao cliente do fluxo de valor
        • - Apesar de ter código funcionando, caso não aja preocupação de refatoração e melhorias no código, há degradação da performance e qualidade da funcionalidade ao longo do tempo.
    • Código sem padrão
      • - Prejudica a melhoria de código e manutenção.
    • Código sujo
      • - Sem descrição de métodos e classes no próprio código. - Código deve ser autoexplicativo mas deve-se evitar muitos comentários pois muitas vezes uma mudança no código demanda mudanças em comentários e isso muitas vezes não é feito.
    • Teste Ineficaz
      • - Teste que não auxilia a validar a função do método ou classe no caso de teste unitátio ou que não preenche todos os requisitos de teste para o teste de aceitação.
    • Bugs escondidos
      • - Bug não percebido em um primeiro momento ou que o cliente já se acostumou e a equipe de TI não acha importante resolver nesse momento.
  3. Dicas para resolver o débito técnico

    • Desenvolvimento baseado no Trunk
      • - Identificar erros mais rapidamente com commits diários.  - Correção rápida de erros.
    • Utilizar infraestrutura como código sempre que possível
      • - Preparação do ambiente e solução de problemas serão feitos de maneira mais ágil. - Minimizar configurações manuais. - Montar catálogo de serviços sendo a criação de ambientes e servidores, por exemplo, sendo feita via script ou ferramenta com parâmetros associados.
      • - Facilita o dimensionamento e preparação de ambientes, assim como a verificação de erros em produção.
    • Testes automatizados
      • - Devemos ter sempre prontos testes unitários automatizados, testes de regressão, integração e de fumaça automatizados. - Ferramentas de testes automatizados devem ser incorporadas ao Pipeline.
    • Integração Contínua e Lotes Pequenos
    • Blitz de melhoria
      • - Resolver um problema recorrente ou realizar uma melhoria com auxílio de uma equipe multidisciplinar, várias áreas.
      • - Utilizar iniciativas Lean, analisando o que não agrega valor para que se possa cortar. Com isso ganha-se tempo para pensar em melhorias.
      • - Pode envolver reestruturação e refatoração do código assim como observar e tentar resolver os problemas que mais afetam o cliente.
    • Feedback imediato e aprendizado contínuo

Informationen

Beschreibung
Gestão Devops Jornada DevOps e Certificação oficial EXIN Profissional (7 - Primeira Maneira: Pipeline de Implantação) Mindmap am 1a. Maneira - Integração Contínua, erstellt von Luis Felipe Guariento am 19/02/2025.
Aufrufe
1
Bewertung

Mehr zu Integração, entrega e implantação contínuas

Feedback

Worum geht es?

Wie gefällt dir das neue Design?

Dein Eindruck