Qualidade e Teste de Software

42
Qualidade e Teste de Software O que preciso saber? por Kamilla Queiróz

description

Mini-Curso de Qualidade e Teste de Software - SECOMP Faculdade Lourenço Filho

Transcript of Qualidade e Teste de Software

Page 1: Qualidade e Teste de Software

Qualidade e Teste de Software

O que preciso saber?por Kamilla Queiróz

Page 2: Qualidade e Teste de Software

Kamilla Queiróz

• Tecnóloga em Análise e Desenvolvimento de Sistemas – Unitins

• Pós-Graduanda em Qualidade e Teste de Software pela UNINASSAU – PE

Page 3: Qualidade e Teste de Software

Kamilla Queiróz

• Coordenadora e Co-fundadora do GTS-CE

• Certificada CBTS• Certificada CBTS

• Analista de Testes Pleno – Instituto Atlântico

Page 4: Qualidade e Teste de Software

Primeiros Passos

• Qualidade de Software

• Teste de Software• Teste de Software

• É importante testar? Porquê?

• Ciclo de Vida (Desenvolvimento Vs Testes)

Page 5: Qualidade e Teste de Software

O que é Qualidade ?

• O termo QUALIDADE é utilizado em diversassituações:

– QUALIDADE de um restaurante

• bom atendimento

• refeições saborosas

• ambiente organizado e higiênico

Page 6: Qualidade e Teste de Software

O que é Qualidade ? (2)

MAS ESSA NOÇÃO DE QUALIDADE PODE E MUDA DE PESSOA PARA PESSOA

Page 7: Qualidade e Teste de Software

• De acordo com a norma ISO 9000, a definiçãode QUALIDADE é:

O que é Qualidade ? (3)

“QUALIDADE é o grau no qual

um conjunto de características

inerentes, satisfaz a requisitos”

Page 8: Qualidade e Teste de Software

Qualidade de Software

• Esse termo não existe (ops!)

• Mas temos:

– GARANTIA DA QUALIDADE

– CONTROLE DA QUALIDADE

Page 9: Qualidade e Teste de Software

Garantia da Qualidade (QA)

• É um processo de auditoria dos requisitos dequalidade e de resultados das medições;

• Visa garantir que sejam usados padrões de• Visa garantir que sejam usados padrões dequalidade e definições operacionais;

Page 10: Qualidade e Teste de Software

Controle da Qualidade (QC)

• É um processo de monitoramento e registrode resultados das atividades de qualidadepara avaliar o desempenho;

• Visa obter informações para recomendarmudanças que sejam necessárias;

Page 11: Qualidade e Teste de Software

Qualidade do Processo

• Afeta diretamente a qualidade dos produtos fornecidos

“desta forma, se o processo deDESENVOLVIMENTO DE SOFTWARE for BEM“desta forma, se o processo deDESENVOLVIMENTO DE SOFTWARE for BEMDEFINIDO as chances dos produtos que foremproduzidos com base nele terem MELHORQUALIDADE é alta.”

Page 12: Qualidade e Teste de Software

PENSE NISSO...

• QUALIDADE DO PRODUTO é o quebuscamos, a QUALIDADE DO PROCESSO éo meio para conseguirmos! – (amiga) Reginao meio para conseguirmos! – (amiga) Regina

Maria Thienne Colombo / INMETRO

Page 13: Qualidade e Teste de Software

Custo da Qualidade

• Engloba todos os custos ocorridos no ciclo devida de um produto – seja ele de: conformidadeou não-conformidade.

• Deve sempre ser visto como INVESTIMENTO

Page 14: Qualidade e Teste de Software

(amigo) Myers e sua regra 10

Page 15: Qualidade e Teste de Software

• Leia-se:

QUANTO ANTES (mais cedo) descobrimos ecorrigimos um defeito MENOR SERÁ SEUcorrigimos um defeito MENOR SERÁ SEUCUSTO (mais barato).

Page 16: Qualidade e Teste de Software

Custo da Conformidade

• Custos com prevenção

• Custos com treinamento, planejamento, • Custos com treinamento, planejamento, revisões e homoligação

• Custos com inspeções

Page 17: Qualidade e Teste de Software

Custos da Não-Conformidade

• Custos de falha interna;

• Custos com retrabalho, análise de falhas, • Custos com retrabalho, análise de falhas, ações corretivas, atraso no cronograma;

Page 18: Qualidade e Teste de Software

Teste de Software

• Definições encontradas:

– ‘é analisar um programa com a intenção de descobrir erros e defeitos’ , (amigo) Myers.descobrir erros e defeitos’ , (amigo) Myers.

– ‘é exercitar ou simular a operação de um programa ou sistema’, alguém por aí.

Page 19: Qualidade e Teste de Software

– ‘é avaliar se o software está fazendo o que deveria fazer, de acordo com seus requisitos, e não está fazendo o que não deveria fazer’, outro alguém

por aí.

– ‘é qualquer atividade que a partir da avaliação de um atributo ou capacidade de um programa ou sistema seja possível determinar se ele alcança os resultados desejados’, Bill Hetzel.

Page 20: Qualidade e Teste de Software

• Em todo caso, Teste de Software é:

– uma das atividades dentro do processo de desenvolvimento de software;

– tem a finalidade de determinar se certo produto – tem a finalidade de determinar se certo produto atingiu suas especificações e funcionou corretamente;

Page 21: Qualidade e Teste de Software

• E seu objetivo nada mais é que:

– Revelar o número máximo de falhas, com menor esforço;

– Identificar essas falhas e suas causas, para que as – Identificar essas falhas e suas causas, para que as mesmas sejam corrigidas pela equipe de desenvolvimento;

Page 22: Qualidade e Teste de Software

• Quem trabalha com Teste de Software:

– Testador

– Analista de Teste

– Automatizador

– Arquiteto de Teste– Arquiteto de Teste

– Líder de Teste

– Gerente de Teste

Page 23: Qualidade e Teste de Software

• Lembrando – para exercer qualquer atividade das mencionadas é necessário:

– ser investigador– ser investigador

– ser criativo

– ser questionador

– ser detalhista

– ser pró-ativo

Page 24: Qualidade e Teste de Software

• Abrangência dos Testes

– varia muito de quanto de prazo e custo pode-se investir

• Se os testes forem executados apenas no fim doprocesso, a abrangência tende a ser menor, emcomparação a se forem executados em andamento como processo de desenvolvimento (desde o inicio);

• Os dois processos andando em paralelo (lado a lado) aschances de testar com maior capacidade e cobertura émuito maior;

Page 25: Qualidade e Teste de Software

Teste e Qualidade

• Algumas questões:

– Teste é igual a qualidade?

– Se testarmos , teremos qualidade?

Testes por si só não constroem a qualidade, mas podem fornecer confiança

na qualidade de software.

Page 26: Qualidade e Teste de Software

• Detalhe ae...

ERRO != DEFEITO != FALHA

Page 27: Qualidade e Teste de Software

É importante testar? Por quê?

• Alguns (poucos) dentre os vários motivos:

– questões de negócio

– qualidade– qualidade

– custo

– segurança

– confiabilidade

Page 28: Qualidade e Teste de Software

• Quer mais (?)

– o ser humano é passível de erro devido à:

• pressão de prazo• pressão de prazo

• códigos complexos

• complexidade na infraestrutura

• mudanças na tecnologia

• muitas interações de sistema

Page 29: Qualidade e Teste de Software

• Mais ainda (?)

– falhas causadas por interferências do ambiente:

• radiação

• magnetismo

• campos eletrônicos

• poluição

Pois devido a isso podem causar falhas em software embarcado

e influenciar a execução pelas mudanças de condições de hardware.

Page 30: Qualidade e Teste de Software

Ciclo de Vida

• Atividades fundamentais:

– especificação

– projeto e implementação– projeto e implementação

– validação

– evolução

Page 31: Qualidade e Teste de Software

• Especificação

– etapa onde destina-se a estabelecer quaisfunções são requeridas pelo sistema e asrestrições sobre operação e o desenvolvimento dorestrições sobre operação e o desenvolvimento dosistema.

– é nessa etapa onde há a produção de umadocumentação de requisito, que é a especificaçãopara o sistema.

Page 32: Qualidade e Teste de Software

– contempla quatro fases:

• estudo de viabilidade;

• levantamento e análise de requisitos;

• especificação de requisitos;

• validação de requisitos

Em qual dessas fases é passível atuação do Teste de Software?

Page 33: Qualidade e Teste de Software

• Projeto e implementação

– etapa da conversão de um especificação em umsistema executável;

– atividades contempladas:– atividades contempladas:

• projeto de arquitetura;

• especificação abstrata;

• projeto de interface;

• projeto de componentes;

• projeto de estrutura de dados;

• projeto de algoritmo;

Page 34: Qualidade e Teste de Software

• Validação

– etapa pela qual destina-se a mostrar que umsistema está de acordo com suas especificações eque atende às expectativas do cliente;que atende às expectativas do cliente;

• Evolução

– etapa de melhorias e evoluções pelas quais osistema necessita evoluir para atender asnecessidades mutáveis do cliente;

Page 35: Qualidade e Teste de Software

Validação e Verificação (V&V)

• Como dito (repetindo) – destina-se a mostrarque um sistema está de acordo com suasespecificações;

• Tal processo envolve, verificar processos pormeio inspeções e verificações em cada estágiodo processo – desde a definição dos requisitosaté o desenvolvimento do programa;

Page 36: Qualidade e Teste de Software

• Verificação – segundo a norma B87925, édescrito como um processo de avaliação deum sistema ou componente;

– Em outros termos – será que construímos oproduto direito?

– Pergunta que cabe: O programa é livre de erros, faz o que deveria fazer?

Page 37: Qualidade e Teste de Software

• Validação – pela a norma B87925, é descritocomo determinação da precisão dos produtosdo desenvolvimento;

– Visto como – esse é o produto certo?

– Pergunta que cabe: É isso que você realmente quer?

Page 38: Qualidade e Teste de Software

Modelo V

Page 39: Qualidade e Teste de Software

Um extra?

• Documentação (os mais importantes):

– Planos de Teste• é uma maneira de documentar o projeto de teste –• é uma maneira de documentar o projeto de teste –

definindo o nível de cobertura que deverá seralcançado;

– Casos de Teste• é a especificação mais detalhada do teste, com a

pormenorização de campos de telas, formulários e etc.

Page 40: Qualidade e Teste de Software

Vamos relembrar?

• Qualidade de Software >> Garantia da Qualidade e Controle da Qualidade;

• Qualidade do Processo & Custo da Qualidade• Qualidade do Processo & Custo da Qualidade

• Regra 10 de Myers

• Teste de Software

Page 41: Qualidade e Teste de Software

• Papeis em Teste de Software

• Erro – Defeito – Falha

• Ciclo de Vida• Ciclo de Vida

• Validação & Verificação

• Modelo V

• Documentação

Page 42: Qualidade e Teste de Software

Finito (?) !!

• Obrigado pela atenção!

• Quer aprofundar e entender mais?

• Contato • Contato

[email protected]

– http://mihqueiroz.com.br/resume.html