Gestão da configuração
Mudanças durante o desenvolvimento são inevitáveis. O entendimento dos usuários sobre suas necessidades muda, o ambiente no qual o sistema via operar muda, a legislação muda, os requisitos mudam. Com tantas mudanças assim, é necessária alguma forma de gerenciamento para que o desenvolvimento não fique caótico.
Pensando em tentar suprir todos esses problemas, surgiu a Gerência de Configuração de software que nada mais é que um conjunto de atividades que permite a absorção controlada das mudanças inerentes ao desenvolvimento de software, mantendo a estabilidade na evolução do projeto. Por esse e outros motivos, percebe-se que a Gestão da Configuração é de extrema importância fazendo assim parte de importantes modelos de maturidade dos processos de desenvolvimento tais como CMMi e MPS-BR.
Gestão da Configuração é extremamente importante tanto para verificação, validação e testes de software quanto para a manutenção do mesmo, entendo que ambos fazem partes desta mesma gestão, ou melhor dizendo, esses três digamos componentes, são de absoluta importância no desenvolvimento de um software. A Gestão da Configuração ainda consiste de atividades que asseguram que arquitetura e codificação são definidas e não podem ser mudados sem uma revisão dos efeitos da mudança e sua documentação. Isso porque conforme definição do Gestão da Configuração é controlar o código-fonte e a sua documentação associada fazendo com que o código-fonte final e suas descrições estão consistentes e representam os itens que estavam revisados e testados.
O teste de software (verificação, validação e testes), é usado para verificar que requisitos funcionais e não-funcionais foram devidamente implementados. Isso porque muitas empresas ainda usam o modelo Waterfall, ou modelo cascata, que foca justamente a atividade de teste de software somente no final do modelo, ou seja, caso algum defeito seja encontrado (erros em requisitos, por exemplo) todo ciclo deverá ser inicializado