A auto-organização pode ser desafiadora, precisamos entender o que é necessário para alcançá-la, e o sucesso precisa ser visível, disse Mirco Hering, diretor administrativo da Accenture. Hering sugeriu criar limites para se auto-organizar e enriquecer o contexto da equipe, mostrando o quão bem estão se desenvolvendo.
"Ao longo dos anos, mudei de idéia algumas vezes sobre a auto-organização, realmente gostei, mas também vi essa ideia fracassar com muita frequência", disse Hering no Agile Portugal 2019.
Hering mencionou que as pessoas que se auto-organizam precisam entender todas as coisas que são necessárias para alcançar os resultados, e que o sucesso precisa ser visível para toda a equipe. Nas organizações, ambos os fatores muitas vezes não são facilmente alcançáveis, o que resulta em equipes auto-organizadas que escolhem as coisas que querem fazer, ignorando as demais. Hering deu o exemplo de quando queremos construir uma prova de conceito que é funcionalmente correta, mas tem problemas de segurança e de escala.
Hering forneceu dois caminhos, ou criamos limites para se auto-organizar ou enriquecemos o contexto da equipe para que possam ver o quão bem estão progredindo.
Para criar limites, olhamos para todas as coisas que precisam ser feitas e concordamos onde a equipe ou não pode se organizar. Hering ofereceu um exemplo:
No meu mundo, nossos coaches ágeis podem se auto-organizar nas coisas querem trabalhar e com quais clientes trabalhar, mas o orçamento de marketing e as prioridades, são definidos pela equipe de marketing.
Se quiser enriquecer o contexto da equipe, podemos dar mais dados ao longo do tempo, argumentou Hering. Temos que deixá-los ver o número de violações de segurança, os tickets de suporte criados pelos usuários, os dados de telemetria da infraestrutura e outras coisas mais.
Como isso seria esmagador se feito de uma só vez, Hering sugeriu aumentar lentamente o fluxo de dados enquanto aumentava os níveis de auto-organização.
Mirco Hering falou sobre a aplicação de ideias do mundo ágil para o DevOps no Agile Portugal 2019. O InfoQ entrevistou Hering sobre como equilibrar as necessidades de equipes e organizações, além de aplicar o DevOps.
InfoQ: Como podemos equilibrar as necessidades das equipes, autonomia e auto-organização, por exemplo, com requisitos organizacionais? Como garantir que possam ser gerenciados e governados?
Mirco Hering: As organizações terão que encontrar o equilíbrio certo. Não é razoável esperar que cada equipe cubra tudo, desde a infraestrutura em segurança até o design de usabilidade. Queremos equipes pequenas e ágeis e que devem focar no que é mais importante para as partes interessadas.
Os outros aspectos devem ser cobertos por meio de recursos de autoatendimento, como provisionamento de ambiente automatizado ou segurança incorporada ao pipeline de implementação. Onde isso não for possível, as funções compartilhadas ainda terão um papel importante, por exemplo, ter especialistas em experiência do usuário que a equipe possa aproveitar.
O que é fundamental é tornar esses processos o mais simples possível. Gosto da ideia de medir o quão dependente a equipe é de outras pessoas fora da equipe e quanto tempo cada solicitação de ajuda leva para ser atendida. Isso nos dá duas boas medidas para melhorar ao longo do caminho, para ver quão autônomas as equipes estão se tornando.
InfoQ: Qual é o conselho para aplicar o DevOps em organizações que já estão em uma jornada ágil?
Hering: Minha sincera esperança é que, se estivermos em nossa jornada ágil e tivermos algo a ver com o software, o DevOps seja parte da jornada. O DevOps, no sentido mais amplo e significativo, trata de melhorar o processo geral de entrega. O Agile ajudará a criar melhores soluções. O DevOps ajudará a entregá-las de maneira mais eficiente e independente.
A chave para isso é usar o Agile para a jornada do DevOps e gerenciar os aprimoramentos de DevOps como experiências em nosso backlog. Cada experiência melhorará o mecanismo de entrega ou permitirá que aprendamos algo sobre esse mecanismo. Quando aplicado corretamente, o DevOps criará recursos na plataforma DevOps que as equipes podem utilizar sem precisar se preocupar com os detalhes de infraestrutura, segurança, desempenho e outros. O DevOps pode ser um ótimo facilitador de equipes auto-organizadas, abstraindo essas preocupações e tornando-as em parte da plataforma que as equipes ágeis oferecem. E, é claro, as equipes podem se envolver com a plataforma tanto quanto querem ou precisam, mas, em geral, podem se concentrar em fornecer os resultados funcionais que encantam os stakeholders.
Se temos métricas significativas para nos guiar, então iteração por iteração ficaremos melhor por definição. Não deixe o dogmatismo sobre o que é ou não é o DevOps no caminho, contanto que estejamos melhorando no fornecimento de software, estamos no caminho certo.