Conceitos Fundamentais de Qualidade e Teste de Software
Classificado em Computação
Escrito em em
português com um tamanho de 4,98 KB
O que é Qualidade de Software e sua Relação com o Teste?
Qualidade de software pode ser definida tanto pela qualidade do produto quanto pela qualidade do processo de desenvolvimento do mesmo (metodologia). O teste de software é uma abordagem de controle da qualidade.
O que é o Teste de Software e seus Principais Objetivos?
Processo de executar um programa com a intenção de encontrar bugs. O objetivo é revelar falhas no sistema antes que ele entre em produção.
Alterações Atuais no Teste de Software e o Novo Conceito
O processo de teste transformou-se no projeto de teste, criando áreas com esse propósito, com técnicos especialistas em testes e empresas buscando especialistas com certificação na área. O novo conceito de teste é que, para a qualidade de software, a área de teste deve ter seu projeto próprio para garantir a qualidade.
Regra 10 de Myers
O custo de correção dos defeitos tende a aumentar quanto mais tarde o defeito é detectado.
Preconceitos em Relação ao Teste de Software
Cita-se os seguintes preconceitos:
- O testador é inimigo do desenvolvedor.
- Qualquer um pode testar sistemas.
- Só realizar o teste no software quando o sistema estiver pronto.
Fases do Ciclo de Vida do Processo de Teste
As fases são:
- Procedimentos iniciais
- Especificação
- Execução
- Entrega
Técnicas de Teste
As técnicas de teste são:
- Testes Estruturais
- Testes Funcionais
Diferença entre Teste Estrutural e Teste Funcional
O teste estrutural garante que o software seja estruturalmente sólido e que funcione no contexto técnico onde será instalado. O teste funcional garante o atendimento dos requisitos, ou seja, que os requisitos estão corretamente codificados.
Fatores de Qualidade (Exemplos)
Quatro tipos de fatores de qualidade são:
- Usabilidade
- Portabilidade
- Reusabilidade
- Eficiência
Como Identificar os Fatores de Qualidade?
O processo envolve cinco passos:
- Passo 1: Considerar as características básicas da aplicação.
- Passo 2: Considerar as aplicações no ciclo de vida.
- Passo 3: Realizar uma avaliação de custo versus benefícios dos fatores de qualidade identificados.
- Passo 4: Ordenar os fatores de qualidade segundo sua importância.
- Passo 5: Argumentar as escolhas/tomada de decisão.
Controle de Qualidade vs. Garantia de Qualidade
O que é Controle de Qualidade?
Verificar se produtos e serviços estarão em conformidade com os requisitos especificados e atenderão as necessidades do usuário. Responsabilidade da equipe ou funcionário.
O que é Garantia de Qualidade?
Uma atividade que estabelece e avalia os processos que geram os produtos. Responsabilidade da gerência.
É possível ter Controle de Qualidade sem Garantia de Qualidade?
Sim, pois uma equipe de testes de software pode ser chamada para realizar testes ao final do desenvolvimento de um software, e o desenvolvimento não ser guiado por uma metodologia.
Acrônimo FURPS+
Representa categorias que podem ser usadas na definição de requisitos, assim como representa Fatores de qualidade de software, sendo parte do RUP:
- F = Funcionalidade
- U = Usabilidade
- R = Confiabilidade
- P = Desempenho
- S = Suportabilidade
- + = Engloba outros requisitos não-funcionais
Dificuldade em Alcançar Fatores de Qualidade
Nem sempre é fácil alcançar os fatores de qualidade em uma aplicação ou serviço porque alguns fatores são conflitantes. Exemplo: Economia X Extensibilidade.
Ambiente de Teste
O que é o Ambiente de Teste?
É toda a estrutura onde os testes serão executados. Deve prover os contextos apropriados para a condução do teste.
Elementos do Ambiente de Teste
Os elementos são: Pessoal, Hardware, Software, Documentação, Ambiente Físico, Rede e Suprimentos.
Ambiente de Teste Isolado
Ambiente isolado com processamento independente, com características alinhadas ao ambiente de desenvolvimento e produção.
Benefícios do Teste Isolado
Os benefícios incluem: Ambiente controlado, Dados íntegros, Facilidade no gerenciamento, etc.
Análise de Risco
O que é Análise de Risco?
É o processo de avaliar riscos, ameaças, controles e vulnerabilidades.
Possíveis Riscos ao Processo de Teste
Os riscos incluem: Orçamento, Qualificação da equipe técnica de teste, Ambiente de teste, Ferramentas, Metodologias, etc.