Skip to content

Fluxo

  • Elas usam uma estratégia de ramificação específica e qual é sua estratégia de teste, sua estratégia de implantação e sua estratégia de lançamento?
  • Além disso, o arranjo do código do aplicativo, do código da infraestrutura e do código do pipeline requer algum pensamento. Você coloca tudo em um repositório ou não?
  • O pipeline inclui etapas manuais e como elas se refletem no design?
  • O desafio é moldar a organização, os processos e as pessoas.
  • Comece pequeno, expanda gradualmente, inspire as pessoas e ajude a moldar uma maneira de trabalhar que se encaixe na filosofia CI/CD;
  • CI/CD é geralmente restrito a construir, testar e implantar;
  • Os fundamentos da integração contínua/entrega contínua (CI/CD) foram estabelecidos por pessoas como Paul Duvall, Jez Humble e David Farley, e são descritos detalhadamente em seus respectivos livros, Continuous Integration: Improving Software Quality and Reducing Risk e Continuous Delivery: Reliable Software Release through Build, Test and Deployment Automation.
  • Integração contínua: é identificar e corrigir erros mais cedo, garantindo que o código esteja sempre em um estado funcional.
  • Entrega contínua: há um estado estável linha principal do código, é automatizar o processo de implantação de versões do software em ambientes de produção ou pré-produção de maneira confiável. Cada construção é testada automaticamente em uma máquina de teste que se assemelha ao ambiente de produção real.
  • CI/CD é geralmente restrito a construir, testar e implantar.
  • Tradicionalmente, CI/CD não abrange todas as atividades associadas ao desenvolvimento de software.
  • CI/CD é geralmente restrito a construir, testar e implantar.
  • Atividades como planejamento, análise de requisitos, design, operação e monitoramento geralmente não são consideradas no escopo de CI/CD.

Arquitetura de Referência IT4IT

  • Estratégia para fluxo de valor do portfólio (S2P);
  • Requisito para implantar o fluxo de valor (R2D);
  • Fluxo de valor de solicitação para cumprir (R2F);
  • Fluxo de valor de detecção para correção (D2C);

Integração contínua e entrega contínua no contexto da IT4IT

Arquitetura e cadeia de suprimentos de software

A importância do gerenciamento do ciclo de vida do aplicativo

Gerenciamento do Ciclo de Vida do Aplicativo

  • Gerenciamento de portfólio;
  • Gerenciamento de projetos;
  • Gerenciamento de requisitos;
  • Arquitetura de software;
  • Desenvolvimento de aplicativos;
  • integração contínua;
  • Garantia de qualidade/testes de software;
  • Manutenção/controle de software;
  • Suporte;
  • Gerenciamento de mudanças;
  • Gerenciamento de lançamentos;
  • Monitoramento

Entregar software de qualidade em um ritmo que satisfaça seu negócio é o objetivo.

A organização empresarial tem requisitos aos quais um pipeline deve obedecer? A equipe DevOps tem requisitos?

Modo de trabalho Restrições de recursos Monitoramento
Tecnologia Gerenciabilidade Sustentabilidade
Informação Operações Governança
Segurança Qualidade
Conformidade e auditabilidade Métricas

Modo de trabalho

  • Requisito: Um requisito tem um proprietário. Um requisito sem um proprietário e justificativa não é um requisito.
  • A maneira de trabalhar da organização empresarial: alguma forma, esses aspectos influenciam o design do pipeline.
  • Estratégia de ramificação da equipe: design do pipeline, dependem fortemente do fluxo de trabalho da equipe;
  • A estratégia de Teste da equipe: Testes Unitários, Integração, Funcionais, Regressão, Mnuais, Carga, Estresse, Desempenho, Interrupção e Pré-produção/preparação.
  • Estratégia de Lançamentos: define a cadência para lançar artefatos;
  • A estratégia de implantação de produção: Estratégia de "Recriar implantação" ou uma estratégia de "Implantação Azul/Verde"?
  • Requisito: Use uma estratégia de ramificação simples: Limite sua estratégia de ramificação.
  • Limite sua estratégia de ramificação a um fluxo de trabalho baseado em tronco ou fluxo de trabalho de ramificação de recurso.
  • Requisito: Mantenha as ramificações de recursos de curta duração
  • Um dos princípios básicos do CI/CD é não usar ramificações de recursos, mas se você decidir usá-los, mantenha os ramos de recursos de curta duração.
  • Requisito: escolha a estratégia de lançamento desejada, mas mantenha a linha principal pronta para produção.
  • Implantar uma versão uma vez por dia, uma vez por semana ou uma vez por mês é um requisito que a empresa define.
  • Requisito: execute testes manuais somente se necessário.
  • Mostra que testes manuais ou semi-automatizados ainda são necessários
  • Tecnologia: Um microsserviço é executado de forma independente CD para pacotes de fornecedores até parece uma contradição do ponto de vista do consumidor e, em essência, é.
  • Requisito: A disponibilidade, integridade e confidencialidade da plataforma/servidor
  • De integração ALM devem corresponder às do aplicativo com a classificação mais alta.
  • Requisito: Criar um pipeline por microsserviço.
  • Um microsserviço é um pequeno pedaço isolado de software que roda de forma independente.
  • Requisito: Automatizar a criação de testes efêmeros ambientes.
  • O uso de ambientes de teste efêmeros é uma solução para esse problema e é fortemente recomendado. O ambiente de teste é criado na hora e destruído automaticamente quando não é mais usado.
  • Requisito: não recrie ambientes de teste em cada execução de pipeline.
  • Uma abordagem melhor é provisionar a infraestrutura, mas excluí-la apenas se não for mais usado ou se não for usado por um longo tempo.