Gerenciamento de mudanças e DevOps

21 de dezembro / 8 minutos de leitura

O gerenciamento de mudanças (ou capacitação de mudanças se você vive em um mundo ITIL 4) e DevOps são duas práticas que podem ajudar seus departamentos de TI a transformar a experiência do cliente. Usados de forma eficaz, eles podem ajudar a possibilitar mudanças e, ao mesmo tempo, proteger os serviços ativos. Mas o problema é o seguinte - muitas pessoas pensam que eles são mutuamente exclusivos - que de alguma forma a gestão de mudanças é o anti-DevOps. Ao assumir que os dois estão em desacordo, os departamentos de TI em todo o mundo estão perdendo um truque. Este artigo examinará como o gerenciamento de mudanças e as práticas de DevOps podem funcionar juntas para permitir a transformação sem comprometer a estabilidade e o desempenho.

O básico

O gerenciamento de mudanças é a prática que proporciona mudanças de forma eficaz, eficiente e segura. Ele também passou por uma espécie de reforma nos últimos anos. Dependendo da sua versão do ITIL, você também pode usar práticas de gerenciamento de mudanças, controle ou capacitação. A orientação mais recente das "TIL Towers" é que se trata de uma prática recém-criada chamada capacitação de mudanças, que tem tudo a ver com viabilizar resultados de negócios. Neste artigo, usarei os termos capacitação e gerenciamento de forma intercambiável.

DevOps é uma metodologia de desenvolvimento de software que integra o desenvolvimento e as operações de TI e torna as coisas mais eficientes ao introduzir automação e práticas de trabalho melhores e mais rápidas. Tem como objetivo melhorar a prestação de serviços, integrando e alinhando mais estreitamente as atividades realizadas pelas equipes de desenvolvimento e suporte.

Como DevOps e Gerenciamento de Mudanças se combinam

Ao trabalharem juntos, o DevOps e o gerenciamento de mudanças podem agilizar e padronizar o processo de mudança, desde o design até o suporte BAU. O gerenciamento de mudanças pode ajudar as equipes de desenvolvimento a avaliar riscos, compreender o impacto nos negócios e chegar a um acordo sobre as janelas de implementação caso a implantação possa interromper serviços e práticas de DevOps, como testes, monitoramento, controle de versão e ciclos de feedback, para garantir que as mudanças sejam implantadas de forma consistente e confiável, e de uma forma que proporcione resultados ao cliente.

Combinar aspectos de gestão de mudanças e práticas recomendadas de DevOps permite que as organizações combinem as melhores partes da capacitação de mudanças e da inovação. O DevOps sugere que as equipes de desenvolvimento e suporte operacional trabalhem em estreita colaboração durante todo o ciclo de vida de desenvolvimento de software, onde as equipes de operações de TI se envolvem fortemente no estágio de teste e ajudam as equipes a criar documentação de suporte e práticas de trabalho. A equipe, por sua vez, está envolvida no período de suporte inicial, permitindo que o service desk e o suporte lidem com incidentes relacionados ao serviço novo ou alterado. Essa abordagem leva a algo mais coeso, implantações bem-sucedidas e melhores níveis de serviço e experiência do cliente.

Colocando as coisas em prática

Agora que estabelecemos que o gerenciamento de mudanças e o DevOps podem capacitar-se e apoiar-se mutuamente, aqui estão algumas dicas importantes para combinar os dois:

  • Melhore o seu CAB. A nova orientação ITIL4 iniciou uma mudança nas funções de aprovação. A recente função de autoridade de mudança substituiu o modelo de conselho consultivo de mudanças (CAB) usado nas versões anteriores do ITIL. Um dos maiores problemas que técnicos, desenvolvedores e gerentes de projeto tiveram com o gerenciamento de mudanças tradicional foi a expectativa de que tudo tivesse que ser revisado e aprovado pelo CAB. Substituir o CAB por uma autoridade de mudança significa que os revisores pares e a automação podem avaliar e autorizar mudanças.
  • Outra opção poderia ser substituir totalmente o CAB por uma reunião diária para revisar a atividade de liberação. Em vez de uma reunião tradicional do CAB, esta abordagem serve mais para que especialistas técnicos revisem o cronograma de mudanças do dia, discutam quaisquer questões e estimulem o pensamento para que a pessoa que implementa a mudança possa verificar sua abordagem e solicitar suporte adicional.
  • Use modelos e alterações padrão para melhorar o fluxo. Os modelos são um conjunto de etapas predefinidas, portanto, se a natureza da mudança for conhecida e compreendida, ela poderá ser aprovada por meio de sua ferramenta pelas partes interessadas apropriadas. As mudanças padrão levam isso um passo adiante ao implementar pré-aprovação para atividades de mudança de rotina de baixo risco.
  • Use sua biblioteca de mídia definitiva (DML) e armazenamento de hardware (HS) para implantar versões para que você saiba que os ativos envolvidos estão sob controle. Atenda às especificações exigidas, esteja protegido contra ameaças externas e devidamente licenciado.
  • Certifique-se de que as convenções de nomenclatura sejam acordadas previamente, facilitando a implantação do código correto no ambiente certo.
  • Ao criar e testar código em ambientes de pré-produção, libere todo o código em ciclos para que quaisquer dependências possam ser identificadas mais cedo ou mais tarde.
  • Apresente o conceito de testes seguros contra falhas. Se algo vai falhar, é melhor descobrir mais cedo ou mais tarde. Safe-to-Fail aplica esse conceito para testar diferentes maneiras de alcançar o melhor resultado possível por meio da mudança. Um aspecto fundamental do Safe-to-Fail é a mudança cultural que ele traz. Ao criar espaços seguros, os colegas sentem-se capacitados para experimentar e aprender. Deixe claro para o seu pessoal que uma parte fundamental do processo de tentativa e melhoria é que não existem erros bobos, desde que sejam identificados, resolvidos rapidamente e aprendidos com eles.
  • Use usuário canário e ambiente piloto para verificar mudanças maiores. Se adotarmos as melhores práticas, poderemos confiar em nosso código, práticas de trabalho e pessoas. Ainda assim, não podemos planejar tudo: peculiaridades do sistema operacional, defeitos que ocorrem apenas em determinados cenários e mudanças na rede. Ao implantar primeiro em um grupo independente, você pode entender como sua implantação se comporta em um ambiente ativo sem arriscar o serviço para toda a sua base de usuários.
  • Use o monitoramento contínuo para detectar problemas de conformidade e segurança associados ao seu ambiente de produção. Use a automação integrada para acionar eventos e alertas para que suas equipes de gerenciamento de eventos e incidentes possam tomar as medidas apropriadas se um problema for sinalizado.
  • Use histórias para reduzir o atraso. Reduzir o tamanho dos lotes e fazer alterações pequenas e frequentes permite um fluxo rápido para a produção, mas também oferece suporte a um fluxo de feedback rápido e constante durante todo o ciclo de vida do projeto e da transição. Uma maneira de fazer isso é reduzir o tamanho dos pacotes de lançamento e aumentar a frequência. Ao agrupar o trabalho em lotes em partes pequenas e realizáveis, em vez de implantações maiores, você pode facilitar a implantação de código e reduzir o risco de defeitos graves, oferecendo suporte à integração e entrega contínuas.
  • Aumente a velocidade conversando com suas equipes sobre a remoção de restrições e bloqueadores. Como ponto de partida, fale com seus técnicos, desenvolvedores e gerentes de projeto e tenha como missão descobrir os pontos problemáticos do trabalho diário e corrigi-los.
  • Crie um modelo de notas de versão para ter uma aparência consistente e vincule-as à sua base de conhecimento para que possam ser armazenadas centralmente e facilmente acessíveis.
  • Falando em bases de conhecimento, armazene o conhecimento centralmente para que todos saibam onde encontrar instruções de instalação, guias de solução de problemas ou detalhes de contato de suporte.
  • Aja como uma equipe. Todo o trabalho é revisado por pares antes de progredir, e trabalhamos com todos para construir um ambiente de trabalho favorável, para que todos se sintam confortáveis em desafiar quando as coisas não parecem certas, fazer perguntas ou até mesmo pedir ajuda. Tenha equipes técnicas envolvidas no desenvolvimento e teste do código para que possam compreender e oferecer suporte a novos serviços de forma eficaz. Faça com que colegas da equipe de desenvolvimento auxiliem as equipes de service desk e de suporte operacional na fase inicial de implementação e suporte para que qualquer solução de problemas possa ser realizada de forma rápida, eficiente e segura.
  • Faça com que seus conjuntos de ferramentas façam parte do trabalho pesado. Integre a cadeia de ferramentas DevOps à sua ferramenta de gerenciamento de serviços de TI (ITSM) para que as notificações possam ser enviadas às partes interessadas relevantes em pontos-chave do pipeline e você mude para uma abordagem baseada em pull para aumentar a eficiência e o fluxo. Considere como a automação pode aumentar a velocidade, por exemplo, criando scripts para a versão e empacotando as implantações em vez de implantar manualmente arquivos separados.
  • Crie um repositório central de código para que todas as alterações no código-fonte sejam capturadas e possam ser revertidas de forma rápida e fácil, se necessário.
  • Compreenda e responda a todos os comentários das partes interessadas e certifique-se de que eles sejam reconhecidos, registrados e postos em prática.
  • Gerencie seus ciclos de feedback: Encurtar e ampliar os ciclos de feedback significa que os problemas de qualidade podem ser corrigidos na fonte, evitando defeitos e retrabalho.
  • Reserve tempo para melhoria contínua. Uma abordagem é usar o conceito de ganhos marginais, a teoria de que melhorar e otimizar seu desempenho em uma pequena quantidade em múltiplas áreas levará a melhorias gerais mais significativas e perceptíveis. A ideia é realizar uma pequena parte ou atividade de melhoria alcançável, dar-lhe tempo para ser incorporada à sua organização e, em seguida, partir novamente para o próximo ciclo de melhoria. Nas palavras de Walt Disney, “Continue seguindo em frente”, e as coisas vão melhorar com o tempo. Outra opção é usar a abordagem Kaizen do Lean Sigma, onde pequenas atividades de melhoria são programadas regularmente como parte do trabalho diário. Kaizen consiste em fazer muitas pequenas melhorias continuamente para que seus produtos, serviços e formas de trabalhar sejam continuamente refinados.

Benefícios de combinar mudança e DevOps

  • Os resultados de negócios são entregues de forma consistente, eficaz e segura.
  • Mudar a reunião do CAB liberará tempo e recursos para se concentrar em mudanças mais complexas. Um dos meus casos de uso favoritos é em torno da mudança do papel do CAB. Ainda há lugar para isso, mas meu dinheiro está mudando o escopo para que seja uma reunião muito pouco frequente, focada em mudanças complexas e de alto risco que podem causar interrupção do serviço.
  • Seguir um modelo de lançamento contínuo significa que o software é implantado de uma forma que pode ser adaptado às necessidades da organização e de suas partes interessadas.
  • Melhor comunicação entre as equipes de TI e de negócios. Ao combinar o gerenciamento de mudanças e o DevOps, você garante que as implantações sejam gerenciadas de maneira eficaz e, ao mesmo tempo, construa uma cultura de comunicação, colaboração e confiança. Todos serão ouvidos e ter perspectivas adicionais pode gerar novas ideias e melhorar os métodos de trabalho.
  • Risco reduzido e maior capacidade de resposta; se houver um problema com o código, a mudança não estiver progredindo ou algo não estiver certo, ele ficará visível para todos, permitindo que a ação correta seja tomada.
  • O aumento do uso da automação aumenta a velocidade e reduz o potencial de erro humano ou de processo.
  • A fila de mudanças é mais controlada, as transferências são mais eficientes e os resultados de negócios são alcançados mais rapidamente. Resumindo, o DevOps ajuda seu processo de gerenciamento de mudanças a passar de um bloqueador percebido a um facilitador essencial para o negócio.
  • Uma cultura de melhoria contínua: a TI se torna uma plataforma para melhoria e inovação contínuas porque a experimentação é incentivada, as pessoas são incentivadas a experimentar coisas novas e todos trabalham como uma equipe.

Pensamentos finais

O gerenciamento/habilitação de mudanças e o DevOps são muito mais eficazes quando usados em conjunto. Ao combinar aspectos de mudança nas práticas de DevOps, você aumenta o suporte para governança, GRC e escalonamentos. Ao incorporar DevOps em sua prática de mudança, seus fluxos de trabalho se tornarão mais eficientes, a automação aumentará o fluxo e haverá mais suporte para colaboração e trabalho em equipe. A conclusão? Resultados mais rápidos, mais enxutos e mais seguros e #CX melhorado. Entre no negócio!

Sobre a Autora

Vawns Murphy

Vawns é uma mãe irlandesa de 3 filhos e é uma profissional experiente e premiada em gerenciamento de serviços. Longa história como arquiteta, consultora e evangelista de ITSM. Membro do conselho do itSMF no Reino Unido. Membro do Comitê de Gestão do itSMF Ireland, autora do material do itSMF UK sobre Transição de Serviços, Gerenciamento de Ativos de Software e Gerenciamento de Problemas. Revisora da publicação Service Transition ITIL 3 2011. Vencedora do prêmio de liderança inovadora itSMF UK 2016. Membra fundadora e blogueira interna do site ITSM Tools.

Vawns é consultora principal da i3Works Limited e escreve blogs para ITSM.Tools e itSMF UK. Quando não está trabalhando ou correndo atrás dos filhos, Vawns pode ser encontrada no estádio Madejski apoiando o poderoso Reading FC, falhando no Couch para 5 K ou bebendo muito café.

Assine nossa newsletter para obter mais conteúdo de qualidade

Receba novos conteúdos em sua caixa de entrada

Ao clicar em 'mantenha-me informado', você concorda com o processamento de dados pessoais de acordo com o Política de Privacidade.