|
Durante o desenvolvimento iterativo de software a equipe criará inúmeras Construções. Uma construção é iniciada quando o trabalho de um ou mais colaboradores for terminado e quando todos conflitos encontrados forem resolvidos. A construção está sujeita então a uma bateria de testes para determinar se está com qualidade suficiente para ser colocada em produção.
A medida que uma construção progride do desenvolvimento para a produção é benéfico conhecer duas de suas características:
Conteúdo da construção – identificando os elementos e suas versões
- O que está nesta construção (itens de trabalho completos)
- O que está parcialmente nesta construção (itens de trabalho que estão parcialmente completos)
- O que não está nesta construção (itens de trabalho que não estão nesta construção)
Nível de verificação – identificando a quantidade de teste que foi realizada. Por exemplo,
- Unidade Testada
- Integração Testada
- Sistema Testado
O ciclo de vida de promoção coordena e sincroniza os esforços da equipe de desenvolvimento. Este ciclo de vida consiste dos seguintes passos:
- As mudanças são introduzidas no sistema na forma de itens de trabalho completos
- Uma construção é gerada identificando claramente as mudanças
- Os testes são executados
- Quando os testes forem bem sucedidos, as mudanças serão entregues ao próximo nível de verificação
Finalmente todos os testes necessários estão completos e uma nova versão do sistema está pronta.
Pode também ser benéfico isolar o trabalho que está sendo executado em estágios diferentes usando diferentes Espaços de Trabalho. Isto assegura que o esforço de testar uma construção seja aplicado à versão correta e também permite que os desenvolvedores continuem trabalhando em uma construção futura enquanto a construção anterior estiver sendo testada.
Um ciclo de vida promocional, tal como este, oferece três principais benefícios
- Reduz o esforço porque não há nenhuma razão para executar testes em estágios posteriores até que a construção passe em um determinado estágio. Por exemplo você não mobiliza recursos para executar Testes de Sistema em uma construção até que ela passe pelos Testes de Integração.
- Ajuda a assegurar que uma construção, que tenha sido movida para a produção, tenha sido primeiramente submetida ao nível apropriado de teste.
- Simplifica a depuração de erros visto que os desenvolvedores podem basear seu trabalho em uma construção aprovada (que passou pelos Testes de Integração, por exemplo) de forma isolada das mudanças executadas por outros desenvolvedores
|