O que é a estimativa de teste de software?
Estimativa de teste é uma atividade de gerenciamento que aproxima quanto tempo uma tarefa levaria para ser concluída. Estimar o esforço para o teste é uma das tarefas principais e importantes no Gerenciamento de Teste.
Por que testar a estimativa?
Duas perguntas que você pode esperar de seus clientes ao discutir possíveis compromissos de teste são
Para pequenos projetos, essas perguntas são relativamente fáceis de responder. Mas, para grandes projetos como o site do banco Testing Guru99, você deve pensar muito para responder a essas perguntas.
Neste tutorial, você aprenderá-
- O que é a estimativa de teste de software?
- Por que testar a estimativa?
- O que estimar?
- Como fazer uma estimativa?
- Etapa 1) Divida toda a tarefa do projeto em subtarefas
- Etapa 2) Atribuir cada tarefa a um membro da equipe
- Etapa 3) Estimativa de esforço para tarefas
- Método 1) Método de Ponto de Função
- Método 2) Estimativa de três pontos
- Etapa 4) Validar a estimativa
- Práticas recomendadas de estimativa de teste
- Outras Técnicas
O que estimar?
- Recursos: os recursos são necessários para realizar todas as tarefas do projeto. Eles podem ser pessoas, equipamentos, instalações, financiamento ou qualquer outra coisa que possa ser definida como necessária para a conclusão de uma atividade de projeto.
- Horários: o tempo é o recurso mais valioso em um projeto. Todo projeto tem prazo para entrega.
- Habilidades Humanas: As habilidades humanas significam o conhecimento e a experiência dos membros da Equipe. Eles afetam a sua estimativa. Por exemplo, uma equipe cujos membros têm poucas habilidades de teste levará mais tempo para terminar o projeto do que aquela que tem altas habilidades de teste.
- Custo: o custo é o orçamento do projeto . De um modo geral, significa quanto dinheiro é necessário para terminar o projeto.
Como fazer uma estimativa?
Lista de técnicas de estimativa de teste de software
- TrabalhoDemolirEstrutura
- 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 Banco Guru99.
Etapa 1) Divida toda a tarefa do projeto em subtarefas
Tarefa é um trabalho que foi entregue a alguém. Para fazer isso, você pode usar a técnica Work Breakdown Structure .
Nesta técnica, um projeto complexo é dividido em módulos. Os módulos são divididos em submódulos. Cada submódulo é dividido em funcionalidades. Significa dividir toda a tarefa do projeto nas menores tarefas.
Use a estrutura de divisão do trabalho para dividir o projeto do Banco Guru99 em 5 tarefas menores -
Depois disso, você pode dividir cada tarefa na subtarefa. O objetivo desta atividade é criar tarefas tão detalhadas quanto possível .
Tarefa | Subtarefa |
---|---|
Analisar a especificação de requisitos de software | Investigue as especificações de requisitos de software |
Entrevista com o desenvolvedor e outras partes interessadas para saber mais sobre o site | |
Crie a especificação de teste | Cenários de teste de design |
Crie casos de teste | |
Rever e revisar casos de teste | |
Execute os casos de teste | Construir o ambiente de teste |
Execute os casos de teste | |
Analise os resultados da execução do teste | |
Relate os defeitos | |
Crie os relatórios de defeitos | |
Relate os defeitos |
Etapa 2) Atribuir cada tarefa a um membro da equipe
Nesta etapa, cada tarefa é atribuída ao membro apropriado na equipe do projeto. Você pode atribuir tarefas da seguinte forma
Tarefa | Membros |
---|---|
Analisar a especificação de requisitos de software | Todos os membros |
Crie a especificação de teste | Testador / Analista de Teste |
Construir o ambiente de teste | Administrador de Teste |
Execute os casos de teste | Testador, Administrador de Teste |
Reportar defeitos | Testador |
Etapa 3) Estimativa de esforço para tarefas
Existem 2 técnicas que você pode aplicar para estimar o esforço para as tarefas
- Método do Ponto Funcional
- Estimativa de Três Pontos
Método 1) Método de Ponto de Função
Neste método, o Test Manager estima o tamanho, duração e custo para as tarefas
Etapa A) Estimar o tamanho da tarefa
Na Etapa 1, 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 particular “ Criar a especificação de teste ”
O tamanho desta tarefa depende do tamanho funcional do sistema em teste. O tamanho funcional reflete a quantidade de funcionalidade que é relevante para o usuário. Quanto mais o número de funcionalidade, o mais complexo sistema é.
Antes de iniciar o esforço real das tarefas de estimativa, os pontos funcionais são divididos em três grupos, como Complexo , Médio Simples, como segue:
Com base no complexo de funções de software, o Test Manger deve dar peso suficiente para cada ponto funcional. Por exemplo
Grupo | Peso |
---|---|
Complexo | 5 |
Médio | 3 |
Simples | 1 |
Vamos dar um exemplo simples de exercício para ficar mais claro:
Dê uma olhada nas especificações de software do banco Guru99 aqui, o engenheiro de software já descreveu os módulos de software em detalhes, você pode determinar a complexidade dos recursos do site dando a ponderação de cada módulo?
Quanto mais complexo o ponto de função, maior é o esforço para testá-lo. O site é dividido em 12 pontos de função , você pode determinar a complexidade de cada pontos de função da seguinte forma-
Não. | nome do módulo | Funções Aplicáveis | Descrição | Peso |
---|---|---|---|---|
1 | Consulta de saldo | Cliente Gerente | Cliente: um cliente pode ter várias contas bancárias. Ele pode ver o saldo de suas contas apenas Gerente: um gerente pode ver o saldo de todos os clientes que estão sob sua supervisão | 3 |
2 | Transferência de fundos | Cliente Gerente | Cliente: Um cliente pode transferir fundos de sua “própria” conta para qualquer conta de destino. Gerente: um gerente pode transferir fundos de qualquer conta bancária de origem para a conta de destino | 5 |
3 | Mini extrato | Cliente Gerente | Um Mini extrato mostrará as últimas 5 transações de uma conta Cliente: Um cliente pode ver o mini extrato apenas de suas “próprias” contas. Gerente: Um gerente pode ver o mini extrato de qualquer conta | 3 |
4 | Extrato Personalizado | Cliente Gerente | Um extrato personalizado permite que você filtre e exiba as transações em uma conta com base na data, valor da transação Cliente: Um cliente pode ver o extrato personalizado apenas de suas “próprias” contas. Gerente: Um gerente pode ver o extrato personalizado de qualquer conta | 5 |
5 | Mudar senha | Cliente Gerente | Cliente: Um cliente pode alterar a senha apenas de sua conta. Gerente: Um gerente pode alterar a senha apenas de sua conta. Ele não pode alterar as senhas de seus clientes | 1 |
6 | Novo cliente | Gerente | Gerente: um gerente pode adicionar um novo cliente. Gerente: Um gerente pode editar detalhes como endereço, e-mail, telefone de um cliente. | 3 |
7 | Nova conta | Gerente | Atualmente o sistema oferece 2 tipos de contas
| 5 |
8 | Editar conta | Gerente | Gerente: um gerente pode adicionar uma edição de detalhes de conta para uma conta existente | 1 |
9 | Deletar conta | Gerente | Gerente: um gerente pode adicionar e excluir uma conta de um cliente. | 1 |
10 | Excluir cliente | Gerente | Um cliente pode ser excluído apenas se ele / ela não tiver contas atuais ou de poupança ativas. Gerente: Um gerente pode excluir um cliente. | 1 |
11 | Depósito | Gerente | Gerente: Um gerente pode depositar dinheiro em qualquer conta. Normalmente feito quando o dinheiro é depositado em uma agência bancária. | 3 |
12 | Cancelamento | Gerente | Gerente: Um gerente pode sacar dinheiro de qualquer conta. Normalmente feito quando o dinheiro é retirado em uma agência bancária. | 3 |
ETAPA B) Estimar a duração da tarefa
Depois de classificar a complexidade dos pontos de função, você deve estimar a 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. Esse valor depende da produtividade do integrante que se responsabilizará pela 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 |
Total de pontos da função | 34 | ||
Estimativa definida por ponto | 5 | ||
Esforço total estimado (horas por pessoa) | 170 |
Portanto, o esforço total para concluir a tarefa "Criar a especificação de teste" do Banco Guru99 é de cerca de 170 horas-homem
Depois de entender o esforço necessário, você pode atribuir recursos para determinar quanto tempo a tarefa levará (duração) e, em seguida, você pode estimar os custos de trabalho e não trabalhistas.
O exemplo acima também mostra a importância do membro em sua equipe. Se você tiver membros talentosos e experientes , poderá concluir a tarefa designada em pouco 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?”
Suponha que em média o salário de 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 máximo retorno para o investimento de sua empresa. Quanto mais precisa for a estimativa do custo do projeto, melhor você poderá gerenciar o orçamento do 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 fazer uma estimativa.
Na estimativa de três pontos, três valores são produzidos inicialmente para cada tarefa com base na experiência anterior ou melhores suposições como segue
Ao estimar uma tarefa, o Test Manager (TM) precisa fornecer três valores, conforme especificado acima. Os três valores identificados estimam o que acontece em um estado ideal , o que é mais provável ou o que achamos que seria o pior cenário.
Vamos ver como usar os três valores acima no exemplo a seguir
Para a tarefa “ Criar a especificação de teste ”, você pode estimar o esforço de teste? Lembre-se de que você deve cobrir todos os módulos do site do Banco Guru99 como feito no Método de Ponto de Função
Você pode estimar o seguinte
- O melhor caso para concluir esta tarefa são 120 horas-homem (cerca de 15 dias). Nesse caso, você tem uma equipe talentosa, eles podem terminar a tarefa em menor tempo.
- O caso mais provável para concluir esta tarefa é de 170 horas-homem (cerca de 21 dias). Este é um caso normal, você tem recursos e capacidade suficientes para concluir a tarefa
- O pior caso para concluir esta tarefa é de 200 horas-homem (cerca de 25 dias). Você precisa realizar muito mais trabalho porque os membros da sua equipe não são experientes.
Agora, atribua o valor a cada parâmetro conforme abaixo
O esforço para completar a tarefa pode ser calculado usando a fórmula de distribuição triangular dupla como segue-
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 te perguntar
Na estimativa acima, você apenas determina um valor possível e não certo , devemos saber sobre a probabilidade de que a estimativa esteja 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 a probabilidade de a estimativa estar correta.
Agora você pode concluir a estimativa para a tarefa "Criar a especificação de teste"
Para concluir a tarefa "Criar a especificação de teste" do site do banco Guru99, você precisa de 166,6 ± 13,33 hora-homem (153,33 a 179,99 hora-homem)
Etapa 4) Validar a estimativa
Depois de criar uma estimativa agregada para todas as tarefas mencionadas na EAP, você precisa encaminhá-la ao conselho de administração , que a revisará e aprovará .
O membro do conselho de administração pode incluir o CEO, o gerente de projeto e outras partes interessadas.
O conselho de administração analisará e discutirá seu plano de estimativa com você. Você pode explicar sua estimativa de forma lógica e razoável 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 da equipe talentoso sai do trabalho repentinamente, o teste leva mais tempo do que o estimado para ser concluído ... etc. É por isso que você precisa incluir algum buffer em sua estimativa. 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 de sua equipe saem por longos períodos? Isso pode atrasar o projeto. O planejamento da fonte 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 para o membro da sua equipe, geralmente licenças longas.
- Use a experiência anterior como referência: As experiências de projetos anteriores desempenham um papel vital na preparação das estimativas de tempo. Porque alguns projetos podem ter alguma semelhança, você pode reutilizar a estimativa anterior. Por exemplo, se você costuma fazer um projeto como testar um site, pode aprender com essa experiência, tentar evitar todas as dificuldades ou problemas que foram enfrentados em projetos anteriores.
- Atenha-se à sua estimativa: Estimativa é apenas estimativa porque pode dar errado . Nos estágios iniciais do projeto, você deve verificar novamente as estimativas de teste e fazer modificações, se necessário. Não devemos estender a estimativa depois de corrigi-la, a menos que haja grandes mudanças no requisito, ou você tenha que negociar com o cliente sobre a re-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 Ponto de Caso de Uso, Distribuição percentual, Método Ad-hoc são outras técnicas de estimativa em Engenharia 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 aplicativo de reserva de voo, preparar uma estrutura analítica do projeto
- 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 feito uma estimativa fundamentada do 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 ascendente, as estimativas não são feitas por uma única pessoa, mas por todas as partes interessadas, contribuintes individuais, especialistas e membros experientes da equipe em conjunto. A ideia é aproveitar a sabedoria colaborativa dos membros da equipe para chegar a estimativas de teste precisas
- Agora, já que você tem uma experiência considerável no sistema de reserva de voos. Use esta experiência para estimar o esforço necessário para o Teste Funcional completo do site. - http://newtours.demoaut.com/
- A funcionalidade deste site é idêntica à do Flight Reservation Application, apenas que é baseado na web. Pause o tutorial e faça o exercício agora
- Espero que, com base em 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 baseada na experiência.
- Outra técnica é classificar o projeto com base em seu tamanho e complexidade e, em seguida, ver quanto tempo um projeto de um 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, em seguida, usar casos de teste estimados do projeto atual e chegar ao esforço total
- Modelos de estimativa mais sofisticados envolvem modelos matemáticos complexos. Na prática, a maioria dos projetos usa a abordagem de cima para baixo para a estimativa.
- As estimativas de teste podem ser afetadas por muitos fatores, como pressões de tempo, fatores de pessoas, distribuição geográfica da equipe de teste e assim por diante