Termo glossário

DevOps

Esta página da Web foi automaticamente traduzida para sua conveniência. Não podemos garantir a precisão ou a confiabilidade do conteúdo traduzido. Se tiver dúvidas sobre a precisão do conteúdo traduzido, consulte a versão oficial em inglês da página da Web.

O que é DevOps?

DevOps é um conjunto de práticas que combina desenvolvimento de software (Dev) e operações de TI (Ops) para otimizar o desenvolvimento e permitir a entrega contínua de software de alta qualidade.

DevOps aprimora os fluxos de trabalho de desenvolvimento de software ao automatizar processos manuais, facilitando a transição rápida do código do desenvolvimento para a produção, mantendo a qualidade. Ferramentas como o controle de versão para gerenciamento de código-fonte fazem parte do DevOps, mas seu componente mais importante é cultural, não técnico.

DevOps exige estreita colaboração entre as equipes de desenvolvimento e operações, além da disposição para experimentar e aprender com os erros. As metodologias DevOps estão ganhando popularidade, principalmente em setores onde a agilidade é essencial para se manter competitivo.

Como o DevOps funciona?

DevOps agiliza o desenvolvimento, tornando áreas-chave do processo mais eficientes. Os ciclos de feedback monitoram o desempenho do aplicativo e sinalizam áreas que precisam de melhorias, enquanto tecnologias como softwares de rastreamento de erros e ferramentas de implantação de builds automatizam tarefas repetitivas de desenvolvimento , liberando os desenvolvedores para se concentrarem na codificação de novos recursos.

Para obter os melhores resultados com DevOps, ainda é necessária uma colaboração estreita e sincronizada entre as equipes que trabalham para o mesmo objetivo; a automação por si só não é suficiente sem essa colaboração.

Quais são os princípios do DevOps?

  • Comunicação e colaboração: Ferramentas como Slack ou Jira ajudam as equipes a compartilhar informações de forma eficiente, seja presencialmente ou remotamente, e a integração delas com sua infraestrutura DevOps existente mantém todos cientes do status do projeto.
  • Automação : Ferramentas como o Unity Build Automation cuidam da integração e entrega contínuas (CI/CD), enquanto o Puppet ou o Chef cuidam do provisionamento e do gerenciamento de configuração.
  • Opinião: Fundamental para identificar rapidamente áreas de melhoria, seja por meio de revisão de código, testes de usuário ou partes automatizadas do processo.
  • Responsabilidade compartilhada: As equipes de desenvolvimento e operações são responsáveis ​​por todo o ciclo de vida da aplicação; equipes isoladas geram falta de comunicação e ineficiência.

Que problemas o DevOps resolve?

A implementação do DevOps ajuda as equipes e os recursos a se alinharem para uma melhor colaboração , resolvendo muitos problemas de desenvolvimento de software e melhorando a experiência do usuário final.

Em sua essência, o DevOps permite que as equipes façam mudanças rapidamente por meio de iteração e testes ágeis, reduzindo as ineficiências nos fluxos de trabalho existentes. Um fluxo de trabalho CI/CD ajuda especificamente as equipes a lançar novos recursos com mais frequência e a responder ao feedback dos clientes mais rapidamente.

Equipes alinhadas colaboram com mais eficiência, resultando em lançamentos mais estáveis, frequentes e de maior qualidade. Um fluxo constante de lançamentos sólidos gera valor consistente para o cliente, o que ajuda a empresa a crescer.

Quais são os benefícios de usar DevOps?

  • Alcançar objetivos mais rapidamente: As equipes se movem com maior agilidade quando a colaboração funciona bem.
  • Versões de maior qualidade e mais estáveis : Trabalhar em estreita colaboração melhora consistentemente a qualidade das versões lançadas.
  • Melhor moral: Equipes que colaboram de perto em lançamentos de qualidade tendem a se sentir mais comprometidas com o trabalho.

Quais são os desafios de usar DevOps?

  • Uma verdadeira mudança cultural: As equipes, acostumadas a operar de forma isolada e independente, agora precisam colaborar ativamente utilizando novas ferramentas e práticas.
  • Novo atrito no fluxo de trabalho: As equipes de desenvolvimento e operações devem trabalhar ativamente juntas para construir um processo integrado, pois isso não acontece automaticamente apenas com a adoção de novas ferramentas.

O que é o fluxo de trabalho DevOps ?

1. Plano: Defina os objetivos gerais, como serão alcançados, os cronogramas de implementação e quem é responsável por cada tarefa. Em seguida, identifique e implemente as ferramentas e os processos necessários, que podem incluir um pipeline de entrega CI/CD ou um sistema de monitoramento.

2. Desenvolver: Escreva e teste o código frequentemente para mantê-lo estável; assim que estiver pronto e atender aos requisitos da base de usuários alvo, entregue-o à equipe de operações para implantação.

3. Fusão: Integre as alterações de diferentes fontes em uma única base de código, seja manualmente com um comando de mesclagem em um sistema de controle de versão como o Unity Version Control , ou automaticamente por meio de um sistema de CI, para criar uma visão única e consistente da base de código.

4. Construir: Na fase de construção do ciclo de vida DevOps , o código é compilado e empacotado para distribuição, geralmente de forma automatizada com ferramentas como Jenkins ou Unity Build Automation, que ajudam a manter as compilações reproduzíveis e os problemas fáceis de rastrear.

5. Teste e etapa: Teste o código de forma automática e manual para confirmar sua estabilidade e prontidão para produção, tudo em um ambiente de teste sem riscos para o código ou aplicativos em produção. Os testes automatizados aceleram o processo e mantêm a consistência; os testes manuais detectam o que a automação não detecta.

6. Implantar: Implante o código testado em produção com frequência, como parte da implantação contínua (CD), o que permite identificar e resolver erros de código em minutos ou horas, em vez de dias.

Perguntas frequentes (FAQ)

DevOps é um cargo ou um conjunto de práticas?

Na prática, ambos. DevOps é fundamentalmente uma cultura e um conjunto de práticas, mas muitas empresas também contratam "engenheiros DevOps " dedicados para ajudar a construir e manter a automação e as ferramentas que o suportam. Ter essa função não elimina a necessidade de que toda a equipe adote a cultura da empresa.

Equipes pequenas precisam de DevOps?

Não a estrutura formal completa, mas os princípios subjacentes ainda ajudam. Mesmo uma equipe pequena se beneficia da automação de tarefas repetitivas e da integração estreita entre desenvolvimento e implantação. É a escala das ferramentas e dos processos que geralmente cresce com o tamanho da equipe, e não o valor das práticas em si.

Termos relacionados

CI/CD

CI/CD, ou integração contínua/entrega ou implantação contínuas, é uma prática de desenvolvimento de software habilitada pela automação. Atualizações frequentes e confiáveis aceleram os ciclos de lançamento por meio de entrega contínua de código.

Version Control

O controle de versão, também conhecido como gerenciamento de código-fonte, usa ferramentas para rastrear alterações ou edições feitas no código-fonte ao longo do tempo.