Com base nisso, o objetivo desse artigo é mostrar que através da Gestão de Mudanças os riscos podem ser reduzidos e assim, a alteração nos requisitos, no código fonte e o planejamento dos testes tornam-se direcionados e mais objetivos.
A pressão para desenvolver novos softwares ou melhorar os já existentes vem aumentando consideravelmente nos últimos anos. Neste cenário, o impacto negativo que uma grande falha pode gerar tem recebido ainda mais atenção/importância por parte das organizações.
Em função disso, identificar as mudanças que foram implementadas, seja em função de uma nova funcionalidade ou mesmo uma linha de código modificada para atender às solicitações dos usuários ou corrigir um erro, tem grande relevância.
Para viabilizar o controle dessas alterações, torna-se essencial a Gerência de Configuração de Software, um conjunto de atividades de apoio ao ciclo de vida do desenvolvimento que permite a absorção controlada das mudanças inerentes à construção do software, mantendo a estabilidade durante a evolução do projeto.
A Gerência de Configuração é dividida em três atividades, analisadas a seguir:
· Controle de Versão:tem como objetivo apoiar as atividades de controle de mudança e integração contínua, fornecendo uma gama de serviços como, por exemplo:
o Identificação, armazenamento e gerenciamento dos itens de configuração e de suas versões durante todo o ciclo de vida do software;
o Histórico de todas as alterações efetuadas nos itens de configuração;
o Criação de rótulos e ramificações no projeto;
o Possibilidade de recuperar uma configuração específica mais antiga do software.
· Integração Contínua: tem como objetivo garantir que as mudanças ao longo do projeto sejam desenvolvidas, testadas e relatadas tão logo quanto possível depois de serem introduzidas. Além disso, a integração contínua também permite:
o Integrar com frequência as alterações no código, permitindo acompanhar a evolução da aplicação;
o Propicia a utilização de um processo automatizado;
o Possibilita que cada integração seja verificada visando detectar erros de integração o quanto antes;
o Permite a notificação de toda a equipe quando um problema na integração é identificado.
· Gestão de Mudanças: fornece um serviço complementar ao oferecido pelo sistema de controle de versão. Tem como foco controlar os procedimentos pelos quais as mudanças de um ou mais itens de configuração são propostas, avaliadas, aceitas e aplicadas.
A partir disso, ao longo deste artigo serão apresentadas algumas características da Gestão de Mudanças, uma aresta da Gestão de Configuração que possibilita um maior controle, e consequentemente, mais qualidade à aplicação, ao longo de todo o processo de desenvolvimento do software sob a perspectiva do Teste de Software.
A Gestão de Mudanças
A Gestão de Mudanças envolve processos, ferramentas e técnicas para gerenciar os vários aspectos envolvidos nas alterações do software, tendo como objetivo facilitar que os resultados previstos sejam alcançados da maneira mais eficaz possível.
Segundo Pressman, em seu livroSoftware Engineering: A Practitioner's ...