Gerência - Metodologias e Processos

MOF: Gerenciamento de Versões - SMF (Release Management)

Neste artigo iremos estudar as práticas recomendadas para o gerenciamento de versões, com o intuito de facilitar a implementação de liberações em um ambiente de produção de uma forma bem sucedida.

por Cleber Farias Marques



Objetivo

Neste artigo iremos estudar as práticas recomendadas para o gerenciamento de versões, com o intuito de facilitar a implementação de liberações em um ambiente de produção de uma forma bem sucedida, desejo uma boa leitura.

Introdução

Obs.: Achei melhor deixar alguns termos em inglês mesmo porque na maioria das vezes iremos trabalhar com eles desta forma no mercado.

Vamos falar um pouco agora sobre o Release Management - Gerenciamento de Versões, um processo com foco em facilitar a implementação de liberações em um ambiente de produção de forma bem sucedida, sendo um ponto de coordenação entre a equipe de desenvolvimento e a equipe de operações combinando as práticas do MSF e do MOF como fundamento para o ciclo de vida desde o desenvolvimento até o processo de implementação e entrega de um produto ou solução.

Um bom Gerenciamento de Versões deve planejar, gerenciar e garantir um empacotamento e uma distribuição de versões ideal, garantindo que todos os aspectos da liberação sejam considerados antes de sua implantação. Este conceito permite agir com pró-atividade na hora de lidar com mudanças típicas ou emergenciais, oferecer um plano de versão alinhado com as exigências resultantes das alterações aprovadas, construir pacotes de versão efetivos para a implementação de uma ou mais mudanças no ambiente de produção, preparar revisões para a versão com o intuito de assegurar ao máximo uma implementação segura e implementar uma versão de acordo com os guias estruturados de implementação.

Definições Importantes

Para entendermos melhor este artigo e a documentação oficial para esta SMF vamos conhecer algumas definições importantes que também são recomendadas pela Microsoft na própria documentação do MOF, lembrando também que mesmo algumas definições sendo as mesmas encontradas no mercado muitas delas são feitas com base nesta SMF.

Backout Plan: Um plano que detalha como uma mudança, ou versão, pode ser desfeita depois que foi implementada no ambiente de produção, se for necessário.

Change Advisory Board (CAB): Grupo formado para fazer recomendações, análise adicional, adiamento ou até o cancelamento de uma mudança proposta com foco nas necessidades do negócio, prioridades, custo/benefício e impactos.

Change Manager: A pessoa que é responsável por todo o processo de Gerenciamento de Alterações no departamento de TI.

Release: Uma coleção de uma ou mais mudanças que inclui itens de configuração (CI) novos e/ou alterados devidamente testados para serem introduzidos no ambiente de produção.

Release Manager: A pessoa que é responsável por todo o processo de Gerenciamento de Versões. Para versões muito grandes e complexas o gerente deve formar um time para gerenciar as atividades, ele deverá também selecionar os membros da equipe, as funções e responsabilidades.

Release Package: Um pacote com todos os componentes de uma mudança incluindo processos, ferramentas, tecnologias e documentos necessários para colocar a versão em produção.

Request for Change (RFC): É um pedido formal de mudança, incluindo a descrição da mudança necessária, os componentes afetados, as necessidades do negócio, estimativa de custos, avaliação de riscos, recursos necessários e status de aprovação.

Descrição de Processos e Atividades

As atividades da SMF Release Management podem ser representadas por um fluxo de processos que aborda as tarefas fundamentais necessárias para gerenciar liberações com excelência, a seguir iremos conhecer as fases deste processo.

Release Planning

Na primeira etapa deveremos elaborar um plano que identifique as atividades e os recursos necessários para implementar com sucesso uma nova versão no ambiente de produção. O escopo e o conteúdo da alteração devem ser identificados de acordo com os requisitos, devemos também fazer uma avaliação dos riscos envolvidos e envolver nesta avaliação os grupos apropriados para que seja possível priorizar, planejar e agendar as atividades de liberação. Será necessário também montar uma equipe, alinhar a estratégia com os especialistas e os interessados e por fim documentar e registrar todas as atividades planejadas para a liberação.

Release Building

Na segunda etapa teremos que identificar e desenvolver os processos, ferramentas e tecnologias necessárias para implementar a nova versão no ambiente de produção. Devemos selecionar uma tecnologia que permita uma liberação estratégica, repetitível e consistente e também teremos que desenhar e construir um Release Package (Pacote de liberação), testando as alterações para garantir o alinhamento com os requisitos e garantir que o pacote seja adicionado à CMDB, como um Release Package pendente, e se necessário adicionar algum script à DSL.

Acceptance Testing

Esta terceira etapa do processo permite que os desenvolvedores e os representantes do negócio vejam como a liberação e o pacote de liberação (Release Package) são executados juntos em um ambiente que reflete um ambiente de produção. Devemos desenhar e construir um ambiente de testes que simule o ambiente de produção para que seja possível realizar alguns testes fundamentais como se fosse o próprio usuário alinhando o que está sendo desenvolvido com o que foi requisitado e fazer um piloto de teste controlado no ambiente de produção para avaliar os resultados e tomar decisões necessárias para a próxima etapa.

Release Preparation

Na quarta etapa teremos que preparar o ambiente de produção para a nova versão a ser implementada. Tenha certeza de que os recursos necessários estejam disponíveis e que uma comunicação efetiva vem sendo realizada com relação a esta mudança, assegure também que os treinamentos e atividades com os usuários foram concluídos e confirme que o ambiente está pronto para receber a alteração. Revise a preparação de implementação da liberação em um ambiente de produção e verifique se realmente todas as mudanças relacionadas foram controladas pelo processo de Change Management. Por fim gerencie uma discussão através da OMR Release Readiness Review.

Release Deployment

Durante a quinta etapa, a fase de Deployment Process as tarefas e atividades vão depender do tipo e da natureza da liberação e é claro do mecanismo utilizado para executar esta etapa. Selecione um grupo para o desenvolvimento e tenha certeza de que os usuários tenham sido treinados adequadamente para beneficiar ao máximo esta liberação. Implemente a nova versão no ambiente de produção e revise a implementação levando em conta o comentário de todos os envolvidos, encaminhe este feedback ao Change Manager para que ele possa utilizá-lo na fase de Change Review e então conclua com sucesso a seqüência de implementação e revisão.

Atenção: Vale lembrar que cada uma das etapas descritas acima oferece muito mais detalhes do que os que vimos aqui, porém detalhar o processo não é o intuito agora, com este artigo nós devemos entender basicamente como funcionam estes passos, mas futuramente iremos estudar estas recomendações na prática, para isso continuem acompanhando os artigos.

Logo abaixo podemos ver o diagrama que representa o fluxo citado acima, os processos neste caso seguem um ciclo iterativo, veja:

Figura 1 – Fluxo de processos da SMF Release Management.

Com as novas tecnologias desenvolvidas pela Microsoft temos muito mais alternativas do que antes para nos apoiar na resolução dos passos descritos acima, um bom exemplo é o System Center, uma família de soluções de gerenciamento de TI que nos ajuda planejar, implantar, gerenciar e otimizar de forma pró-ativa nosso ambiente, temos também o SMS, MOM, ISA, Windows Server 2003 o 2008 entre outros, mas este é assunto para um próximo artigo.

Conclusão

Com o aprendizado adquirido por nós neste terceiro artigo completamos o quadrante de Alteração, que com suas três SMS nos permitiu entender como o início do ciclo funciona, desde o gerenciamento de Alterações, configurações até o controle de versões. Sendo assim nosso projeto já teve um início bem sucedido e agora iremos aprender como gerenciar esta mudança com as SMFs apresentadas no próximo quadrante, então para o próximo artigo vamos falar um pouco mais sobre a Administração de Sistemas, muito obrigado e até lá.

Cleber Farias Marques

Cleber Farias Marques - Atua na área de TI desde 1997, é graduado em Análise e Desenvolvimento de Sistemas e Pós-graduando em Gestão de TI Aplicada aos Negócios. Possui certificações em ambiente de Infra-Estrutura Microsoft como MCP, MCDST, MCSA, MSFE e também ITIL Foundation, sendo o primeiro certificado MOF Foundation do Brasil. Idealista do projeto MOF Brasil (www.clebermarques.com) que tem como objetivo compartilhar as melhores práticas de ITSM.