Exercício motivacional
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 2
Qualidade depende da perspectiva...
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 3
Atributos de qualidade
Atributo 1
Atributo 2
Atributo 3
Atributo 4
Atributo 5
Atributo 6
Qualidade depende da perspectiva...
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 4
Atributos de qualidade
Atributo 1
Atributo 2
Atributo 3
Atributo 4
Atributo 5
Atributo 6
Priorizou Gostaria
Baixa Qualidade (para o cliente)
Qualidade depende da perspectiva...
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 5
Atributos de qualidade
Atributo 1
Atributo 2
Atributo 3
Atributo 4
Atributo 5
Atributo 6
Priorizou Gostaria
Alta Qualidade (para o cliente)
Frases para pensar...
• “Fazer é só uma vez, manter é para sempre”
• “Você pode fazer certo ou fazer de novo”
• “Não ter tempo para pensar em qualidade agora significa ter tempo para refazer o produto no futuro”
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 6
Evolução da Garantia da Qualidade
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 7
Anos 50 e 60
O próprio
desenvolvedor avalia a
qualidade dos seus
produtos A partir dos anos 70
Normas e equipes
próprias (SQA) para a
avaliação da qualidade
Responsabilidades do desenvolvedor x SQA
• Desenvolvedor
– Conceber produtos de qualidade
• SQA (Software Quality Assurance)
– Apoiar às equipes de desenvolvimento
– Garantir que os produtos gerados pela equipe de desenvolvimento de fato têm qualidade
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 8
Tarefas do SQA
• Preparar o plano de SQA– Identificar as normas a serem seguidas– Identificar as auditorias a serem feitas
• Participar na definição do processo• Auditar as atividades de ES para assegurar
compatibilidade com o processo definido• Auditar os produtos gerados para assegurar a sua
compatibilidade com os padrões definidos• Reportar as não conformidades encontradas• Assegurar que as correções necessárias serão de fato
feitas
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 9
Medição
• Por que medir?
• O que significa uma medição?
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 10
Medição é o caminho para maturidade!
Medição
• Medições permitem:
– Aumentar a visibilidade do produto, projeto ou processo
– Tomadas de decisão objetivas (“eu acho” x “eu tenho certeza”)
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 11
ProdutoProcesso
2
53
8
9
74
Projeto
Baseline de medições
• Medições isoladas usualmente são inúteis
• A partir de diversas medições em contextos semelhantes é possível
– Estabelecer uma baseline
– Comparar as novas medições com a baseline
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 12
Medindo pessoas?
• Importante– Não utilizar medições para punir ou premiar
indivíduos!!!
– Medições devem ser utilizadas para aprimorar o produto, projeto ou processo
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 13
O que medir?
• Existe uma técnica que nos apoia nessa tarefa
– Goal-Question-Metric (GQM)
• Algoritmo
1. Definir os objetivos de negócio(Goal)
2. Definir questões que permitem verificar se cada objetivo está sendo atingido (Question)
3. Definir medidas que apoiam na resposta de cada questão (Metric)
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 14
Exemplo: processo de Gerência de Configuração
• O que medir em Gerência de Configuração?
– A efetividade do processo
– Os custos associados
– Os benefícios obtidos
• Sugestão:
– Aplicar GQM
– Começar a medir antes demodificar o processo
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 15
Exemplo: processo de Gerência de Configuração
• Métricas– Custo de operação– Número de sistemas/ICs sob gerência de configuração– Número de solicitações de modificação por mês– Tempo gasto para resolução de solicitações de modificação– Carga de disco/memória/processamento do servidor de GC– Densidade de defeitos por severidade– Número de achados na auditoria de GC– Tempo gasto para resolução dos achados de auditoria– Intervalo entre releases– Número de releases corretivas
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 16
Como analisar as métricas obtidas?
• É possível definir um limite (threshold) para a métrica em questão
– Se a métrica passar desse limite, é necessário fazer uma análise de causa
• Qual seria um limite apropriado?
– Que tal deixar a própria história determinar esse limite?
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 17
Processos estáveis x capazes
• Nem sempre o processo “mais rápido” é um processo estável ou capaz
– Um processo estável permite que o desempenho futuro seja previsível em função do desempenho passado
– Um processo capaz é um processo estável em que o desempenho atende aos requisitos do cliente
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 18
Processos estáveis x capazes
• Problema: – Ir em até 20 minutos de Icaraí para São Francisco
• Processos– Ir de carro
– Ir de ônibus
– Ir de bicicleta
– Ir a pé
• Qual é o processo mais rápido num cenário ótimo?
• Quais processos são estáveis?
• Quais processos são capazes?Leonardo Murta Garantia da Qualidade, Medição e Melhoria 19
Processos estáveis x capazes
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 20
tempo
pro
ba
bili
da
de
20 min
tempo
pro
ba
bili
da
de
20 min
tempo
pro
ba
bili
da
de
20 min
tempo
pro
ba
bili
da
de
20 min
carro ônibus
a pé bicicleta
estável e capaz
Gráfico de controle
• O gráfico de controle é um artefato que nos permite analisar a estabilidade de um processo
• Foi criado em 1920 por Walter Shewhart
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 21
0,0
2,0
4,0
6,0
8,0
10,0
12,0
1 3 5 7 9 11 13 15 17 19
+3σ
+2σ
+1σ
μ
-1σ
-2σ
-3σ
Solicitações corretivas
Algoritmo para construção do gráfico de controle
1. Coletar uma série temporal da métrica desejada
2. A partir da série temporal da métrica desejada calcular
1. Média:
2. Desvio-padrão:
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 22
n
iix
n 1
1
n
iix
n 1
2)(1
1
Algoritmo para construção do gráfico de controle
3. Desenhar um gráfico com linhas delimitando
– Média
– 1 desvio-padrão para cima e para baixo da média
– 2 desvios-padrão para cima e para baixo da média
– 3 desvios-padrão para cima e para baixo da média
4. Desenhar os pontos da série desejada e conectar os pontos via uma linha
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 23
Exemplo – número de solicitações corretivas por semana
• Passo 1 – coleta de métricas
• Passo 2 – cálculo de média e desvio padrão
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 24
Semana 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Solicitações corretivas
5 6 5 9 6 5 4 6 7 5 6 5 5 7 6 3 4 5 8 6
μ 5,65
σ 1,39
Exemplo – número de solicitações corretivas por semana
• Passos 3 e 4 – desenho do gráfico de controle
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 25
Semana 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20Solicitações corretivas
5 6 5 9 6 5 4 6 7 5 6 5 5 7 6 3 4 5 8 6
+3σ 9,8 9,8 9,8 9,8 9,8 9,8 9,8 9,8 9,8 9,8 9,8 9,8 9,8 9,8 9,8 9,8 9,8 9,8 9,8 9,8+2σ 8,4 8,4 8,4 8,4 8,4 8,4 8,4 8,4 8,4 8,4 8,4 8,4 8,4 8,4 8,4 8,4 8,4 8,4 8,4 8,4+1σ 7,0 7,0 7,0 7,0 7,0 7,0 7,0 7,0 7,0 7,0 7,0 7,0 7,0 7,0 7,0 7,0 7,0 7,0 7,0 7,0μ 5,7 5,7 5,7 5,7 5,7 5,7 5,7 5,7 5,7 5,7 5,7 5,7 5,7 5,7 5,7 5,7 5,7 5,7 5,7 5,7
-1σ 4,3 4,3 4,3 4,3 4,3 4,3 4,3 4,3 4,3 4,3 4,3 4,3 4,3 4,3 4,3 4,3 4,3 4,3 4,3 4,3-2σ 2,9 2,9 2,9 2,9 2,9 2,9 2,9 2,9 2,9 2,9 2,9 2,9 2,9 2,9 2,9 2,9 2,9 2,9 2,9 2,9-3σ 1,5 1,5 1,5 1,5 1,5 1,5 1,5 1,5 1,5 1,5 1,5 1,5 1,5 1,5 1,5 1,5 1,5 1,5 1,5 1,5
Exemplo – número de solicitações corretivas por semana
• Passos 3 e 4 – desenho do gráfico de controle
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 26
0,0
2,0
4,0
6,0
8,0
10,0
12,0
1 3 5 7 9 11 13 15 17 19
+3σ
+2σ
+1σ
μ
-1σ
-2σ
-3σ
Solicitações corretivas
Análise do gráfico de controle
• Assumindo uma distribuição normal para as medidas coletadas
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 27
Intervalo Probabilidade do intervalo
Eventos esperados fora do intervalo (medidas diárias)
μ ± 1σ 68% Dois por semana
μ ± 2σ 95% Um a cada três semanas
μ ± 3σ 99,7% Um por ano
Análise do gráfico de controle
• Causa comum de variação
– Dentro dos limites de probabilidade
– Existe em todo processo estável e previsível
• Causa especial de variação
– Foge os limites de probabilidade
– Precisa ser analisada e evitada para que o processo possa ser estável e previsível
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 28
Análise do gráfico de controle
• Quando o comportamento do gráfico foge do esperado...
– É necessário achar uma causa atribuível
– O processo pode estar instável
• Situações a serem analisadas
– 1 evento além de μ ± 3σ
– 2 de 3 eventos sucessivos do mesmo lado além de μ ± 2σ
– 4 de 5 eventos sucessivos do mesmo lado além de μ ± 1σ
– 8 eventos sucessivos do mesmo lado de μ
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 29
-5,0
0,0
5,0
10,0
15,0
20,0
1 3 5 7 9 11 13 15 17 19
+3σ
+2σ
+1σ
μ
-1σ
-2σ
-3σ
Solicitações corretivas
Análise do gráfico de controle
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 30
-2,0
0,0
2,0
4,0
6,0
8,0
10,0
12,0
14,0
16,0
1 3 5 7 9 11 13 15 17 19
+3σ
+2σ
+1σ
μ
-1σ
-2σ
-3σ
Solicitações corretivas
Análise do gráfico de controle
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 31
Processo instável?
Causa atribuível: adoção
de testes automatizados
Ação: Contextualizar a
medição com e sem os
testes automatizados
Análise do gráfico de controle
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 32
0,0
2,0
4,0
6,0
8,0
10,0
12,0
14,0
1 2 3 4 5 6 7 8 9
+3σ
+2σ
+1σ
μ
-1σ
-2σ
-3σ
Solicitações corretivas
0,0
1,0
2,0
3,0
4,0
5,0
6,0
7,0
8,0
1 2 3 4 5 6 7 8 9 10 11
+3σ
+2σ
+1σ
μ
-1σ
-2σ
-3σ
Solicitações corretivas
Processos estáveis, antes e depois da
adição de testes automatizados
Modelos de maturidade
• Crença principal: A qualidade do produto está intimamente ligada à qualidade do processo
Leonardo Murta 33Garantia da Qualidade, Medição e Melhoria
Modelos de maturidade
• Servem para guiar empresas na busca por qualidade
• Não determinam como algo deve ser feito, mas sim o que deve ser feito
• Não são incompatíveis com métodos ágeis
– Existem empresas que usam XP e SCRUM e já avaliaram em algum modelo de maturidade
• Principais modelos em uso no Brasil
– CMMI
– MPS.BR
Leonardo Murta 34Garantia da Qualidade, Medição e Melhoria
CMMI
• Duas perspectivas principais
– Contínua: mede a capacidade de processos individuais
– Estagiada: mede a maturidade da organização como um todo
• Modelo com 22 áreas de processo divididas em 5 níveis de maturidade
Leonardo Murta 35Garantia da Qualidade, Medição e Melhoria
MPS.BR
• Modelo brasileiro semelhante ao CMMI– Foco nas pequenas e médias empresas brasileiras
– Menor custo para implementação e avaliação
– Mais degraus intermediários, ajudando na melhoria progressiva
• Modelo com 19 processos e 9 atributos de processo divididos em 7 níveis de maturidade
• Mapeamento para o CMMI– Nível 5 = A
– Nível 4 = B
– Nível 3 = C
– Nível 2 = F
Leonardo Murta 36Garantia da Qualidade, Medição e Melhoria
MPS.BR
• Nível G – Parcialmente Gerenciado– Gerência de Projetos– Gerência de Requisitos– Atributo: O processo é executado– Atributo: O processo é gerenciado
• Nível F – Gerenciado– Aquisição– Gerência de Configuração– Garantia de Qualidade– Gerência de Portifólio de Projetos– Medição– Atributo: Os produtos de trabalho do processo são gerenciados
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 37
MPS.BR
• Nível E – Parcialmente Definido– Avaliação e Melhoria do Processo Organizacional– Definição do Processo Organizacional– Gerência de Recursos Humanos– Gerência de Reutilização– Atributo: O processo é definido– Atributo: O processo está implementado
• Nível D – Largamente Definido– Desenvolvimento de Requisitos– Integração do Produto– Projeto e Construção do Produto– Validação– Verificação
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 38
MPS.BR
• Nível C – Definido– Desenvolvimento para Reutilização
– Gerência de Decisões
– Gerência de Riscos
• Nível B – Gerenciado Quantitativamente– Atributo: O processo é medido
– Atributo: O processo é controlado
• Nível A – Em Otimização– Atributo: O processo é objeto de melhorias e inovações
– Atributo: O processo é otimizado continuamente
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 39
Principais Referências Bibliográficas
• Anne Hass, 2003. Configuration Management Principles and Practices, Boston, MA, Pearson Education, Inc.
• Florac, W. A., Carleton, A. D., 1999. Measuting theSoftware Process. Addison Wesley
• Pressman, R. S., 2004. Software Engineering: A Practitioner’s Approach. 6 ed. McGraw-Hill.
• SOFTEX, 2009. MPS.BR – Melhoria de Processo do Software Brasileiro – Guia Geral. http://www.softex.br/mpsbr
Leonardo Murta Garantia da Qualidade, Medição e Melhoria 40
Top Related