gerenciamento de mudanças software

Gerenciamento de mudanças de software: 6 Dicas para fazer um upgrade de versão seguro

Gerenciamento de mudanças de software: 6 Dicas para fazer um upgrade de versão seguro 385 312 Cléber Piçarro
gerenciamento de mudanças software

Está fazendo a mudança da versão de uma ferramenta de gestão online em seu negócio?

Está em dúvida de como fazer o gerenciamento de mudanças de software?

Neste post você vai ver diversas dicas de como desenvolver um plano de gerenciamento de mudanças de software para que tudo transcorra da melhor maneira possível.

Saiba mais: Tecnologia no varejo: a protagonista do seu negócio!

O que é um upgrade de versão

Todo sistema informatizado é uma “cópia” do mundo real feita dentro dos computadores.

Ou seja, como os sistemas copiam o mundo real (operações, leis, entendimento das pessoas envolvidas, competição entre fornecedores, produtos, etc.) o mesmo está em constante mudança. Po isso, os sistemas também precisam estar em constante adaptação.

Costumamos dizer na Nérus que “desenvolver o software” não é tão complicado. Contudo, fazer as pessoas usarem o sistema da forma correta e, principalmente, manter este sistema em constante evolução é uma tarefa para especialistas.

Quais são as dificuldades envolvidas no gerenciamento de mudanças de software

Entre as grandes dificuldades para manter um sistema em constante evolução estão:
  • Mudanças da legislação;
  • Mudanças no ambiente de competição (novos processos);
  • Mudanças no ambiente das empresas (troca de pessoas, etc);
  • Configuração do ambiente técnico do Cliente que chamamos de pilha tecnológica (servidores, impressoras fiscais, computadores, infra estrutura de rede de dados, segurança de firewall, , TEF, etc);
  • Processos que cada empresa já tem implantado e funcionando e o que ela deseja implantar;
  • Constante evolução da tecnologia;
  • Diferenças entre as várias empresas que usam um mesmo sistema – vamos nos concentrar nisso um pouco mais.

Ao fazer qualquer mudança organizacional em sua empresa, é preciso tomar providências para que ela aconteça de forma natural.

Confira este vídeo produzido pela Revista Exame que dá dicas do procedimentos de gerenciamentos de mudanças que um líder precisa conhecer:

Veja também: Como um software de automação no varejo pode ajudar minha empresa?

Quais os cuidados do fornecedor de sistemas

O ideal é que você crie um plano de gerenciamento de mudanças de software. Mas, antes de vermos mais detalhes sobre esse plano, confira alguns cuidados que você deve tomar:

Processos de Engenharia de Software

É responsabilidade do fornecedor de software garantir a utilização das melhores práticas de Engenharia de software envolvidas nesse processo. Entre elas estão CMMi, MPSBr, Scrum, etc.

A Nérus já praticava boa parte desses cuidados, mas desde 2014 está em processo de evolução nessas práticas.

Contratamos uma consultoria especializada em MPSBr, ligada à Fumsoft (entidade envolvida no momento e evolução da comunidade de software) e neste ano (2015) vamos nos submeter ao processo de certificação. Nossa previsão de nos certificarmos até Setembro/2015.

Entre os cuidados envolvidos nesse processo estão:

1. Processo de especificação formal de todas as demandas;
2. Práticas de desenvolvimento padronizadas;
3. Práticas de controle de desenvolvimento;
4. Processos de teste unitário e regressivo de todas as versões;
5. Processos de entrega da versão ao Cliente e também toda a documentação envolvida através de sistemas especializados.

Treinamento e Cuidados com a Equipe

Toda a equipe é constantemente treinada tanto em tecnologias quanto em processos para garantir total aderência aos processos citados.

Além disso, é importante também garantir um monitoramento constante das pessoas através do RH para ter certeza que estamos contratando e mantendo os melhores profissionais necessários.

Monitoramento constante dos Clientes

Através de nossos departamentos de suporte e vendas, além de pesquisas constantes (semestrais), avaliamos o nível de satisfação dos Clientes.

Esse monitoramento nos indica o nível de esforço que temos que empenhar para melhorar nossos serviços de suporte, implantação e desenvolvimento.

Veja mais alguns pontos importantes para quem via desenvolver um plano de gerenciamento de mudanças:

implantação de sistemas ERP

Fonte: Company Web

Quais os cuidados dos Clientes?

Contudo, apenas tomar cuidado com o software não é suficiente, infelizmente. O ambiente do Cliente e a forma como ele utiliza o sistema varia muito. Para se ter uma idéia, temos hoje quase 1.200 lojas, ligadas a mais de 200 grupos empresariais, utilizando o sistema de forma diferente, em servidores diferentes, ambientes de rede diferentes, processos configurados de forma diferente, etc.

É tecnicamente inviável manter todos os ambientes, configurações de máquina, servidores, equipamentos de ponta, dentro de qualquer fornecedor, não apenas na Nérus. Logo, todas as práticas anteriores se baseiam em algumas premissas.

Em especial, processos mais críticos e principais casos de testes usados em equipamentos padronizados. Logo, o que fazer para garantir qualidade quando troco minha versão, atualizo ou faço upgrade de software?

Aí vão as principais dicas para organizar seu plano de gerenciamento de mudanças de software:

1- Identificar os processos críticos

hoje o Nérus possui mais do que 80 macro processos e 850 funções claramente identificadas. Você e sua equipe podem com um esforço de 1 ou 2 dias por ano identificar quais são os processos que podem mais impactar a sua operação. Eles são os processos que podem gerar risco de parada, insatisfação dos consumidores finais, impactos fiscal e financeiro, etc. Esse mapa é chave para o sucesso de tudo que vamos sugerir;

2- Casos de teste

com alguma facilidade, para cada processo crítico identificado, devem listar os testes que garantem que o mesmo esteja minimamente adequado ao seu dia-a-dia. Isso não é  nada genial. Um pouco trabalhoso, mas nada genial. Trata-se  de listar para cada processo quais os casos que devemos “olhar”. Numa entrada de nota, quais os principais tipos. Num faturamento, quais as principais variações. Diria que também, o esforço seria de 1 ou 2 dias a cada ano para fazer e revisar estes processos;

3- Manter servidores e base de teste

é imprescindível manter servidores (e demais equipamentos) para que se possa realizar os testes a cada nova versão que entre em funcionamento. Esses servidores e essa base não podem ser a mesma base de produção. Por mais simples que pareça ainda encontramos muitos Clientes que aplicam versões novas em ambiente de produção sem nenhum teste ou mesmo que usam o ambiente de produção para fazer testes com o sistema em pleno funcionamento.

4- Realizar testes em todas as novas versões

a Nérus, como qualquer outro bom fornecedor de software, mantém versões regulares do sistema a cada 2 ou 3 meses. Nesse caso, sempre sugerimos que se faça um teste de pelo menos 1 semana em cada grande versão. Obviamente, também liberamos quando necessários “patchs” (pequenos binários de correção) que não precisam passar por tantos testes. Ainda assim, uma pequena validação é necessária. E Nérus faz seus testes é claros mas é importantíssimo que você também faça! Em especial, evitará desgastes com consumidores finais, fisco, fornecedores, etc. Caso identifiquemos que existe qualquer parcela de responsabilidade da Nérus, certamente nos mobilizaremos para ajudá-lo a resolver as questões, sem no entanto estarmos desgastando terceiros nesse cenário.

5- Automatizar os testes

a Nérus oferece recursos de scripts automatizados que podem ser executados de versão para versão, reduzindo drasticamente o tempo e o esforço necessários aos testes. Quando seu sistema tiver isso, é um poderoso recurso a mais. Use e abuse dos scripts. Eles garantem regularidade e muito pouco esforço para execução quando estão prontos;

6- Recolha evidências de teste

simples “cópias” (print) de telas, uma base testada ou mesmo um relatório assinado por parte do responsável interno, pode reduzir muito o impacto de uma troca de versão.

O sistema é a alma de vários negócios. Não exponha sua operação sem ter certeza que os testes foram realmente realizados. Arquive isso para consultas futuras.

Leia mais: As 10 principais causas na falha de projetos de software

Quais os benefícios desses cuidados no gerenciamento de mudanças de software

Os benefícios de ter um bom plano de gestão de mudanças são simples:

  • a. redução de tempo com paradas;
  • b. redução do desgaste com consumidores e fornecedores;
  • c. economia de tempo e dinheiro.

Faça testes!

Não tem como atualizar o software sem fazer testes.

Essas boas-práticas também podem ser encontradas nos conteúdos do ITIL (information tecnology Infra-structure Library), modelo internacional para padronização de gestão de TI.

Além disso, estamos incentivando a todos nossos Clientes que façam a migração de seus ambientes para nuvem, em especial a AWS (Amazon Web Services). Todos nossos sistemas estão preparados e testados para este ambiente. Ele reduz sensivelmente os custos para ambientes de testes, garante mais estabilidade e permite que a Nérus participe com ainda mais facilidade na solução das demandas.

Se ainda preferir, estamos também totalmente a disposição para prestar estes serviços e ajudá-los na organização desse ambiente ou mesmo para fazer o upgrade de versão. Agora, não arrisque! Não compensa. Teste. Estaremos sempre a disposição para analisar as ocorrências e também para evitar que venham a acontecer ou mesmo se repetir.

Ficou claro para você o que é gerenciamento de mudanças de software? E você, está preparado para as mudanças que a transformação digital está trazendo para o varejo?

Então, aprenda mais sobre ela baixando nosso e-book gratuito: 5 passos para promover a transformação digital na sua rede

Compartilhe