SlideShare una empresa de Scribd logo
1 de 6
Descargar para leer sin conexión
Liberação de Software em Ambiente de Melhores
    Produção Seguindo as Melhores Práticas Práticas

            Por Rildo Santos (rildo.santos@etecnologia.com.br )
            Coach, Consultor em Inovação, Sustentabilidade, Processos e
            Tecnologia.
            data: 13/04/2010, revisão: 02/08/2010




Introdução:
Como fazer uma liberação de software em ambiente de produção com menor
risco de quebra do nível de qualidade de serviço?
Devemos levar em consideração que parte deste do sucesso desta empreitada
começa no processo de desenvolvimento de software.



                                                                          1
Liberação de Software em Ambiente de Melhores
    Produção Seguindo as Melhores Práticas Práticas

Processo de Desenvolvimento de Software:

Na fase de Requisitos é definido um modelo de Arquitetura Inicial, na atividade
de especificação de requisitos são definidos os requisitos não funcionais, que
serão a base para os QoS (Qualidade do Serviço) da aplicação.
O QoS de uma aplicação pode ser: Disponibilidade, Integridade, Confiabilidade,
Segurança, Usabilidade, Escalabilidade e etc).


Cabe ao Arquiteto de Software prover uma modelo de Arquitetura do Software
robusto que sustente todos os QoS.
Também no processo de desenvolvimento de software, será elaborado o Plano
de Teste, que deve abranger os Requisitos Não Funcionais do Software.
Este Plano de teste deverá ser aplicado antes de o software ser homologado e
liberado em ambiente de produção.
Detalhe importante quando maior for a maturidade do processo de
desenvolvimento de software melhor deve ser o produto (software resultante), é
por isso que muitas empresas correm atrás do CMMI e/ou MPs.br (ou só
contratam fornecedores para desenvolver software que possuem tais
certificações)
A equipe de teste (Analista de Teste) faz execução dos testes em ambiente de
desenvolvimento.

Veja Exemplo:
RUP (Rational Unified Process) que é considerado as Melhores Práticas
da Engenharia de Software.
- Artefato: Configuração do Ambiente de Teste
  http://www.wthreex.com/rup/process/artifact/ar_tstenv.htm




Melhores práticas para Gerenciamento de Serviços de
TI (aqui entra o Cobit e a ITIL)
No Cobit veja o domínio: Adquirir e Implementar os processos: AI6 e AI7
(porém lembre-se que o Cobit tem uma visão de alto nível, logo, ele não te dirá
"como fazer", ele somente diz "o quê fazer")

Veja o processo AI7 - Instalar e Homologar Soluções e Mudanças deverá
ser seu guia, ele define:

                                                                                  2
Liberação de Software em Ambiente de Melhores
    Produção Seguindo as Melhores Práticas Práticas
AI7.1 Treinamento:
Treinar a equipe dos departamentos usuários envolvidos e as equipes de
operações de TI de acordo com o plano de implementação e treinamento
definido e os materiais associados, como parte de todos os projetos de
desenvolvimento, implementação ou modificação de sistemas de informação.

AI7.2 Plano de Teste
Estabelecer um plano de teste baseado nos padrões organizacionais que
definem papéis, responsabilidades e critérios de sucesso de entrada e saída.
Assegurar que o plano seja aprovado pelas partes relevantes.

AI7.3 Plano de Implementação:
Estabelecer um plano de implementação e de retorno à configuração anterior.
Obter aprovação de todas as partes relevantes.

AI7.4 Ambiente de Testes:
Estabelecer um ambiente de testes seguro que reflita o ambiente de operações
planejado no que diz respeito a segurança, controles internos, práticas
operacionais, exigências de qualidade e confidencialidade e cargas de
trabalho.
AI7.5 Conversão de Dados e Sistemas:
Planejar a conversão de dados e a migração da infraestrutura como parte dos
métodos de desenvolvimento da organização, incluindo trilhas de auditoria,
procedimentos de retorno à situação anterior e de recuperação de falhas.

AI7.6 Teste de Mudanças:
Assegurar que as mudanças sejam testadas de maneira independente e de
acordo com o plano de testes definido antes da migração para o ambiente de
produção.

AI7.7 Teste de Aceitação Final:
Assegurar que o gerenciamento do departamento usuário e da área de TI
avalie o resultado do processo de testes como determinado no plano de testes.
Corrigir erros significativos identificados no processo de testes, executarem
todos os testes listados no plano de testes, bem como qualquer teste de
regressão necessário. Após a avaliação, aprovar a promoção para a produção.

AI7.8 Promoção para a Produção:
Após a conclusão dos testes, controlar a transferência dos sistemas alterados
para operação, de acordo com o plano de implementação. Obter a aprovação
das partes interessadas, como usuários, proprietário do sistema e gerência
operacional. Quando apropriado, executar o sistema em paralelo com o
sistema antigo durante um período e comparar comportamento /resultados.
AI7.9 Revisão pós-implementação:
Estabelecer procedimentos em linha com o gerenciamento de mudanças
organizacionais para garantir a realização da revisão pós-implementação,
conforme definido no plano de implementação.


                                                                                3
Liberação de Software em Ambiente de Melhores
    Produção Seguindo as Melhores Práticas Práticas

Aqui entra a ITIL:
Quem irá fazer a implementação de fato, tem como base a ITIL (versão 2) ,
são os processos Gerenciamento de Mudança, Gerenciamento de Liberação
e Gerenciamento de Infra-estrutura de TIC (Livro laranja).
Seguindo as práticas da ITIL (falando da V2). Veja os passos:

1 - Inicio: Requisição de Serviço (Fazer a liberação do software em
ambiente de produção)

O software será instalado a partir de Requisição de Serviço (que entrará pela
Central de Serviço) observe que está requisição não passará pela
Gerenciamento de Incidentes e nem pelo Gerenciamento de Problemas, ela irá
direto para a Gerenciamento de Mudança (isto na v3 é tratado pelo processo
Request Fulfillment).


2 - Gerenciamento de Mudança: (Este processo é a implementação dos
processos: AI6 e AI7) na ITIL v3 – Transição do Serviço
O objetivo deste processo é planejar, avaliar riscos, definir recursos, aprovar,
testar e autorizar a liberação de mudança de itens de configuração em
ambiente de produção.
O Gerenciamento de Mudança também será o responsável por fazer os testes
pós implementação.
Contudo, o Gerenciamento de Mudança não faz a implementação da mudança,
isto é delegado ao processo de Gerenciamento de Liberação.
Documentos, Artefatos e Afins,
Para planejar a mudança e elaborar a RDM (Requisição de Mudança), o Plano
de Teste, Modelo de Arquitetura e Especificação de Instalação do Software
(algumas empresas também adotam este documento para instalação de
software em ambiente de produção, além da descrição dos requisitos de do
ambiente este documento tem todos os scripts de teste e instalação) todos
estes documentos devem advir do processo de desenvolvimento de software,
serão a base para construção e configuração do ambiente de teste e plano de
teste do software.


3 - Gerenciamento de Liberação – na ITIL v3 o processo de
Gerenciamento de Liberação e Implantação.

O gerenciamento de liberação é o processo responsável pelo planejamento,
programação e controle de movimentação das liberações para os Ambientes
de Teste e Produção.
O objetivo principal do Gerenciamento de Liberação é garantir que a
integridade do Ambiente de Produção seja protegida e que os componentes

                                                                                   4
Liberação de Software em Ambiente de Melhores
    Produção Seguindo as Melhores Práticas Práticas
corretos sejam liberados. O Gerenciamento de Liberação é parte do Processo
de Gerenciamento de Liberação e Implantação.
Planejamento:
Na atividade de planejamento será desenvolvido (caso não exista, se existir ele
deverá ser validado) o Plano de Teste.
O planejamento deverá ter uma abordagem para a construção, testes e
manutenção dos ambientes controlados antes da produção.
As atividades incluem:
• Desenvolver os build plans a partir do SDP (Service Design Package) ,
  especificações e requisitos de configuração do ambiente
• Estabelecer a logística, os prazos para criar as configurações do ambiente
• Testes de Build e procedimentos relacionados;
• Scheduling das Builds e atividades de testes
• Definição dos recursos, funções e responsabilidades, como por exemplo:
  - Os procedimentos de segurança e controle;
  - Suporte técnico;
  - Preparação das Builds e testes de ambientes
  - Gerenciamento de Teste do Banco de Dados e base de testes
  - Gestão de ativos de software e licenças
  - Processo de Gerenciamento de Configuração: Auditoria de configuração,
    Builds e Baselines.

A equipe de liberação poderá com contar com apoio de DBA, Arquiteto de
Software e outros especialistas se for o caso).

Outras atividades:
- Preparação das Builds, teste e Implantação
- Plano de Preparação da implantação

 Após os testes (no ambiente de testes), o software deverá liberado em
 ambiente de produção [AI7.8]. Contudo, se os testes não foram bem
 sucedidos a RDM será devolvida para o Gerenciamento de Mudança.
- Verificação da implantação
- Revisão e encerramento da implantação


4 – Revisão Pós Implementação (PIR): [AI7.9]

Cabe ao processo de Gerenciamento de Mudança fazer a Revisão Pós
Implementação, caso tenha sucesso a RDM será concluída.
Caso contrário poderá ser aplicado o Plano de Backout (desfazer a liberação).




                                                                               5
Liberação de Software em Ambiente de Melhores
    Produção Seguindo as Melhores Práticas Práticas
Epilogo:

Uma questão: Quem será responsável pela instalação
(liberação) do software em ambiente de produção ?
Depende da estrutura organizacional, mas acho que ideal seria do Gerente de
Mudança ou do Comitê de Mudança (que envolve todos os stakeholders do
software que será liberado).
Você poderá fazer os links entre o processo AI7, Cobit, e os processos da
ITIL, fiz alguns para demonstrar que a ITIL diz o como fazer.
Importante, o Cobit e a ITIL são frameworks (que chamo de guias de
referências) você ainda deve considerar as pessoas, o nível de
maturidade dos processos, ferramentas e cultura da empresa, antes de
instituir estes processos.




Referências:
Manual do Cobit Foundation versão 4.1
Livros da ITIL v2: Vermelho, Azul e Laranja*
*Livro Gerenciamento de Infraestrutura de TIC (ICT Infrastructure
Management)da biblioteca ITIL v2(Livro Laranja).
http://rildosan.blogspot.com/2008/07/resumo-do-livro-gerenciamento-de-
infra.html

RUP (Rational Unified Process),
http://www.wthreex.com/rup/portugues/index.htm
Livro da ITIL v3: Transição de Serviço




                                                                              6

Más contenido relacionado

Más de Rildo (@rildosan) Santos

Minicurso Gestão Ágil de Projetos com Abordagem Híbrida
Minicurso Gestão Ágil de Projetos com Abordagem HíbridaMinicurso Gestão Ágil de Projetos com Abordagem Híbrida
Minicurso Gestão Ágil de Projetos com Abordagem HíbridaRildo (@rildosan) Santos
 
Digital Business Design (Design de Negócios Digitais)
Digital Business Design (Design de Negócios Digitais)Digital Business Design (Design de Negócios Digitais)
Digital Business Design (Design de Negócios Digitais)Rildo (@rildosan) Santos
 
Novidades da Sétima Edição do Guia PMBOK
Novidades da Sétima Edição do Guia PMBOKNovidades da Sétima Edição do Guia PMBOK
Novidades da Sétima Edição do Guia PMBOKRildo (@rildosan) Santos
 
Portfólio de Análise de Negócio: Consultoria, Treinamento e Mentoria
Portfólio de Análise de Negócio: Consultoria, Treinamento e MentoriaPortfólio de Análise de Negócio: Consultoria, Treinamento e Mentoria
Portfólio de Análise de Negócio: Consultoria, Treinamento e MentoriaRildo (@rildosan) Santos
 

Más de Rildo (@rildosan) Santos (20)

Minicurso Gestão Ágil de Projetos com Abordagem Híbrida
Minicurso Gestão Ágil de Projetos com Abordagem HíbridaMinicurso Gestão Ágil de Projetos com Abordagem Híbrida
Minicurso Gestão Ágil de Projetos com Abordagem Híbrida
 
Digital Business Design (Design de Negócios Digitais)
Digital Business Design (Design de Negócios Digitais)Digital Business Design (Design de Negócios Digitais)
Digital Business Design (Design de Negócios Digitais)
 
Novidades da Sétima Edição do Guia PMBOK
Novidades da Sétima Edição do Guia PMBOKNovidades da Sétima Edição do Guia PMBOK
Novidades da Sétima Edição do Guia PMBOK
 
Jornada de Aprendizado Lean BPM
Jornada de Aprendizado Lean BPM Jornada de Aprendizado Lean BPM
Jornada de Aprendizado Lean BPM
 
Mapa Mental Scrum
Mapa Mental ScrumMapa Mental Scrum
Mapa Mental Scrum
 
Tutorial Scrum Experience
Tutorial Scrum Experience Tutorial Scrum Experience
Tutorial Scrum Experience
 
Guia BPM CBOK(R)
Guia BPM CBOK(R)Guia BPM CBOK(R)
Guia BPM CBOK(R)
 
Gestão Ágil de Projetos
Gestão Ágil de ProjetosGestão Ágil de Projetos
Gestão Ágil de Projetos
 
Scrum Master em ação
Scrum Master em açãoScrum Master em ação
Scrum Master em ação
 
Transformação Ágil
Transformação ÁgilTransformação Ágil
Transformação Ágil
 
Service Design Thinking
Service Design Thinking Service Design Thinking
Service Design Thinking
 
Gestão de Projetos Ágeis
Gestão de Projetos ÁgeisGestão de Projetos Ágeis
Gestão de Projetos Ágeis
 
Scrum, o tutorial definitivo
Scrum, o tutorial definitivo Scrum, o tutorial definitivo
Scrum, o tutorial definitivo
 
Feedback Canvas
Feedback CanvasFeedback Canvas
Feedback Canvas
 
Business Design Thinking
Business Design ThinkingBusiness Design Thinking
Business Design Thinking
 
Guia de Práticas de Análise de Negócio
Guia de Práticas de Análise de NegócioGuia de Práticas de Análise de Negócio
Guia de Práticas de Análise de Negócio
 
Portfólio de Análise de Negócio: Consultoria, Treinamento e Mentoria
Portfólio de Análise de Negócio: Consultoria, Treinamento e MentoriaPortfólio de Análise de Negócio: Consultoria, Treinamento e Mentoria
Portfólio de Análise de Negócio: Consultoria, Treinamento e Mentoria
 
Process Design Thinking
Process Design ThinkingProcess Design Thinking
Process Design Thinking
 
Project Agile Canvas
Project Agile CanvasProject Agile Canvas
Project Agile Canvas
 
Análise de Negócio na Perspectiva de BI
Análise de Negócio na Perspectiva de BIAnálise de Negócio na Perspectiva de BI
Análise de Negócio na Perspectiva de BI
 

Liberação de software em ambiente de produção seguindo as melhores práticas v2

  • 1. Liberação de Software em Ambiente de Melhores Produção Seguindo as Melhores Práticas Práticas Por Rildo Santos (rildo.santos@etecnologia.com.br ) Coach, Consultor em Inovação, Sustentabilidade, Processos e Tecnologia. data: 13/04/2010, revisão: 02/08/2010 Introdução: Como fazer uma liberação de software em ambiente de produção com menor risco de quebra do nível de qualidade de serviço? Devemos levar em consideração que parte deste do sucesso desta empreitada começa no processo de desenvolvimento de software. 1
  • 2. Liberação de Software em Ambiente de Melhores Produção Seguindo as Melhores Práticas Práticas Processo de Desenvolvimento de Software: Na fase de Requisitos é definido um modelo de Arquitetura Inicial, na atividade de especificação de requisitos são definidos os requisitos não funcionais, que serão a base para os QoS (Qualidade do Serviço) da aplicação. O QoS de uma aplicação pode ser: Disponibilidade, Integridade, Confiabilidade, Segurança, Usabilidade, Escalabilidade e etc). Cabe ao Arquiteto de Software prover uma modelo de Arquitetura do Software robusto que sustente todos os QoS. Também no processo de desenvolvimento de software, será elaborado o Plano de Teste, que deve abranger os Requisitos Não Funcionais do Software. Este Plano de teste deverá ser aplicado antes de o software ser homologado e liberado em ambiente de produção. Detalhe importante quando maior for a maturidade do processo de desenvolvimento de software melhor deve ser o produto (software resultante), é por isso que muitas empresas correm atrás do CMMI e/ou MPs.br (ou só contratam fornecedores para desenvolver software que possuem tais certificações) A equipe de teste (Analista de Teste) faz execução dos testes em ambiente de desenvolvimento. Veja Exemplo: RUP (Rational Unified Process) que é considerado as Melhores Práticas da Engenharia de Software. - Artefato: Configuração do Ambiente de Teste http://www.wthreex.com/rup/process/artifact/ar_tstenv.htm Melhores práticas para Gerenciamento de Serviços de TI (aqui entra o Cobit e a ITIL) No Cobit veja o domínio: Adquirir e Implementar os processos: AI6 e AI7 (porém lembre-se que o Cobit tem uma visão de alto nível, logo, ele não te dirá "como fazer", ele somente diz "o quê fazer") Veja o processo AI7 - Instalar e Homologar Soluções e Mudanças deverá ser seu guia, ele define: 2
  • 3. Liberação de Software em Ambiente de Melhores Produção Seguindo as Melhores Práticas Práticas AI7.1 Treinamento: Treinar a equipe dos departamentos usuários envolvidos e as equipes de operações de TI de acordo com o plano de implementação e treinamento definido e os materiais associados, como parte de todos os projetos de desenvolvimento, implementação ou modificação de sistemas de informação. AI7.2 Plano de Teste Estabelecer um plano de teste baseado nos padrões organizacionais que definem papéis, responsabilidades e critérios de sucesso de entrada e saída. Assegurar que o plano seja aprovado pelas partes relevantes. AI7.3 Plano de Implementação: Estabelecer um plano de implementação e de retorno à configuração anterior. Obter aprovação de todas as partes relevantes. AI7.4 Ambiente de Testes: Estabelecer um ambiente de testes seguro que reflita o ambiente de operações planejado no que diz respeito a segurança, controles internos, práticas operacionais, exigências de qualidade e confidencialidade e cargas de trabalho. AI7.5 Conversão de Dados e Sistemas: Planejar a conversão de dados e a migração da infraestrutura como parte dos métodos de desenvolvimento da organização, incluindo trilhas de auditoria, procedimentos de retorno à situação anterior e de recuperação de falhas. AI7.6 Teste de Mudanças: Assegurar que as mudanças sejam testadas de maneira independente e de acordo com o plano de testes definido antes da migração para o ambiente de produção. AI7.7 Teste de Aceitação Final: Assegurar que o gerenciamento do departamento usuário e da área de TI avalie o resultado do processo de testes como determinado no plano de testes. Corrigir erros significativos identificados no processo de testes, executarem todos os testes listados no plano de testes, bem como qualquer teste de regressão necessário. Após a avaliação, aprovar a promoção para a produção. AI7.8 Promoção para a Produção: Após a conclusão dos testes, controlar a transferência dos sistemas alterados para operação, de acordo com o plano de implementação. Obter a aprovação das partes interessadas, como usuários, proprietário do sistema e gerência operacional. Quando apropriado, executar o sistema em paralelo com o sistema antigo durante um período e comparar comportamento /resultados. AI7.9 Revisão pós-implementação: Estabelecer procedimentos em linha com o gerenciamento de mudanças organizacionais para garantir a realização da revisão pós-implementação, conforme definido no plano de implementação. 3
  • 4. Liberação de Software em Ambiente de Melhores Produção Seguindo as Melhores Práticas Práticas Aqui entra a ITIL: Quem irá fazer a implementação de fato, tem como base a ITIL (versão 2) , são os processos Gerenciamento de Mudança, Gerenciamento de Liberação e Gerenciamento de Infra-estrutura de TIC (Livro laranja). Seguindo as práticas da ITIL (falando da V2). Veja os passos: 1 - Inicio: Requisição de Serviço (Fazer a liberação do software em ambiente de produção) O software será instalado a partir de Requisição de Serviço (que entrará pela Central de Serviço) observe que está requisição não passará pela Gerenciamento de Incidentes e nem pelo Gerenciamento de Problemas, ela irá direto para a Gerenciamento de Mudança (isto na v3 é tratado pelo processo Request Fulfillment). 2 - Gerenciamento de Mudança: (Este processo é a implementação dos processos: AI6 e AI7) na ITIL v3 – Transição do Serviço O objetivo deste processo é planejar, avaliar riscos, definir recursos, aprovar, testar e autorizar a liberação de mudança de itens de configuração em ambiente de produção. O Gerenciamento de Mudança também será o responsável por fazer os testes pós implementação. Contudo, o Gerenciamento de Mudança não faz a implementação da mudança, isto é delegado ao processo de Gerenciamento de Liberação. Documentos, Artefatos e Afins, Para planejar a mudança e elaborar a RDM (Requisição de Mudança), o Plano de Teste, Modelo de Arquitetura e Especificação de Instalação do Software (algumas empresas também adotam este documento para instalação de software em ambiente de produção, além da descrição dos requisitos de do ambiente este documento tem todos os scripts de teste e instalação) todos estes documentos devem advir do processo de desenvolvimento de software, serão a base para construção e configuração do ambiente de teste e plano de teste do software. 3 - Gerenciamento de Liberação – na ITIL v3 o processo de Gerenciamento de Liberação e Implantação. O gerenciamento de liberação é o processo responsável pelo planejamento, programação e controle de movimentação das liberações para os Ambientes de Teste e Produção. O objetivo principal do Gerenciamento de Liberação é garantir que a integridade do Ambiente de Produção seja protegida e que os componentes 4
  • 5. Liberação de Software em Ambiente de Melhores Produção Seguindo as Melhores Práticas Práticas corretos sejam liberados. O Gerenciamento de Liberação é parte do Processo de Gerenciamento de Liberação e Implantação. Planejamento: Na atividade de planejamento será desenvolvido (caso não exista, se existir ele deverá ser validado) o Plano de Teste. O planejamento deverá ter uma abordagem para a construção, testes e manutenção dos ambientes controlados antes da produção. As atividades incluem: • Desenvolver os build plans a partir do SDP (Service Design Package) , especificações e requisitos de configuração do ambiente • Estabelecer a logística, os prazos para criar as configurações do ambiente • Testes de Build e procedimentos relacionados; • Scheduling das Builds e atividades de testes • Definição dos recursos, funções e responsabilidades, como por exemplo: - Os procedimentos de segurança e controle; - Suporte técnico; - Preparação das Builds e testes de ambientes - Gerenciamento de Teste do Banco de Dados e base de testes - Gestão de ativos de software e licenças - Processo de Gerenciamento de Configuração: Auditoria de configuração, Builds e Baselines. A equipe de liberação poderá com contar com apoio de DBA, Arquiteto de Software e outros especialistas se for o caso). Outras atividades: - Preparação das Builds, teste e Implantação - Plano de Preparação da implantação Após os testes (no ambiente de testes), o software deverá liberado em ambiente de produção [AI7.8]. Contudo, se os testes não foram bem sucedidos a RDM será devolvida para o Gerenciamento de Mudança. - Verificação da implantação - Revisão e encerramento da implantação 4 – Revisão Pós Implementação (PIR): [AI7.9] Cabe ao processo de Gerenciamento de Mudança fazer a Revisão Pós Implementação, caso tenha sucesso a RDM será concluída. Caso contrário poderá ser aplicado o Plano de Backout (desfazer a liberação). 5
  • 6. Liberação de Software em Ambiente de Melhores Produção Seguindo as Melhores Práticas Práticas Epilogo: Uma questão: Quem será responsável pela instalação (liberação) do software em ambiente de produção ? Depende da estrutura organizacional, mas acho que ideal seria do Gerente de Mudança ou do Comitê de Mudança (que envolve todos os stakeholders do software que será liberado). Você poderá fazer os links entre o processo AI7, Cobit, e os processos da ITIL, fiz alguns para demonstrar que a ITIL diz o como fazer. Importante, o Cobit e a ITIL são frameworks (que chamo de guias de referências) você ainda deve considerar as pessoas, o nível de maturidade dos processos, ferramentas e cultura da empresa, antes de instituir estes processos. Referências: Manual do Cobit Foundation versão 4.1 Livros da ITIL v2: Vermelho, Azul e Laranja* *Livro Gerenciamento de Infraestrutura de TIC (ICT Infrastructure Management)da biblioteca ITIL v2(Livro Laranja). http://rildosan.blogspot.com/2008/07/resumo-do-livro-gerenciamento-de- infra.html RUP (Rational Unified Process), http://www.wthreex.com/rup/portugues/index.htm Livro da ITIL v3: Transição de Serviço 6