Durante o processo de desenvolvimento de software, as mudanças ocorrem de forma inevitável. Independentemente de onde estamos no ciclo de vida de um software, este irá se modificar e o desejo de modificá-lo irá persistir ao longo de seu ciclo de vida. Vários motivos podem levar um software a ser modificado, tais como: a identificação de novos requisitos, mudança do entendimento dos usuários sobre a aplicação, mudança no ambiente no qual o software irá operar, modificação de regras de negócio, restrições de orçamento ou cronograma, avanços tecnológicos, mudanças de legislação, ou o mais comum deles: a correção de defeitos.
Tais modificações podem representar aspectos positivos e negativos. Através das mudanças o produto de software pode ser melhorado e corrigido constantemente, proporcionando maior qualidade ao mesmo. Porém, se este processo de mudança for aplicado sem critério e organização, muitos problemas podem acontecer, podendo levar à perda de controle e consequentemente comprometer a integridade e qualidade do software.
Devido a este motivo, se torna necessário aplicar dentro das empresas práticas de desenvolvimento que possam controlar de forma sistemática e organizada as modificações ocorridas em um software tornando possível a permanência de sua qualidade e integridade ao longo do tempo.
Neste contexto, surge a Gerência de Configuração de Software (GCS), que consiste em um conjunto de atividades que têm como objetivo gerenciar as mudanças através de um controle de versão e de mudanças.
O gerenciamento de versões se refere ao processo de acompanhamento de diferentes versões de componentes de software ou itens de configuração e os sistemas em que esses componentes são usados. Ele também envolve a garantia de que as mudanças feitas por diferentes desenvolvedores para essas versões não interferem umas nas outras.
A GCS é uma disciplina da engenharia de software que ocorre durante o todo o ciclo de vida de desenvolvimento e não apenas na etapa de manutenção (que ocorre quando o produto já foi entregue ao cliente). Pelo fato das solicitações de mudanças ocorrerem em qualquer período, as atividades de GCS devem ocorrer desde o início do projeto e somente devem terminar quando o software é retirado de operação.
A GCS é um conjunto de atividades de apoio ao processo de desenvolvimento que permite gerenciar e controlar a evolução de um software através do controle de versões e solicitação de mudanças, visando manter a estabilidade na evolução do projeto, tornando-o sistemático e rastreável. A GCS permite que todas as pessoas envolvidas no desenvolvimento tenham acesso ao histórico das modificações ocorridas no software bem como o entendimento do sistema na situação atual e situações anteriores."
[...] continue lendo...Artigos relacionados
-
Artigo
-
Vídeo
-
Vídeo
-
DevCast
-
DevCast