- Pneumáticos- Resistência- Elétricos- Químicos- Impacto- Emissão de poluentes
Indústrias realizam muitos testes
- Pneumáticos- Resistência- Elétricos- Químicos- Impacto- Emissão de poluentes
Indústrias realizam muitos testes
- Pneumáticos- Resistência- Elétricos- Químicos- Impacto- Emissão de poluentes
Indústrias realizam muitos testes
“Encontrar e corrigir um problema de software após a entrega é muitas vezes, 100 vezes mais caro do que encontrar e corrigir durante a fase de design e requisitos.”
Identificar e corrigir problemas graves depois da entrega pode ser 100 vezes mais custoso que no desenvolvimento.
Esforço para identificar e corrigir problemas
“Cerca de 40-50% do esforço num projeto de software é gasto em retrabalho, o qual é possível evitar.”
- Grande quantidade do trabalho realizado para execução de uma tarefa é desperdiçado, este desperdício pode variar de 40 a 50%
- Quanto maior a maturidade de um time, quanto maior o envolvimento dos personagens do processo no desenvolvimento e quanto maior a interação desses elementos menor é a quantidade de esforço desperdiçado
Quantidade de esforço desperdiçado
- A maior parte do esforço que poderia ser evitado vem de um pequeno número de defeitos de software, que pode ser definido como o trabalho feito para mitigar os efeitos de erros ou para melhorar desempenho do sistema.
- Alguns esforços são simplesmente inevitáveis, por exemplo, o trabalho decorrente de adaptação, manutenções preventivas ou alterações solicitadas pelo usuário.
- Os defeitos que causam grandes quantidades de retrabalho são provavelmente aqueles que "quebram" a arquitetura ou que são considerados "inapropriados" tarde no processo de desenvolvimento.
Defeitos causando desperdício
- Revisão de código pode pegar mais de metade dos erros de um produto, independente do nível de maturidade da organização ou da fase que foi aplicado.
- O conhecimento sobre o desenvolvimento é difundido na empresa.
- Força o desenvolvimento de um código limpo e que seja de fácil interpretação.
Code review
- O código deve ser particionado de maneira com que as lógicas implementadas possam ser testadas sem dependências de forma isolada.
- Menor custo de execução.
- Evitam regressão.
- Motiva refatoração.
- Garante que alterações não vão ter influências sobre as “unidades” do sistema
Base - Testes unitários
- Verifica comportamentos do software quando executado junto a outras aplicações ou componentes.
- Interage entre as camadas da aplicação.
- Demoram mais para serem executados.
- Exigem um custo computacional maior para sua execução.
Testes integrados
- Testa a funcionalidade final, ou tentam reproduzir um comportamento específico.
- Navegam ou utilizam a aplicação como um cliente.
- Demoram MAIS para serem executados.
- Exigem um custo computacional MAIOR para sua execução.
Testes de aceitação e interface
Testes manuais- Exploração.
- Identificar comportamentos para serem reproduzidos em testes automatizados.
- Precisa falar que são MAIS CUSTOSOS que os outros?
Top Related