DevOps chegou. Você está preparado ?

Logo quando você pensou que estava a salvo de mais melhorias de processo por um tempo, mas não tão rápido. Veio o DevOps, testes contínuos, entrega contínua e implantação contínua. Neste artigo, estarei me concentrando no teste contínuo, a parte mais preocupante com as equipes de teste.

DevOps é, por uma descrição, Agile para Ops ou IT. Com uma colaboração e colaboração mais próximas do lado dos negócios, o desenvolvimento e as operações estão usando ótimas ferramentas para ajudar os Ops a serem mais ágeis e migrar o código para a produção mais rapidamente. Mas isso pode ser complicado.

Agora, estou me deparando com organizações que dizem que fazem DevOps ou estão migrando para o DevOps, mas têm muito pouco para fazer isso ou, pior, não têm ideia do que estão fazendo. 

Eu vi em primeira mão, quantas equipes mantiveram o Agile e correram para fazer os testes, enquanto trabalhavam com muito menos documentação, às vezes colaboração superficial, e ainda esperavam obter alta cobertura de automação. Alguns deles ainda tentam se recompor 10 anos depois.

Sem a mudança de cultura, capacitação, habilidades e ferramentas para fazer isso acontecer, uma equipe que tenta DevOps está indo para o desastre.

O DevOps destacará as deficiências de uma equipe em uma escala maior e mais rápida do que o Agile. DevOps é um campo minado! Para fazer qualquer coisa aqui, você precisa saber do que está falando. Não são apenas palavras de efeito. Só porque você começou a usar o Puppet, Chef, Docker, etc, isso não significa que você está pronto para a implantação contínua.

Estamos no estágio inicial de DevOps, onde o uso de uma única ferramenta ou mudança única fez com que pessoas desinformadas fizessem suposições sobre uma mudança de paradigma inteira. E fico triste em ver essa tendência continuar.

Se há doze anos, você lançou versões trimestrais faseadas para conjuntos de sprints de duas semanas com histórias de usuários, em vez de requisitos, e sua equipe de desenvolvimento começou a usar o Jenkins para IC. Isso, por si só, não fez você Agile. Foi um começo. Se, por exemplo, a equipe não tivesse acesso ao lado do negócio / Product Owner diariamente, para aumentar significativamente a colaboração com envolvimento antecipado da equipe e significativa cobertura de automação, então essa equipe seria Scrumbutt, ou Agile Falls, mas ainda não verdadeiramente Agile e em vez de ganhos de produtividade, muitas equipes sentiram mais pressão e incertezas.

A maioria das organizações levou anos para implementar, descobrir e ajustar as novas práticas. Como “ScrumButt”, nós já temos alguns anti-nomes – DevFlops e DevOops. Mas não vamos lá. Vamos fazer direito! Há um grande progresso a ser feito aqui. DevOps, como o Agile, é sobre cultura. No DevOps, toda a organização se concentra nas limitações e necessidades do negócio, em vez de toda a organização trabalhar de acordo com os cronogramas de desenvolvimento ou de operações. A funcionalidade e os ciclos do produto são entregues quando a empresa precisa, em vez de ficar à mercê do desenvolvimento e / ou da TI / Ops.

O DevOps também é mais sobre mudanças nos negócios e operações / TI do que mudanças no Dev e Testing. Dev e Testing foram transformados em nossas cabeças com o Agile.

Desta vez, outros grupos estão ficando de cabeça para baixo. Envolvendo as Operações, mudando suas tarefas, no início do ciclo, e automatizando o máximo possível de tarefas de Operações com ferramentas como Puppet, ou Chef e Docker, entre muitas, muitas outras.

Para que todo esse produto impulsionado pelos negócios seja entregue em sua programação, há ainda mais uso de automação de tarefas. Para se ter uma boa idéia de onde o DevOps está indo – tudo o que pode ser automatizado, tem que ser. Das construções usando Integração Contínua e automação de testes, nos tornamos Agile. As equipes de teste lidam com essas tarefas há muito tempo, mas agora há mais tarefas, principalmente tarefas de Ops: criação e manutenção de ambientes, promoção de construção, provisionamento, e principalmente monitoramento, tudo está se tornando automatizado.

Para a equipes de teste, isso significa muito. Além da dinâmica de equipe, ferramentas e capacidade de resposta para a mudança, isso obviamente significa automação de testes maior e mais inteligente. A maneira como olhamos para a automação de testes tem que evoluir e crescer. O seu uso, bem como quando e onde usar a automação de testes e como esse ciclo impacta nossos sprints regulares de Dev está expandindo o papel das equipes de teste, e claramente, temos muito a aprender e muito a mudar.

Para ser DevOps e não DevFlops – primeiro temos que saber o que estamos buscando, por que, metas e como podemos apoiar melhor o negócio. É um desafio. Do entendimento, à adoção, direção e determinação de onde o QA se ajusta ao DevOps.