Qualidade e Teste de Software

909 visualizações

Publicada em

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

Publicada em: Tecnologia
0 comentários
4 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
909
No SlideShare
0
A partir de incorporações
0
Número de incorporações
24
Ações
Compartilhamentos
0
Downloads
42
Comentários
0
Gostaram
4
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Qualidade e Teste de Software

  1. 1. Qualidade e Teste de Software O que preciso saber? por Kamilla Queiróz
  2. 2. 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
  3. 3. Kamilla Queiróz • Coordenadora e Co-fundadora do GTS-CE •• CCeerrttiiffiiccaaddaa CCBBTTSS • Analista de Testes Pleno – Instituto Atlântico
  4. 4. Primeiros Passos • Qualidade de Software •• TTeessttee ddee SSooffttwwaarree • É importante testar? Porquê? • Ciclo de Vida (Desenvolvimento Vs Testes)
  5. 5. O que é Qualidade ? • O termo QUALIDADE é utilizado em diversas situações: – QUALIDADE de um restaurante • bom atendimento • refeições saborosas • ambiente organizado e higiênico
  6. 6. O que é Qualidade ? (2) MAS ESSA NOÇÃO DE QUALIDADE PODE E MUDA DE PESSOA PARA PESSOA
  7. 7. O que é Qualidade ? (3) • De acordo com a norma ISO 9000, a definição de QUALIDADE é: “QUALIDADE é o grau no qual um conjunto de características inerentes, satisfaz a requisitos”
  8. 8. Qualidade de Software • Esse termo não existe (ops!) • Mas temos: – GARANTIA DA QUALIDADE – CONTROLE DA QUALIDADE
  9. 9. Garantia da Qualidade (QA) • É um processo de auditoria dos requisitos de qualidade e de resultados das medições; • Visa garantir que sseejjaamm uussaaddooss ppaaddrrõõeess ddee qualidade e definições operacionais;
  10. 10. Controle da Qualidade (QC) • É um processo de monitoramento e registro de resultados das atividades de qualidade para avaliar o desempenho; • Visa obter informações para recomendar mudanças que sejam necessárias;
  11. 11. Qualidade do Processo • Afeta diretamente a qualidade dos produtos fornecidos “desta forma, se o processo de DESENVOLVIMENTO DE SOFTWARE for BEM DEFINIDO as chances dos produtos que forem produzidos com base nele terem MELHOR QUALIDADE é alta.”
  12. 12. PENSE NISSO... • QUALIDADE DO PRODUTO é o que buscamos, a QUALIDADE DO PROCESSO é o meio para conseguirmos! –– ((aammiiggaa)) RReeggiinnaa Maria Thienne Colombo / INMETRO
  13. 13. Custo da Qualidade • Engloba todos os custos ocorridos no ciclo de vida de um produto – seja ele de: conformidade ou não-conformidade. • Deve sempre ser visto como INVESTIMENTO
  14. 14. (amigo) Myers e sua regra 10
  15. 15. • Leia-se: QUANTO ANTES (mais cedo) descobrimos e corrigimos um ddeeffeeiittoo MMEENNOORR SSEERRÁÁ SSEEUU CUSTO (mais barato).
  16. 16. Custo da Conformidade • Custos com prevenção • Custos com treinamento, ppllaanneejjaammeennttoo,, revisões e homoligação • Custos com inspeções
  17. 17. Custos da Não-Conformidade • Custos de falha interna; • Custos com retrabalho, análise ddee ffaallhhaass,, ações corretivas, atraso no cronograma;
  18. 18. Teste de Software • Definições encontradas: – ‘é analisar um programa com a intenção de descobrir erros e defeitos’ ,, ((aammiiggoo)) MMyyeerrss.. – ‘é exercitar ou simular a operação de um programa ou sistema’, alguém por aí.
  19. 19. – ‘é 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.
  20. 20. • Em todo caso, Teste de Software é: – uma das atividades dentro do processo de desenvolvimento de software; – tem a finalidade de determinar ssee cceerrttoo pprroodduuttoo atingiu suas especificações e funcionou corretamente;
  21. 21. • E seu objetivo nada mais é que: – Revelar o número máximo de falhas, com menor esforço; – Identificar essas falhas e suas causas, ppaarraa qquuee aass mesmas sejam corrigidas pela equipe de desenvolvimento;
  22. 22. • Quem trabalha com Teste de Software: – Testador – Analista de Teste – Automatizador –– AArrqquuiitteettoo ddee TTeessttee – Líder de Teste –Gerente de Teste
  23. 23. • Lembrando – para exercer qualquer atividade das mencionadas é necessário: –– sseerr iinnvveessttiiggaaddoorr – ser criativo – ser questionador – ser detalhista – ser pró-ativo
  24. 24. • Abrangência dos Testes – varia muito de quanto de prazo e custo pode-se investir • Se os testes forem executados apenas no fim do processo, a abrangência tende a ser menor, em comparação a se forem executados em andamento com o processo de desenvolvimento (desde o inicio); • Os dois processos andando em paralelo (lado a lado) as chances de testar com maior capacidade e cobertura é muito maior;
  25. 25. 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.
  26. 26. • Detalhe ae... ERRO != DEFEITO != FALHA
  27. 27. É importante testar? Por quê? • Alguns (poucos) dentre os vários motivos: – questões de negócio –– qquuaalliiddaaddee – custo – segurança – confiabilidade
  28. 28. • Quer mais (?) – o ser humano é passível de erro devido à: •• pprreessssããoo ddee pprraazzoo • códigos complexos • complexidade na infraestrutura • mudanças na tecnologia • muitas interações de sistema
  29. 29. • 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.
  30. 30. Ciclo de Vida • Atividades fundamentais: – especificação – projeto ee iimmpplleemmeennttaaççããoo – validação – evolução
  31. 31. • Especificação – etapa onde destina-se a estabelecer quais funções são requeridas pelo sistema e as restrições sobre operação ee oo ddeesseennvvoollvviimmeennttoo ddoo sistema. – é nessa etapa onde há a produção de uma documentação de requisito, que é a especificação para o sistema.
  32. 32. – 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?
  33. 33. • Projeto e implementação – etapa da conversão de um especificação em um sistema executável; – atividades ccoonntteemmppllaaddaass:: • projeto de arquitetura; • especificação abstrata; • projeto de interface; • projeto de componentes; • projeto de estrutura de dados; • projeto de algoritmo;
  34. 34. • Validação – etapa pela qual destina-se a mostrar que um sistema está de acordo com suas especificações e que atende às expectativas ddoo cclliieennttee;; • Evolução – etapa de melhorias e evoluções pelas quais o sistema necessita evoluir para atender as necessidades mutáveis do cliente;
  35. 35. Validação e Verificação (V&V) • Como dito (repetindo) – destina-se a mostrar que um sistema está de acordo com suas especificações; • Tal processo envolve, verificar processos por meio inspeções e verificações em cada estágio do processo – desde a definição dos requisitos até o desenvolvimento do programa;
  36. 36. • Verificação – segundo a norma B87925, é descrito como um processo de avaliação de um sistema ou componente; – Em outros termos – será que construímos o produto direito? – Pergunta que cabe: O programa é livre de erros, faz o que deveria fazer?
  37. 37. • Validação – pela a norma B87925, é descrito como determinação da precisão dos produtos do desenvolvimento; – Visto como – esse é o produto certo? – Pergunta que cabe: É isso que você realmente quer?
  38. 38. Modelo V
  39. 39. Um extra? • Documentação (os mais importantes): – Planos de Teste • é uma maneira de documentar oo pprroojjeettoo ddee tteessttee –– definindo o nível de cobertura que deverá ser alcançado; – Casos de Teste • é a especificação mais detalhada do teste, com a pormenorização de campos de telas, formulários e etc.
  40. 40. Vamos relembrar? • Qualidade de Software >> Garantia da Qualidade e Controle da Qualidade; • Qualidade do Processo & CCuussttoo ddaa QQuuaalliiddaaddee • Regra 10 de Myers • Teste de Software
  41. 41. • Papeis em Teste de Software • Erro – Defeito – Falha •• CCiicclloo ddee VViiddaa • Validação & Verificação • Modelo V • Documentação
  42. 42. Finito (?) !! • Obrigado pela atenção! • Quer aprofundar e entender mais? •• CCoonnttaattoo – q.kamilla@gmail.com – http://mihqueiroz.com.br/resume.html

×