Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Garantia da
Qualidade de Software
(Conceitos Fundamentais)
1
Baseado no Livro
2
Tpicos
3
Criando
Cultura
4
Inconsciente / Incompetente
5
Consciente / Incompetente
6
Consciente / Competente
7
Inconsciente / Competente
8
Objetivo 1
Conceitos Bsicos
Pior Situao O Comeo Aprendizado Cultura
HOJE
9
Objetivo 2
Identificar Grupos de Interesse
Revises de Artefatos;
Auditorias de Qualidade;
Testes de Unidades;
Testes Integrados;
Testes de Sistema;
Testes de Aceite;
Planejamento dos Testes;
Automao dos Testes;
10
Prximos Passos
Pior Situao O Comeo Aprendizado Cultura
FUTURO
11
Parte I
Introduo
Qualidade de
Software
12
Introduo
Qualidade de Software
Abraham Lincoln
13
A Busca pela Qualidade
Primrdios do Desenvolvimento
Navegao pelo cdigo;
Correo de erros conhecidos;
1957
Processo de Deteco de Erros;
Produto Acabado;
Anos 70
Engenharia de Software;
No existe consenso sobre testes;
1979
Myers Objetivo encontrar erros ;
Produto Acabado;
Anos 80
Qualidade de Software;
Surgem os 1o.s Padres Mundiais;
Anos 90
Ferramentas de Testes;
Bug Ano 2000; 14
A Realidade dos
Projetos de Software
15
Os custos da
Falta de Qualidade
02/07/2002 - 13h03
Bugs em software custam US$ 60 bilhes por ano aos EUA
da Reuters, em Nova York (EUA)
18
Rational Unified Process (RUP)
19
Adquirindo Maturidade
Organizacional
20
Qualidade de
Software
21
Definindo Qualidade de Software
22
Dimenso da
Qualidade do Software
Qualidade Qualidade
do + do
Processo Produto
24
Perspectivas Diferentes
Testes para provar que
algo no esta correto
Testes para
provar que algo
esta correto Cenrios Cenrios
Positivos Negativos
Estendidos Estendidos
Cenrios
Positivos
Comuns
Viso do
Viso do Analista
Analista de
de Testes
Sistemas
25
Perspectivas Diferentes
26
A Correta Definio dos Testes
27
Onde devemos aplicar Qualidade ?
Esforo
para obter
Qualidade
Tempo
28
Onde esto os Erros ?
Anlise e
Requisitos
Modelagem
56%
27%
Implementao
7%
Outros
10%
29
O Custo da
Propagao dos Defeitos
30
O Custo do Erro
Erros na produo so
extremamente caros.
31
Qualidade em Todo o Ciclo de
Desenvolvimento
Tempo
32
O Custo da Qualidade
Custo do
Projeto
Custo da Custo do
Qualidade Desenvolvimento
...
Custo da Custo da
Conformidade No-Conformidade
-Re-Revises;
-Re-Testes;
-Correo
oCdigo;
Custo da Custo da oDocumentao;
-Re-Estruturao;
Deteco de Defeitos Preveno de Defeitos
-Re-Distribuio verso;
-Revises -Metodologias; -Atrasos Cronogramas;
o Problema; -Treinamento; -Falhas da Produo;
o Requisitos; -Ferramentas; Existe uma co-relao
o Modelagem; -Polticas; entre os custos da
o Planos de Testes; -Procedimentos;
no-conformidade com os
o Scripts de Testes; -Planejamento;
-Inspeo de Cdigo; -Anlises; investimentos em preveno de
-Testes (1a. execuo); -Mtricas; defeitos. Quanto maior estes
-Auditorias; -Rel.de Qualidade; investimentos, menor a incidncia das
-Projetos de Inovao; no-conformidades.
33
Parte II
Processo de
Garantia de
Qualidade de
Software
34
Processo de
Garantia de Qualidade de Software
Maquiavel
35
Modelo de Qualidade em U
Testes de Verificao Testes de Validao
Modelo Disponibiliza
de Soluo
Negcios
1 8
Verificao Validao
de do
Negcios Aceite
Especificao de Sistema
Requisitos Especificado ou
Modificado
2 Clientes 7
3 4 5 6
Anlise
Modelo Requisitos e Implemen Testes Disponibili Evoluo
Negcios Design tao zao I
E
v Anlise
Modelo Implemen Disponibili
o Negcios
Requisitos e
Design tao
Testes
zao
Evoluo
II
L
u
Anlise
o Modelo Requisitos e Implemen Testes Disponibili Evoluo
Negcios Design tao zao III
Anlise
Modelo Requisitos e Implemen Testes Disponibili Produto
Negcios Design tao zao Final
37
Qualidade Iterativa
Iterao 1 Iterao 2 Iterao 3 ... Iterao N
Um novo Ciclo de
Qualidade em Tempo
cada nova
Iterao
38
Teste Incremental
Tempo
39
Fracassos nos
Processos de Qualidade
40
Benefcios do
Processo de Qualidade
41
Parte III
Garantindo a
Qualidade do
Processo
42
Garantindo a
Qualidade do Processo
Peter Drucker
43
Mtodos Estruturados de
Verificao
44
Impacto das Revises
45
Tipos de Revises
Criao Validao Divulgao
Irtoprlh
khg
][gfg~fl
kj
Irtoprlh
khg
Moderador Autor Irtoprlh
khg
Autor ][gfg~fl ][gfg~fl
kj kj
Documento
Documento Documento
Revisor
Grupo de Autor Grupo de
Reviso Acompanhamento
46
Executando Revises
47
Revises Eficientes
48
Exemplo de Revises
49
Reviso do Cdigo-Fonte
5-10 Moderado 20 %
11-20 Difcil 5%
50
Check-List
Um Instrumento de Verificao
51
Exemplo de Check-list
Check-List do Diagramas UML
Diagramas de Classes
- Todas as classes possuem nome e descrio adequados. OK No OK
Diagrama de Estado
- Todas as transies de estado possuem um servio ou evento associado. OK No OK
52
Testando cada Fase do
Processo de Software
Fase da Principais Principais Atividades da
Verificao Produtos Fase de Verificao
Modelo de Negcios; Revisar Contexto do Mercado e Necessidades Cliente;
Modelo
Anlise de Riscos; Revisar Riscos do Projeto;
de
Arvore de Deciso; Auditar Alternativas de Execuo do Projeto;
Negcios Estudo de Viabilidade; Revisar Estudo de Viabilidade do Projeto;
53
Critrio de Finalizao da
Reviso do Cdigo-Fonte
5-10 Moderado 20 %
11-20 Difcil 5%
54
Parte IV
Garantindo a
Qualidade do
Produto
55
Garantindo a
Qualidade do Produto
Henry Ford
56
Testes de
Software
57
Estratgias de Testes de Software
Caixa Caixa
Branca Preta
58
Caixa-Branca
Caminho A
Incio do Trmino do
Processamento Processamento
Caminho B
59
Caixa-Preta
Estmulos Resultados
Produzidos Gerados
60
Abordagens Fundamentais dos
Testes
61
Progressividade e Regressividade
dos Testes
Erro !
Cliente Cliente
Ocasional Ocasional
Cliente Cliente
VIP Normal
62
Categorias de
Testes
63
Categorias dos Testes
Cenrios de Testes
- simular saques acima do saldo disponvel;
- simular saques com carto vencido;
Depsit - avaliar se a durao do saque dura at 30 seg. num universo
o de 5 milhes de correntistas e 100 milhes de movimentao
bancria;
- simular saque com defeito no cash-dispenser;
- simular saque com impressora do fornecedor A, B e C;
Saque - avaliar se a senha do carto esta sendo requisitada antes e
depois da transao;
- simular 2 saques simultneos na mesma conta-corrente;
- simular saque na conta-poupana;
Transf - avaliar se a senha adicional e randmica esta sendo
ernci requisitada no incio da operao.
a - simular saques no Windows 95, 98, NT e 2000;
- avaliar se todas as telas possuem ajuda;
64
Organizando em Categorias
Funcional Segurana Usabilidade Performance
- simular saques acima do - simular saques com carto - avaliar se todas as telas - avaliar se a durao do saque
saldo disponvel; vencido; possuem ajuda; dura at 30 seg. num universo
- simular saque na conta- - avaliar se a senha do carto - avaliar se mensagens so de 5 milhes de correntistas e
poupana; esta sendo requisitada antes e claras e objetivas; 100 milhes de movimentao
- simular saque acima do depois da transao; - avaliar se o padro visual bancria;
valor do limite da conta; - avaliar se a senha adicional e mantido em todos os - garantir que manipulao
- simular saque com randmica esta sendo momentos; com dispositivos fsicos no
valores no mltiplos das requisitada no incio da - avaliar se todas as saque no ultrapassem 10
notas; operao; operaes possuem seg. da operao;
- simular saque com - simular saque noturno caminhos de fuga;
valores no mltiplos das acima do valor permitido;
notas;
- simular 2 saques simultneos - simular saque com - simular saque com defeito no - disparar processo de
na mesma conta-corrente; impressora do fornecedor A, B cash-dispenser; instalao emergencial;
- simular 10.000 saques e C; - simular saque com
simultneos; - simular saques no Windows defeito na impressora;
95, 98, NT e 2000; - simular saque com falha
- simular saque com de conexo com a central;
impressora do fornecedor - simular saque com queda
X, Y e Z; de energia;
65
Entendendo as Categorias
Portabilidade
Desempenho Recuperao
Saque
Configurao Usabilidade
Funcional
66
Priorizando as Categorias
Caractersticas da Aplicao Importncia
01. Funcional Essencial
02. Desempenho Mdio Impacto
03. Confiabilidade/Disponibilidade Alto Impacto
04. Segurana Essencial
05. Carga e Concorrncia Alto Impacto
06. Usabilidade Mdio Impacto
07. Compatibilidade Essencial
08. Portabilidade Baixo Impacto
09. Contingncia Alto Impacto
10. Instalao Mdio Impacto
11. Distribuio Alto Impacto
12. Recuperao Alto Impacto
67
Casos de Testes
68
Casos de Testes de Caixa-Branca
A G H I J L Caso de Teste 1
Caso de Teste 2
A B I L J
Caso de Teste 3
A B C D E
Caso de Teste 4
A B F E
Abordagem Caixa-Branca
C D
B E
A
Incio do F
Processamento Trmino do
Processamento
G H I J L
69
Casos de Testes de Caixa-Preta
Requisito B
70
Obtendo Casos de
Testes
71
Mtodo de Decomposio de
Requisitos
Sistema de Vendas
Cenrio Primrio
Cliente realiza pagamento em dinheiro.
Cenrios Alternativos
Cliente realiza pagamento com cheque.
Cliente realiza pagamento com carto de crdito.
Realizar
Cliente realiza pagamento parcelado.
Pagamentos
Cliente realiza pagamento da ltima parcela.
Cliente realiza pagamento adiantado.
Cliente realiza pagamento em atraso.
Cenrios de Exceo
Cliente realiza pagamento com carto invlido.
Cliente realiza pagamento com cheque bloqueado.
Cliente realiza pagamento com cheque e histrico de mal pagador.
72
Mtodo de Anlise de Documentos
Diagrama de
Atividades Casos de Testes
A
Identificados
Diagrama de
Casos de Uso Cenrios Positivos
A E
B A F E
Cenrios Negativos
F
C
A B
D A C
A D
73
Mtodo de Anlise de Documentos
Diagrama de Casos de Testes
Estados Identificados
Doao
Destruio
Cenrios Cenrios
Compra Positivos Negativos
1 6
Catalogao Refugado
1 2
1 1 3
Classificao Refugo
1 2 2 4
2 5 2 3 3 5
Recuperao
Disponvel Restaurao
3 4 4 6
4 2 5
Emprstimo Disponibiliza Restaurar
4 5 6 4
3 4 5 6
Devoluo
Emprestado Anlise
6
74
Estgios dos Testes
75
Estgios dos Testes de Software
Fase da Categorias de Caractersticas da
Validao Testes Aplicada Fase de Validao
Estrutura Interna; Estratgia Caixa-Branca;
Teste de Funcionalidade; Testam partes do software;
Teste Usabilidade Requer conhecimento da estrutura interna;
de Unidade Segurana; Executado pelo desenvolvedor ou profissional de teste.
Baixo
Nvel Interfaces; Estratgia de Caixa-Branca;
Teste de Dependncias entre Testam integraes entre partes do software;
Requer conhecimento da arquitetura interna do software;
Integrao Componentes;
Executado pelo desenvolvedor ou profissional de teste.
76
Teste de Unidade
Unidade
F Unidade Unidade Unidade
Unidade J H J
H
77
Teste de Integrao
Integrao Nvel 1 Integrao Nvel 2 Integrao Nvel 3
S
T S
S
S S
S S
S S
T S S S S
T S S
S S S S S
S
S S
T S S
T
S S S
S S
T S S S S
S S S
S
S S S
S T S S
T S
S S
S
S S
S
S
S Componentes de Software
T S S
T Componentes de Testware
S
78
Teste de Sistema
<Simulador>
<< Batch >>
Sistema
A
Sistema
D
<< On-Line >>
<< Batch >>
79
Teste de Aceite
Aceite da Soluo Distribuio
80
Testes de Software nos vrios
Ambientes
Em Em Em Em
Desenvolvimento Teste Homologao Produo
81
Parte IV
Mtricas de
Qualidade de
Software
82
Mtricas de Qualidade de Software
Aristteles
83
Indicadores de Cobertura
84
Critrios de Cobertura
Cobertura Criticidade dos Sistemas Cobertura
Requisitos Cdigo-Fonte
Alta
15 % Criticidade
90 % 90 %
25 %
80 %
75 %
70 %
Mdia
60 % Criticidade
85 % 75 %
Baixa
Criticidade
85
Indicadores de Eficincia dos Testes
Eficincia
da Total de Erros da Validao + Total de Erros em Produo
Verificao Total de Linhas do Cdigo-Fonte ou Total de Requisitos
Eficincia
da Total de Erros da Validao
Validao Total de Erros da Validao + Total de Erros em Produo
86
Distribuio de
Defeitos
87
Distribuio de Defeitos por Etapas
80
72
60 57
39
40 34
18
20 15 15 13 11
0
Modelagem de Negcios Requisitos Anlise e Modelagem
Implementao Teste de Unidades Teste de Integrao
Teste de Sistema Aceite Produo
88
Distribuio de Defeitos por
Categoria
Falha Esttica
41% Falha Ambiente
15%
Erro Fatal
8%
Falha Operacional
10% Funcionamento
Incorreto
No Funcional 21%
5%
89
Distribuio de Defeitos por
Prioridade
20
15
10
90
Distribuio de Defeitos por
Fornecedor
Fornecedor E
Fornecedor F
20%
20%
Fornecedor D
4%
Fornecedor A
16%
Fornecedor C Fornecedor B
29% 11%
91
Distribuio de Defeitos por
Componentes
Hardware A
21%
Componente D Hardware B
35% 11%
Componente A
5%
Componente B
16%
Componente C
12%
92
Distribuio de Defeitos por Idade
40
35
30
25
20
15
10
5
0
1-5 dias 6-10 dias 11-15 dias 16-20 dias
93
Comportamento do Defeito
45
40
35
30
Novos
25
20 Em Aberto
15 Fechados
10
0
#1 #2 #3 #4 #5 #6 #7 #8
94
Ferramentas de
Anlise
95
Histrico de Informaes
Produtividade
Troca
20 de
Tecnologia
Retrabalho
15
10
96
Diagrama de Causa e Efeito
Falha na Implantao Homologao
Automao Emergencial Manual
dos Testes
Erros
no
Ambiente
de
Produo
Ausncia de Falha no
Testes Planejamento
Regressivos dos Testes
97
Diagrama de Paretto
45 %
40 %
33 %
30 %
20 %
13 %
7%
10 %
2%
98
Para Refletir ...
99
100
??? Duvidas ???
Encaminhar para
Alexandre Bartie
alexandre_bartie@hotmail.com
101