Professional Documents
Culture Documents
Garantia da Qualidade
(Conceitos & Fundamentos)
Professor: Rodrigo Zauza Passos
1
Slide: 2
:.: Objetivo
2
Slide: 3
Achar falhas
Evitar falhas
Previnir
falhas
3
Slide: 4
Ferramentas
em suas competências
Processos
Pessoas
nivelada ao seu perfil
pessoal;
– Ferramentas: são
componentes
facilitadores e não
complicadores.
Aurélio
– Requisito
• Condição que se deve satisfazer para que uma coisa fique legal e regular;
• Exigência imprescindível para a consecução de certo fim;
• Qualidade, dotes, predicados exigidos para um produto;
– Requerimento
• Ato ou efeito de requerer (pedir /solicitar).
Para um Analista
• “Um requisito é algo que o produto deve fazer ou alguma qualidade que deve
apresentar.”
Para um Testador:
• “Um requisito é algo (verificável) que o produto deve fazer ou alguma qualidade
(mensurável) que deve apresentar e que (pelo seu risco de comprometer o sucesso
do projeto, compen$a) deve ser testado”.
5
to
ei
:.: Nivelamento de Conceitos (II)
nc
Co
6
to
ei
:.: Nivelamento de Conceitos (III)
nc
Co
Defeito=Falha=Anomalia=Bug=Ocorrência
7
:.: Bug Arrasadores (1/4)
Caso 1 - Disney´s Li
on King ( 1994-1995)
-A Disney , em 1994
lançou seu primeiro jo
crianças “ Lion King go de multimedia para
Animated stories”. Er
e renomada , fez um a a primeira da Disne
enorme campanha de y,
EUA . Vendas foram marketing por todo os
absurdamente fantástic
as (vendas de natal).
Porém , no dia seguin
te , 26 de dezembro de
atendimento ao client 1994 o departamento
e da Disney recebeu de
ligações de clientes in uma enxurrada de
dignados e nervosos.
muitas das plataform O CD não funcionava
as de PC existentes no em
software foi desenvol mercado. Razão : O
vido em uma única pl
as mais comuns do m ataforma ( que não re
ercado!). fletia
Faltou um simples te
ste de multiplataform
a....
8
:.: Bug Arrasadores (2/4)
9
:.: Bug Arrasadores (3/4)
Caso 3 – Limite de en
dereços de computa
dor na WWW
Quando o TCP/IP (pro
tocolo de transmissão
foi criado pelos sr. V de pacotes da Internet
int Cerf e Bob Kahn, )
bilhões de endereços eles acharam que 4.3
eram suficientes. Pare
crescimento exponenc ce muito, mas com o
ial de transações ness
atingir o limite antes a plataforma, pode-se
do previsto. Um cons
governamentais estão órcio de organizações
se preparando para am
mais de 200 trilhões de pliar este número para
endereços possíveis.
A singela mudança im
plica mexer com mui
computadores espalh ta gente e muitos
ados pelo planeta. Se
de logística e sincron rá um problema compl
ização dos sistemas. exo
10
:.: Bug Arrasadores (4/4)
11
ia
nc
:.: Nivelamento de Conceitos (IV)
vê
Vi
12
Slide: 13
Pr ocesso
s
13
Slide: 14
P
PM
Wat
MB
Boo
Wate
el
Boocc
Cata
rfall
Catalysi
rfall
O
OM
X
d
BO
XM
hh
o
MT
US
OK
M
M
ss
V-
e
T
K
DP
lysi
d el
o
-M
W
DSD
DSDM
FDD
C
FDD
SCR
Cristta
Ic
SCRUM
Na Engenharia de Software,
Ico
r
R
RA
P
AD SSAD
is
D
on
ll
X
XP
RR
EU
M
nix
UU existem várias metodologias de produção ...
P
UM
M
ix
PP
15
Slide: 16
16
Slide: 17
M
an
Co or abil ridacia
nf ret ida de
e
ut e ilida ad
Fl esta
T
ia itu d
n
e il id d e
ex b
ad
en
U s t e g iê
In Efic
ib ilid
ib
ilid
b
ad
de e
C
Portabilidade
Reusabilidade
Interoperabilida
de
17
Modelo de MCall (1977)
Slide: 18
18
Slide: 19
teste
teste Testes
Testes
Requerimentos
Requerimentos de Aceitação
de Aceitação
doc
doc
teste
teste
Testes
Testes
Análise
Análise de
deSistema
Sistema
doc
doc
teste
teste Testes
Desenho Testes
Desenho de
doc
doc deIntegração
Integração
teste
teste
Testes
Testes
Codificação
Codificação de
deUnidade
Unidade
doc
doc
Processo Produto
19
Slide: 20
A implantação de um
processo de formal de
Testes no ciclo produtivo
otimiza as relações
setoriais e garante a
cadência do trabalho
coorporativo
20
ia
nc
:.: O Processo de Testes de Software
vê
Vi
21
:.: O Processo de Testes de Software
São premissas dos testes de software:
Registrar/monitorar erros
Produzir métricas
Formular indicadores
de qualidade
22
:.: O Processo de Testes de Software
Atividades Macro X Responsáveis:
Analistas /Arquiteto
de Testes
Analista/Executores de
Testes
Concepção
Diagnosticar
situação
atual Instrumentalização
Instrumentalizar as estratégias definidas
Complexidade
Assimilar
Conhecimento
Criar, compartilhar e realimentar Expertise
Definir
Estratégias
Evangelização Analistas e
Executores
Monitorar e criar cultura, Divulgar, Negociar,
Compartilhar, Justificar, Celebrar, Aperfeiçoar...
t t+1
Ciclo de Vida
23
ia
nc
:.: O Processo de Testes de Software
vê
Vi
Dicas úteis:
• Todos os testes devem ser rastreáveis até a sua origem,
que são os requisitos negociais;
• Planeje sempre. Mas seja comedido !
• Cerca de 60% das falhas ocorrem na concepção do produto;
• Crie casos de testes genéricos;
• Testes não têm fim. Eles apenas provocam um “ponto de
corte” !
• Processos inteligentes (e eficientes) são independentes de
ferramentas;
• Antes de executar um esforço de testes defina bem os
papéis e responsabilidades;
24
to
ei
:.: Nivelamento de Conceitos (V)
nc
Co
Validação de modelos ER
Testes de Carga e Stress
Validação/Verificação de Inspeção de
requisitos Artefatos Doc. Testes caixa preta
Régua de Avaliação
Fornecedores Testes de vulnerabilidades
Estratégia de testes
Testes exploratórios
Testes automatizados
Testes baseados em cenários Testes negativos
27
:.: O Processo de Testes de Software
Tipos de testes mais comuns:
• Funcionais: verificam se o SUT está agindo conforme os requisitos negociais
projetados inicialmente;
• Baseados em cenários: é uma boa estratégia para abranger a maior parte dos
requisitos negociais do SUT;
• Testes negativos: são atividades que tentam contradizer a natureza para qual
aquela funcionalidade foi projetada;
• Testes de caixa-preta: valida somente a entrada e a saída de um processo, não
importando o que acontece dentro dele;
• Performance: são atividades que avaliam o desempenho do SUT ou de um
componente de acordo com parâmetros balisadores de aceitabilidade (requisitos não
funcionais);
• Load/Stress: é a estratégia utilizada para averiguar a suportabilidade da
infraestrutura do SUT (rede, middleware, RDBMS, etc.). O teste de stress nada mais é
do que o ponto limite da carga utilizada no esforço do teste e suportada pela
infraestrutura;
• Teste exploratório: sua finalidade é reconhecer as características do protótipo e
tentar provocar a ocorrência de anomalias;
• Teste de vulnerabilidade: com o advento da Internet tornou-se atividade
estratégica, pois verifica os limites do SUT com relação às atividades de XSS, Cross-
Scripting, sobrecarga de níveis de serviço;
• Testes automatizados: são viáveis quando os requisitos do SUT são maduros e
estáveis;
28
• Testes de regressão: aplicável quando um coponente do SUT sofre alteração.
:.: O ciclos de produção e
de testes de software
Esclarecimento Revalidar
Reescreve
r
Corrigir e solucionar
dúvidas
Ciclo de Reparo de
Gerenciamento do ciclo
Defeitos de produção do
software
Gerenciamento de
Enviar Testes e Defeitos
Abrir Retestar
É Defeito ? Defeito
Defeito Defeito
Fornecedor
Cancelar Encerrar
BUGFix ?
Defeito Defeito
Slide: 29
:.: Melhores práticas de testes (1/9)
30
:.: Melhores práticas de testes (2/9)
32
:.: Melhores práticas de testes (3/9)
35
:.: Melhores práticas de testes (6/9)
Caso de Teste #n
36
:.: Melhores práticas de testes (7/9)
37
:.: Melhores práticas de testes (8/9)
38
:.: Melhores práticas de testes (9/9)
39
:.: Ambientes de produção
Em homologação
Em produção
Em homologação
Em teste
Em teste Em desenvolvimento
40
:.: Ambientes de produção
41
:.: Ambientes de produção
42
:.: Ambientes de produção
43
:.: Ambientes de produção
44
Slide: 45
• Escolha mais de tr
ês maneiras para
medir a estabilida
de do produto será
liberado em produ
ção:
1. Padrões de Cod
ificação
2. Fluxo de Falhas
/Condição
3. Estabilidade Perf
ormática
4. Qualidade dos T
estes
5. MNC (Métricas N
ão Cartesianas)
45
Slide: 46
46
Slide: 47
47
Slide: 48
ia
nc Acredite:
vê
Vi
48
:.: Métricas recursos de infra
49
:.: Métricas recursos de infra
Passo Nove
CC:Mail
28%
Lock Filter
50
Slide: 51
51
Slide: 52
2. Planejando os testes
Objetivo: identificar a estratégia e
procedimentos que melhor se adaptem à
metodologia de desenvolvimento garnatindo a
eficiência e eficácia dos testes.
Esta etapa está em paralelo ao desenho do
sistema e inclui: recursos, responsabilidades e
objetivo dos testes; identificação de riscos e
prioridades e identificação de entidades que
serão ou não testadas.
52
Slide: 53
3. Desenhando os testes
Objetivo: definir os casos de teste, dados e
procedimentos que estarão em conformidade com
os requisitos iniciais. Esta etapa envolve
planejamento estratégico próativo que detecte
possíveis falhas. A definição dos testes deve
primar pela simplicidade e baixo custo de
execução.
53
Slide: 54
3. Executando os testes
Objetivo: Baseado nos casos de teste
definidos na etapa anterior a execução
será dinamizada de maneira que se
descubra um número maior de falhas.
54
Slide: 55
55
:.: Desafio #2
1. Criar os artefatos
documentais para os
seguintes softwares:
Controle de Estoque;
Locadora de DVD;
Automoção Comercial
(lanchonete);
1. Considerações:
Dividam-se em 3 grupos e
escolham o System Under
Testing (SUT);
Se tiver dúvida, pergunte ao
Professor sobre os requisitos
negociais de cada software;
Garanta a rastreabilidade dos
artefatos;
1. Tempo estimado: 1h30min
56
:.: Anomalias dos Artefatos documentais
57
ia
nc
:.: Premissas para se executarem testes
vê
Vi
Que exista um
DOCUMENTO ESCRITO (±Formal)
com aquilo que deve ser feito e
que neste documento exista uma
lista identificada de REQUISITOS.
(pode ser um anexo)
58
ia
nc
:.: Apresentação da metodologia A360’
vê
Vi
59
ia
nc
:.: Apresentação da metodologia A360’
vê
Vi
61
ia
nc
:.: Apresentação da metodologia A360’
vê
Vi
62
:.: Desafio #3
1. Inspecionar os artefatos
documentais criados
anteriormente para:
Controle de Estoque;
Locadora de DVD;
Automoção Comercial
(lanchonete);
1. Considerações:
Dividam-se novamente em 3
grupos, com composição
respectiva diferente da anterior;
Use a metodologia A360’;
Registre as anomalias
encontradas;
1. Tempo estimado: 2h
63
Slide: 64
Pessoas
64
Slide: 65
a
ci
ên
:.: Frases a serem ditas a um testador:
v
Vi
66
Slide: 67
a
ci
ên
:.: Um bom profissional de testes:
v
Vi
67
Slide: 68
69
Slide: 70
Ferramenta
s
70
:.: Visão geral de ferramentas em testes
Ferramentas
Depuração e Gerenciamento de
Análise Interativa Falhas e Performance
71
Slide: 72
ia
nc
:.: Dicas sobre ferramentas
vê
Vi
72
Slide: 73
ia
nc
:.: 5 etapas de avaliação de ferramentas:
vê
Vi
73
Experiment
os
74
Slide: 75
ia
nc
:.: Inspeção de Artefatos em TI (1/5)
vê
Vi
Testes NOK:
problemas à vista
aqui !
Testes não
executados:
Várias
Build / Versão / Release causas.
Testes OK:
comportamento
esperado
Não dá pra testar
a Qualidade
Ciclo de Vida
75
Slide: 76
ia
nc
:.: Inspeção de Artefatos em TI (2/5)
vê
Vi
Testes NOK:
problemas à vista
aqui !
Testes não
executados:
Várias
Build / Versão / Release causas.
Testes OK:
comportamento
Não dá pra testar esperado
a Qualidade
Ciclo de Vida
76
Slide: 77
ia
nc
:.: Inspeção de Artefatos em TI (3/5)
vê
Vi
Testes NOK:
problemas à vista
aqui !
Testes não
executados:
Várias
Build / Versão / Release causas.
Testes OK:
comportamento
Não dá pra testar esperado
a Qualidade
Ciclo de Vida
77
Slide: 78
ia
nc
:.: Inspeção de Artefatos em TI (4/5)
vê
Vi
Testes não
executados:
O artefato foi liberado. Várias
O Ciclo de testes começa causas.
Qualidade
aqui !
Testes OK:
comportamento
esperado
Não dá pra testar
a Qualidade
Ciclo de Vida
78
Slide: 79
ia
nc
:.: Inspeção de Artefatos em TI (5/5)
vê
Vi
Testes NOK:
problemas à vista
O artefato foi liberado.
O Ciclo de testes começa
Qualidade
Fim do Ciclo
aqui !
Testes não
executados:
Várias
causas.
Não dá pra testar Testes OK:
a Qualidade comportamento
esperado
Ciclo de Vida
79
Slide: 80
• Desafio#2: a partir do
conhecimento de domínio público,
foram construídos os artefatos
documentais para o ciclo de testes
de 3 SUTs;
81
Slide: 82
82