Técnicas de estimativa de testes de software
O que é estimativa de teste de software?
Estimativa de Teste é uma atividade de gerenciamento que aproxima quão mais uma tarefa levaria para ser concluída. Estimar o esforço para o teste é uma das principal e importante tarefas no gerenciamento de testes.
Por que testar estimativa?
Duas perguntas que você pode esperar de seus clientes ao discutir possíveis compromissos de teste são
Para projetos pequenos, essas questões são relativamente fáceis de responder. Mas para o grande projeto como Ensaios Site do Banco Guru99, você deve pensar muito para responder a essas perguntas.
O que estimar?
- Recursos: São necessários recursos para executar quaisquer tarefas do projeto. Podem ser pessoas, equipamentos, instalações, financiamento ou qualquer outra coisa capaz de ser definida como necessária para a conclusão de uma atividade de projeto.
- Tempos: O tempo é o recurso mais valioso em um projeto. Todo projeto tem um prazo para entrega.
- Habilidades humanas : Habilidades humanas significam Conhecimento e os votos de uma experiência dos membros da equipe. Eles afetam sua estimativa. Por exemplo, uma equipe cujos membros tenham poucas habilidades em testes levará mais tempo para terminar o projeto do que aquela que tenha altas habilidades em testes.
- Custo: Custo é o projeto orçamento. De um modo geral, significa quanto dinheiro é preciso para terminar o projeto.
Como estimar?
Lista de técnicas de estimativa de teste de software
- Work Breakdown Structure
- Técnica de estimativa de teste de software de 3 pontos
- Técnica Delphi de banda larga
- Análise de Ponto de Função/Ponto de Teste
- Uso – Método de Ponto de Caso
- Distribuição percentual
- Método ad hoc
A seguir está o processo de 4 etapas para chegar a uma estimativa
Você aprenderá como combinar essas técnicas para encontrar a estimativa para o estudo de caso do Guru99 Bank.
Etapa 1) Divida toda a tarefa do projeto em subtarefas
Tarefa é um trabalho que foi dado a alguém. Para fazer isso, você pode usar o Work Breakdown Structure técnica.
Nesta técnica, um projeto complexo é dividido em módulos. Os módulos são divididos em submódulos. Cada submódulo é dividido em funcionalidade. Significa dividir toda a tarefa do projeto em menor tarefas.
Use a estrutura Work Break Down para dividir o projeto do Banco Guru99 em 5 tarefas menores-
Depois disso, você pode dividir cada tarefa em subtarefa. O objetivo desta atividade é criar tarefa como detalhado as possível.
Tarefa | Subtarefa |
---|---|
Analise a especificação de requisitos de software | Investigue as especificações de requisitos flexíveis |
Entrevista com o desenvolvedor e outras partes interessadas para saber mais sobre o site | |
Crie a especificação de teste | Projetar cenários de teste |
Crie casos de teste | |
Revanalisar e revisar casos de teste | |
Execute os casos de teste | Construa o ambiente de teste |
Execute os casos de teste | |
Revvisualizar resultados de execução de teste | |
Relate os defeitos | |
Criar o Defeito relatórios | |
Relate os defeitos |
Etapa 2) Atribuir cada tarefa ao membro da equipe
Nesta etapa, cada tarefa é atribuída ao apropriado membro da equipe do projeto. Você pode atribuir tarefas da seguinte maneira
Tarefa | Membros |
---|---|
Analise a especificação de requisitos de software | Todos os membros |
Crie a especificação de teste | Testador/Analista de Testes |
Construa o ambiente de teste | Administrador de teste |
Execute os casos de teste | Testador, Administrador de Teste |
Relatar defeitos | testador |
Etapa 3) Estimativa de esforço para tarefas
Existem 2 técnicas que você pode aplicar para estimar o esforço das tarefas
- Método de Ponto Funcional
- Estimativa de três pontos
Método 1) Método de Ponto de Função
Neste método, o Test Manager estima tamanho, duração e custo para as tarefas
Etapa A) Estimar o tamanho da tarefa
In 1º Passo, você já dividiu toda a tarefa do projeto em pequenas tarefas usando o método WBS. Agora você estima o tamanho dessas tarefas. Vamos praticar com uma tarefa específica “Crie a especificação de teste"
O tamanho desta tarefa depende do tamanho funcional do sistema em teste. O tamanho funcional reflete o quantidade de funcionalidade que seja relevante para o usuário. O mais número de funcionalidade, mais integrações sistema é.
Antes de começar a estimar o esforço real das tarefas, os pontos funcionais são divididos em três grupos como Complexo, Médio Simples como segue:
Com base no complexo de funções do software, o Test Manager deve fornecer informações suficientes peso para cada ponto funcional. Por exemplo
Grupo | Peso |
---|---|
Complexo | 5 |
Médio | 3 |
simples | 1 |
Vamos dar um exemplo de exercício simples para ficar mais claro:
Dê uma olhada na especificação do software do site Guru99 Bank aqui, o engenheiro de software já descreveu os módulos de software em detalhes, você pode determinar o complexidade dos recursos do site, dando o peso de cada módulo?
Quanto mais complexo o ponto de função, maior é o esforço para testá-lo. O site está dividido em Função 12 pontos, você pode determinar o complexidade de cada ponto de função da seguinte forma-
Não. | Nome do Módulo | Funções aplicáveis | Descrição | Peso |
---|---|---|---|---|
1. | Consulta de saldo | Manager
Experiência e dinâmica de loja |
Cliente: Um cliente pode ter várias contas bancárias. Ele pode visualizar apenas o saldo de suas contas
Manager: Um gerente pode visualizar o saldo de todos os clientes que estão sob sua supervisão |
3 |
2. | Transferência de fundos | Manager
Experiência e dinâmica de loja |
Cliente: Um cliente pode transferir fundos de sua “própria” conta para qualquer conta de destino.
Manager: Um gerente pode transferir fundos de qualquer conta bancária de origem para uma conta de destino |
5 |
3. | Mini declaração | Manager
Experiência e dinâmica de loja |
Um Mini extrato mostrará as últimas 5 transações de uma conta
Cliente: Um cliente pode ver mini-extratos apenas de suas “próprias” contas Manager: Um gerente pode ver o mini-extrato de qualquer conta |
3 |
4. | Declaração personalizada | Manager
Experiência e dinâmica de loja |
Um extrato personalizado permite filtrar e exibir transações em uma conta com base na data, valor da transação
Cliente: Um cliente pode ver extrato personalizado apenas de suas “próprias” contas Manager: Um gerente pode ver extrato personalizado de qualquer conta |
5 |
5. | Alterar palavra-passe | Manager
Experiência e dinâmica de loja |
Cliente: Um cliente pode alterar a senha apenas de sua conta.
Manager: Um gerente pode alterar a senha apenas de sua conta. Ele não pode alterar as senhas de seus clientes |
1 |
6. | Novo Cliente | Manager | Manager: Um gerente pode adicionar um novo cliente.
Manager: Um gerente pode editar detalhes como endereço, e-mail e telefone de um cliente. |
3 |
7. | Nova Conta | Manager | Atualmente o sistema oferece 2 tipos de contas
Um cliente pode ter várias contas poupança (uma em seu nome, outra em nome conjunto, etc.). Ele pode ter várias contas correntes para diferentes empresas que possui. Ou ele pode ter várias contas correntes e de poupança. Manager: Um gerente pode adicionar uma nova conta para um cliente existente. |
5 |
8. | Editar conta | Manager | Manager: Um gerente pode adicionar detalhes de edição de uma conta existente | 1 |
9. | Deletar conta | Manager | Manager: Um gerente pode adicionar e excluir uma conta de um cliente. | 1 |
10. | Excluir cliente | Manager | Um cliente só pode ser eliminado se não tiver contas correntes ou poupanças ativas
Manager: Um gerente pode excluir um cliente. |
1 |
11. | Depositar | Manager | Manager: Um gerente pode depositar dinheiro em qualquer conta. Geralmente feito quando o dinheiro é depositado em uma agência bancária. | 3 |
12. | Saque | Manager | Manager: Um gerente pode sacar dinheiro de qualquer conta. Geralmente feito quando o dinheiro é sacado em uma agência bancária. | 3 |
ETAPA B) Estimar a duração da tarefa
Depois de classificar o complexidade dos pontos de função, você deve estimar o duração para testá-los. Duração significa quanto tempo precisa para terminar a tarefa.
- Esforço total: O esforço para testar completamente todas as funções do site
- Total de pontos de função: Total de módulos do site
- Estimativa definida por Pontos de Função: O esforço médio para completar um ponto de função. Este valor depende do produtividade do membro que se encarregará desta tarefa.
Suponha que sua equipe de projeto tenha uma estimativa definida por Pontos de Função de 5 horas/pontos. Você pode estimar o esforço total para testar todos os recursos do site Guru99 Bank da seguinte forma:
Peso | Nº de pontos de função | Total | |
---|---|---|---|
Complexo | 5 | 3 | 15 |
Médio | 3 | 5 | 15 |
simples | 1 | 4 | 4 |
Função Total de Pontos | 34 | ||
Estimativa definida por ponto | 5 | ||
Esforço Total Estimado (Pessoa Hours) | 170 |
Portanto, o esforço total para completar a tarefa “Criar a especificação de teste” do Banco Guru99 é de cerca de 170 horas-homem
Depois de compreender o esforço necessário, você poderá atribuir recursos para determinar quanto tempo a tarefa levará (duração) e, em seguida, poderá estimar os custos trabalhistas e não trabalhistas.
O exemplo acima também mostra a importância do membro em sua equipe. Se você tem talentoso e experiente membros, você pode terminar a tarefa atribuída no pequeno tempo, e seu projeto terminará no prazo ou antes.
ETAPA C) Estime o custo das tarefas
Esta etapa ajuda você a responder à última pergunta do cliente “Quanto custa isso?"
Suponha que, em média, o salário da sua equipe seja de US$ 5 por hora. O tempo necessário para a tarefa “Criar especificações de teste” é de 170 horas. Conseqüentemente, o custo da tarefa é 5*170=$850. Agora você pode calcular o orçamento para outras atividades na EAP e chegar ao orçamento geral do projeto.
Como gerente de projeto, você deve decidir como obter o a maior parte retorna para o investimento da sua empresa. O mais preciso sua estimativa do custo do projeto é, o better você será capaz de gerenciar o orçamento do seu projeto.
Método 2) Estimativa de Três Pontos
A estimativa de três pontos é uma das técnicas que podem ser usadas para estimar uma tarefa. A simplicidade da estimativa de três pontos a torna uma ferramenta muito útil para um gerente de projeto que deseja estimar.
Na estimativa de três pontos, três valores são produzidos inicialmente para cada tarefa com base em experiência anterior or melhores palpites do seguinte modo
Ao estimar uma tarefa, o Test Manager precisa fornecer três valores, conforme especificado acima. Os três valores identificados estimam o que acontece em um estado ótimo, o que é provavelmente, ou o que achamos que seria o pior caso cenário.
Vamos ver como usar os três valores acima no exemplo a seguir
Para a tarefa “Crie a especificação de teste”, você pode estimar o esforço do teste? Lembre-se que você tem que cobrir tudo os módulos do site do Banco Guru99 conforme feito em Método de Ponto de Função
Você pode estimar da seguinte forma
- A melhor caso para completar esta tarefa é 120 horas-homem (cerca de 15 dias). Nesse caso, você tem uma equipe talentosa, eles conseguem terminar a tarefa no menor tempo possível.
- A provavelmente caso para completar esta tarefa é 170 horas-homem (cerca de 21 dias). Este é um caso normal, você tem recursos e capacidade suficientes para concluir a tarefa
- A pior caso para completar esta tarefa é 200 horas-homem (cerca de 25 dias). Você precisa realizar muito mais trabalho porque os membros da sua equipe não têm experiência.
Agora, atribua o valor a cada parâmetro conforme abaixo
O esforço para completar a tarefa pode ser calculado usando distribuição triangular dupla fórmula da seguinte forma-
Na fórmula acima, o parâmetro E é conhecido como Média ponderada. É a estimativa da tarefa “Criar a especificação de teste”.
Mas seu chefe pode perguntar a você
Na estimativa acima, você apenas determina um possível e não um certo valor, devemos saber sobre o probabilidade que a estimativa está correta. Você pode usar a outra fórmula:
Na fórmula acima, o desvio padrão médio SD, este valor pode fornecer informações sobre o probabilidade que a estimativa está correta.
Agora você pode concluir a estimativa para a tarefa “Criar a especificação de teste”
Para completar a tarefa “Criar a especificação de teste” do site do Banco Guru99, você precisa 166.6 ± 13.33 Homem-hora (153.33 a 179.99 homem-hora)
Etapa 4) Valide a estimativa
Depois de criar uma estimativa agregada para todas as tarefas mencionadas na EAP, você precisa encaminhá-la para o Conselho de Administração, quem vai rever e aprovar .
O membro do conselho de administração pode ser composto pelo CEO, gerente de projeto e outras partes interessadas.
O conselho de administração analisará e discutirá seu plano de estimativa com você. Você pode explicar-lhes sua estimativa logicamente e razoavelmente para que eles possam aprovar seu plano de estimativa.
Práticas recomendadas de estimativa de teste
Este tópico apresenta dicas gerais sobre como estimar a precisão do teste.
Adicione algum tempo de buffer:
Muitas coisas imprevisíveis podem acontecer ao seu projeto, como um membro talentoso da equipe deixar o emprego repentinamente, o teste levar mais tempo do que o estimado para ser concluído... etc. Ter um buffer na estimativa permite lidar com quaisquer atrasos que possam ocorrer.
Planejamento de recursos da conta na estimativa
O que você deve fazer se alguns membros da sua equipe tirarem licenças prolongadas? Isso pode atrasar o projeto. O planejamento de recursos na estimativa desempenha um papel fundamental. A disponibilidade de recursos ajudará a garantir que as estimativas sejam realistas. Aqui você deve considerar as licenças do membro da sua equipe, geralmente licenças longas.
Use a experiência passada como referência
As experiências de projetos anteriores desempenham um papel vital na preparação das estimativas de tempo. Como algum projeto pode ter alguma semelhança, você pode reutilizar a estimativa anterior. Por exemplo, se você costuma fazer um projeto como testar um site, você pode aprender com essa experiência, tentar evitar todas as dificuldades ou problemas que foram enfrentados em projetos anteriores.
Atenha-se à sua estimativa
A estimativa é apenas uma estimativa porque pode ir Wrongs.Nos estágios iniciais do projeto, você deve frequentemente verifique novamente as estimativas de teste e faça modificações se necessário. Não devemos estender a estimativa depois de corrigi-la, a menos que haja grandes mudanças nos requisitos ou você tenha que negociar com o cliente sobre a nova estimativa
Modelo de estimativa de teste de software
Baixe o Excel de estimativa de teste de software (.xlsx)
Outras técnicas
Técnica Delphi de banda larga, método de uso - caso, distribuição percentual, método ad-hoc são outras técnicas de estimativa em engenharia de software.
Vídeo sobre técnicas de estimativa de testes de software
Clique aqui se o vídeo não estiver acessível
Transcrição de vídeo
- Vamos fazer um exercício -para o Solicitação de reserva de voo preparar uma Estrutura Analítica do Trabalho do
- várias tarefas de teste, como - Verificar funcionalidade de login, verificar funcionalidade de novo pedido, verificar funcionalidade de fax e outras funcionalidades semelhantes e estimar o esforço necessário para testar essas funcionalidades
- Por exemplo, a funcionalidade de login pode ser testada em 2 horas. Da mesma forma, prepare uma lista de todas as tarefas e esforços correspondentes. Pause o tutorial de treinamento e conclua o exercício. Espero que você tenha adivinhado o esforço necessário
- Esta é a estratégia de baixo para cima para estimativa de teste. A técnica é chamada de baixo para cima, pois com base nas tarefas que estão no nível mais baixo da hierarquia de divisão do trabalho você estima a duração, as dependências e os recursos.
- Na estratégia bottom-up, as estimativas não são feitas por uma única pessoa, mas por todas as partes interessadas, colaboradores individuais, especialistas e funcionários experientes em conjunto. A ideia é aproveitar a sabedoria colaborativa dos membros da equipe para chegar a estimativas de teste precisas
- Agora que você tem uma experiência considerável no sistema de reservas de voos. Use esta experiência para estimar o esforço necessário para Teste funcional do site. – http://newtours.demoaut.com/
- A funcionalidade deste site é idêntica à do Aplicativo de Reserva de Voo, apenas que é baseado na web. Pause o tutorial e faça o exercício agora
- Espero que com base na sua experiência você tenha feito uma boa estimativa do esforço necessário para testar o site
- Esta é a abordagem de cima para baixo para estimativa, que se baseia na experiência.
- Outra técnica é classificar os projetos com base em seu tamanho e complexidade e, em seguida, ver quanto tempo um projeto de determinado tamanho e complexidade demorou no passado.
- Outra abordagem é determinar o esforço médio por Caso de teste no passado para projetos semelhantes e depois usando casos de teste estimados do projeto atual e chegando ao esforço total
- Modelos de estimativa mais sofisticados envolvem modelos matemáticos complexos. Na prática, a maioria dos projetos utiliza uma abordagem descendente para estimativa.
- As estimativas de teste podem ser afetadas por muitos fatores, como pressões de tempo, fatores humanos, distribuição geográfica da equipe de teste e assim por diante.