SlideShare uma empresa Scribd logo
1 de 75
Metodologia de Análise e Solução de Problemas – MASP
15 a 18/dez/2010
20 h
Roberto Pinho
robertodepinho@gmail.com
Contém material de terceiros.Ver indicações de fontes no final.1
2
 “Não se pode gerenciar o que não se pode medir”.
Tom De Marco
 “Se você não sabe para onde você quer ir, qualquer caminho
você pode seguir. Se você não sabe onde você está, um
mapa não vai ajudar!”.
Roger Pressman
 É mais fácil medir sacas de
feijão…
 Outros temas espinhosos:
Evolução da ciência
Desempenho de pesquisadores
6
 Uma métrica é a medição de um atributo
(propriedades ou características ) de uma
determinada entidade (produto, processo ou
recursos). Exemplos:
 Tamanho do produto de software (ex: Número de Linhas
de código)
 Número de pessoas necessárias para implementar um
caso de uso
 Número de defeitos encontrados por fase de
desenvolvimento
7
 Esforço para a realização de uma tarefa
 Tempo para a realização de uma tarefa
 Custo para a realização de uma tarefa
 Grau de satisfação do cliente (ex: adequação do produto
ao propósito, conformidade do produto com a
especificação)
8
 Entender e aperfeiçoar o processo de desenvolvimento
 Melhorar a gerência de projetos e o relacionamento com
clientes
 Reduzir frustrações e pressões de cronograma
 Gerenciar contratos de software
 Indicar a qualidade de um produto de software
 Avaliar a produtividade do processo
9
 Avaliar os benefícios (em termos de produtividade e
qualidade) de novos métodos e ferramentas de engenharia
de software
 Avaliar retorno de investimento
 Identificar as melhores práticas de desenvolvimento de
software
 Embasar solicitações de novas ferramentas e treinamento
 Avaliar o impacto da variação de um ou mais atributos do
produto ou do processo na qualidade e/ou produtividade
10
 Formar uma baseline para estimativas  Melhorar a
exatidão das estimativas
 Oferecer dados qualitativos e quantitativos ao
gerenciamento de desenvolvimento de software realizar
melhorias em todo o processo de desenvolvimento de
software
 Ferreira, Cassiolato e Gonzales, 2009
14
 Facilmente calculada, entendida e testada
 Passível de estudos estatísticos
 Expressa em alguma unidade
 Obtida o mais cedo possível no ciclo de vida do software
 Passível de automação
 Repetível e independente do observador
 Sugere uma estratégia de melhoria
 Baixo custo
15
 Uma métrica deve ser:
 Válida: quantifica o que queremos medir
 Confiável: produz os mesmos resultados dadas as mesmas
condições
 Prática: barata, fácil de computar e fácil de interpretar
 Dois contextos para medição de software
 Processo: ex. produtividade
 Produto: ex. qualidade
19
 Métricas diretas (fundamentais ou básicas)
 Medida realizada em termos de atributos observados
(usualmente determinada pela contagem)
 Ex.: custo, esforço, no. linhas de código, capacidade de
memória, no. páginas, no. diagramas, etc.
 Métricas indiretas (derivadas)
 Medidas obtidas a partir de outras métricas
 Ex.: complexidade, eficiência, confiabilidade, facilidade de
manutenção
20
 Métricas orientadas a tamanho
 São medidas diretas do tamanho dos artefatos de
software associados ao processo por meio do qual o
software é desenvolvido.
 Ex.: esforço, custo, no. KLOC, no. páginas de
documentação
 Métricas orientadas por função
 método para medição de software do ponto de vista do
usuário, determinando de forma consistente o tamanho e
a complexidade de um software.
21
 Métricas de produtividade
 Concentram-se na saída do processo de engenharia de
software.
 Ex.: no. de casos de uso/iteração.
 Métricas de qualidade
 Oferecem uma indicação de quanto o software se adeqüa
às exigências implícitas e explícitas do cliente.
 Ex.: erros/fase
22
 Métricas técnicas
 Concentram-se nas características do software e não no
processo por meio do qual o software foi desenvolvido.
 Ex.: complexidade lógica e grau de manutenibilidade
 estratégicos
 de processo
Produtividade ou eficiência
Qualidade ou eficácia
Capacidade
 de projeto
38
 Segundo Humphrey, são quatro os principais
papéis de Medições de Software:
Processos,
Produtos e
Serviços de
Software
Entender
Avaliar Prever
Controlar
39
 Entender
 Métricas ajudam a entender o comportamento e
funcionamento de processos, produtos e serviços de
software
 Avaliar
 Métricas podem ser utilizadas para tomar decisões e
determinar o estabelecimento de padrões, metas e
critérios de aceitação
40
 Controlar
 Métricas podem ser utilizadas para controlar processos,
produtos e serviços de software
 Prever
 Métricas podem ser utilizadas para prever valores de
atributos
41
 Ex: Comparar a produtividade de engenheiros em
termos de linha de código
 Está sendo utilizado a mesma unidade de medida?
▪ O que é uma linha de código válida?
 O contexto considerado é o mesmo?
▪ Todos os engenheiros são familiarizados com a linguagem de
programação?
 O que se quer realmente é o tamanho do código?
▪ E a qualidade do código?
42
 Como o resultado será interpretado?
▪ Produtividade média de um engenheiro?
 O que se quer com o resultado?
▪ Comparar a produtividade do processo de software?
 Há impacto no trabalho?
▪ Os programadores passam a escrever código mais
longo?
“Princípio da Incerteza de Heisenberg”
e “um proxy é um proxy.”
46
 Usado para definir o conjunto de métricas a ser
coletado
 Proposto por:
 Basili and Rombach’s, Goal-Question-Metrics Paradigm,
IEEETransactions on Software Engineering, 1988.
 Baseia-se no fato de que deve existir uma
necessidade clara associada a cada métrica
47
 Inicia-se com a identificação dos interessados na medição.
 Com base nos interessados, estabelecem-se os principais
objetivos da medição para a organização, o projeto ou uma
tarefa específica. Ex: reduzir defeitos, aumentar
produtividade, etc.
48
 A partir dos objetivos, geram-se perguntas cujas respostas
dirão se os objetivos foram ou não alcançados (ex: Qual a
taxa de defeito atual? Qual a taxa de defeito após a
implantação do novo processo?)
 A partir das perguntas, definem-se métricas: que dados
serão necessários? Quais os formatos? Como coletar
(fórmula e processo)? Onde armazenar e como utilizar?
49
Goal 1 Goal 2
Questão 1 Questão 2 Questão 3 Questão 4
Métrica 1 Métrica 2 Métrica 3 Métrica 4 Métrica 5
50
 Objetivo: Assegurar que todos os defeitos são
corrigidos antes do software ser liberado para uso.
 Perguntas:
 Quantos defeitos temos atualmente?
 Qual o status de cada defeito?
 Qual a cobertura dos testes?
51
 Métricas:
 Número de defeitos
 Número de defeitos por status
 Número de casos de testes planejados x executados
 Número de requisitos testados
52
 Devem estar associados a um período de
tempo
 Aumentar a produtividade em 20% no prazo de 12
meses
 Facilita o acompanhamento e a tomada de ações
para viabilizar objetivo  pois existe um prazo!!!
53
 Estudos indicam que objetivos muito complexos e
de longo prazo podem causar impacto na
motivação
 Objetivos menores, a curto prazo, permitem que as
pessoas visualizem o progresso e alcancem sucessos
 Com o tempo e com a maturidade da organização, os
objetivos devem se tornar mais complexos e mais
desafiadores
54
 Seja realista e prático
 Considere o processo e o ambiente de
desenvolvimento atual
 Não selecione métricas em que os dados sejam difíceis de
serem coletados na sua realidade
 Comece com o que for possível
 Utilize a abordagem incremental
 Com o tempo, com os benefícios, mais dados estarão
disponíveis...
55
 Objetivo: Aumentar satisfação do cliente
 Que atributos dos nossos produtos e serviços são mais
importantes para os nossos clientes?
Aspectos Relevantes de Produto e Serviço para Clientes
0
5
10
15
20
Qualidade Custo Prazo Visibilidade do
Progresso
Flexbilidade p/
mudanças
Aspectos Relevantes Para os Clientes
Clientesque
ConsideramoAspecto
# Clientes
56
 É um processo cíclico que envolve:
 Planejar
 Medir
 Analisar os dados
 Tomar decisões baseadas na análise
 Implementar as decisões
 Voltar a planejar e medir
57
 Um processo de medição deve:
 Fornecer uma base para melhoria contínua do
processo
 Quantificar a qualidade e produtividade
 Estar integrado com o ciclo de vida de
desenvolvimento
 Medir o impacto de vários métodos, ferramentas,
e técnicas de melhorias
58
 Medições devem ser usadas para medir
processos, não pessoas
 O processo de medição deve ter objetivos
claros e bem-definidos
 O processo de medição deve ser fortemente
acoplado com o processo de gerência da
qualidade e integrado dentro de planos e
orçamentos
59
 O processo de coleta de dados deve ser
simples, e ferramentas automáticas para
extração de dados devem ser usadas
 O processo de medição é contínuo e sujeito a
melhoria
60
 Escolha um conjunto adequado de métricas
 Relacione as métricas ao processo de tomada de decisão
(suportado pela alta administração)
 Avalie processos e não pessoas (explique os objetivos da
medição)
 Não use as métricas para punir
 Envolva várias pessoas na seleção e formulação das métricas
 Estabeleça alta prioridade (recursos, ferramentas, etc.)
61
 Integre o programa ao desenvolvimento de software
 Alinhe aos objetivos de negócio
 Padronize e documente
 Compartilhe as métricas obtidas
 Institucionalize como parte da cultura da organização
 Integre com o programa de melhorias (ilustre o progresso e
as melhorias obtidos a partir do programa)
 Ofereça planos de ação
62
 Para cada objetivo técnico o plano contém informação
sobre:
 POR QUE as métricas satisfazem o objetivo
 QUAIS métricas serão coletadas, como elas serão definidas, e
como serão analisadas
 QUEM fará a coleta, quem fará a análise, e quem verá os
resultados
 COMO será feito: que ferramentas, técnicas e práticas serão
usadas para apoiar a coleta e análise das métricas
 QUANDO no processo e com que freqüência as métricas serão
coletadas e analisadas
 ONDE os dados serão armazenados
63
Definir e documentar para cada métrica :
 Objetivos
 Público alvo da métrica
 Quem precisa da informação?
 Quem irá usar as informações fornecidas pela métrica?
 Uma métrica útil sempre tem um cliente
64
 Procedimento de coleta e armazenamento
 Quando coletar? Periodicamente ou por eventos?
 Quem é o responsável por coletar e armazenar?
 Onde armazenar? Quando armazenar ?
 Como coletar o dado? A partir de que ferramentas e
produtos de trabalho do projeto / organização?
 Avaliar métricas que podem acarretar em muito
esforço e pouco valor
 Buscar automatizar a coleta dos dados (Ferramentas
para controle de tempo, helpdesk, controle de versão,
gestão de requisitos)
65
 Procedimentos de Análise
 Necessários para
▪ Entendimento da métrica
▪ Avaliação (critério para tomada de decisão)
 Seleção dos métodos e ferramentas de análise:
▪ Como a métrica será visualmente apresentada?
▪ Gráficos de barras, linhas, colunas, pizza, histogramas,
tabelas...
66
 A equipe de desenvolvimento deve ser envolvida sempre
que necessário
 Para métricas de controle:
▪ Estabelecimento de limites de controle
▪ Padrões ou requisitos de mercado de performance
▪ Média de mercado para custo da baixa qualidade = 4%
 Temos que correr atrás dessa meta!!!
67
Executar as atividades com base no
planejamento realizado
Utilizar o plano de medição como base!!
Tomar ações com base
nos resultados
Acompanhar os
itens de ação
Comunicar os
resultados ao
público alvo de
cada métrica
Ajustar o processo com melhorias a partir
dos resultados de sua execução:
Inicialmente vai ser difícil definir todos
esses procedimentos da melhor forma
Eles devem ser melhorados a medida
em que o processo é executado
Novos objetivos e métricas surgem...
Melhores forma de coleta são
identificadas
As orientações para realização da
análise vão sendo refinadas a medida
que conhecemos melhor os dados
68
 Armazenar os resultados
 Tanto os dados, como os resultados, as ações
tomadas, tudo que for relevante
 Toda informação que contextualize a métrica ou
que forneça alguma informação adicional
Dados históricos não são
apenas números
69
 Elaborar um política de controle de acesso
 Apenas pessoas autorizadas devem ter acesso a certos
tipos de dados
 Evitar o uso indevido dos dados
 Avaliação de pessoas
 Comparação entre projetos, grupos ou áreas da empresa
de forma indevida
 Publicação de informações que foram fornecidas de forma
confidencial
75
 As atividades de medição devem ser guiadas por objetivos
 Plano de Métricas detalham como criar programas de
medição para atender a objetivos técnicos específicos
 Tendências recentes: evolução de métricas ou modelos
específicos para amplos programas organizacionais de
métricas
76
Falta de comprometimento da alta gerência
Medir custa caro
Os maiores benefícios vêm a longo prazo
Má utilização das métricas
Grande mudança cultural necessária
Dificuldade de estabelecer medições apropriadas e úteis
Interpretações dos dados realizadas de forma incorreta
Obter o comprometimento de todos os envolvidos e impactados
Estabelecer um programa de medições é fácil, o difícil é manter!!
77
Foco desde os estágios iniciais da melhoria de processo
Medição faz parte do TODO
Começar Pequeno
Selecionar um conjunto coerente
É importante definir cada detalhe da métrica
Descartar o que não estiver sendo útil
Fornecer as informações corretas, para as pessoas certas
“Agregar valor”, ao invés de gerar apenas dados
78
Incentivar a equipe de desenvolvimento a fazer uso das métricas
Envolvimento de todos os impactados
Estabelecer as expectativas
Educação e Treinamento
Ganhar Confiança
Adotar uma Abordagem Evolucionária
Compreender que a Adoção leva Tempo
 http://www.andresandri.com.br/artigos/GQM.pp
t
 http://homes.ieu.edu.tr/~oalbayrak/ISE_318/met
rics.ppt
 http://www.din.uem.br/~emhuzita/PESIII/introd
ucao-a-metricas-de-software.ppt
 http://www.din.uem.br/~emhuzita/PESIII/introd
ucao-a-metricas-de-software.ppt
 http://www.planejamento.gov.br/secretarias/upl
oad/Arquivos/spi/publicacoes/100324_indicador
es_programas-guia_metodologico.pdf

Mais conteúdo relacionado

Mais procurados

Oficina analise-e-solucao-de-problemas
Oficina analise-e-solucao-de-problemasOficina analise-e-solucao-de-problemas
Oficina analise-e-solucao-de-problemas
Leonardo
 
Escopo ou desejo como atender com sucesso gerenciamento de projetos
Escopo ou desejo como atender com sucesso gerenciamento de projetosEscopo ou desejo como atender com sucesso gerenciamento de projetos
Escopo ou desejo como atender com sucesso gerenciamento de projetos
Mauricio Santos
 
Indicadores Em Compras
Indicadores Em ComprasIndicadores Em Compras
Indicadores Em Compras
InformaGroup
 

Mais procurados (20)

Aula4
Aula4Aula4
Aula4
 
Aula9 TEES UFS Gestao de Configuração de SW
Aula9 TEES UFS  Gestao de Configuração de SWAula9 TEES UFS  Gestao de Configuração de SW
Aula9 TEES UFS Gestao de Configuração de SW
 
Verificação Independente
Verificação IndependenteVerificação Independente
Verificação Independente
 
Oficina analise-e-solucao-de-problemas
Oficina analise-e-solucao-de-problemasOficina analise-e-solucao-de-problemas
Oficina analise-e-solucao-de-problemas
 
Apresentação | Gestão de QA | Modelo Human driven | Qualidade de software | ...
Apresentação | Gestão de QA |  Modelo Human driven | Qualidade de software | ...Apresentação | Gestão de QA |  Modelo Human driven | Qualidade de software | ...
Apresentação | Gestão de QA | Modelo Human driven | Qualidade de software | ...
 
2012 10-22 - aula 11 - dominando o processo
2012 10-22 - aula 11 - dominando o processo2012 10-22 - aula 11 - dominando o processo
2012 10-22 - aula 11 - dominando o processo
 
QUALIDADE DE SOFTWARE
QUALIDADE DE SOFTWAREQUALIDADE DE SOFTWARE
QUALIDADE DE SOFTWARE
 
Quality assurance e a hitória da falta de qualidade
Quality assurance e a hitória da falta de qualidadeQuality assurance e a hitória da falta de qualidade
Quality assurance e a hitória da falta de qualidade
 
ENGENHARIA DE MÉTODOS 2014_2 AULA 2_3_4.pdf
ENGENHARIA DE MÉTODOS 2014_2 AULA 2_3_4.pdfENGENHARIA DE MÉTODOS 2014_2 AULA 2_3_4.pdf
ENGENHARIA DE MÉTODOS 2014_2 AULA 2_3_4.pdf
 
DMAIC - Ferramentas para projetos Six Sigma - Lean
DMAIC - Ferramentas para projetos Six Sigma - LeanDMAIC - Ferramentas para projetos Six Sigma - Lean
DMAIC - Ferramentas para projetos Six Sigma - Lean
 
Análise de Valor Agregado no Controle de Projetos: Sucesso ou Fracasso?
Análise de Valor Agregado no Controle de Projetos: Sucesso ou Fracasso?Análise de Valor Agregado no Controle de Projetos: Sucesso ou Fracasso?
Análise de Valor Agregado no Controle de Projetos: Sucesso ou Fracasso?
 
Slideshare green belt
Slideshare green beltSlideshare green belt
Slideshare green belt
 
Ferramentas da Qualidade
Ferramentas da QualidadeFerramentas da Qualidade
Ferramentas da Qualidade
 
Escopo ou desejo como atender com sucesso gerenciamento de projetos
Escopo ou desejo como atender com sucesso gerenciamento de projetosEscopo ou desejo como atender com sucesso gerenciamento de projetos
Escopo ou desejo como atender com sucesso gerenciamento de projetos
 
Analise de viabilidade econômica portal de conhecimentos
Analise de viabilidade econômica portal de conhecimentosAnalise de viabilidade econômica portal de conhecimentos
Analise de viabilidade econômica portal de conhecimentos
 
Análise de Projetos - Aula I e II
Análise de Projetos - Aula I e IIAnálise de Projetos - Aula I e II
Análise de Projetos - Aula I e II
 
Métodos Ágeis - Guia para Projetos Eficientes
Métodos Ágeis - Guia para Projetos EficientesMétodos Ágeis - Guia para Projetos Eficientes
Métodos Ágeis - Guia para Projetos Eficientes
 
Gestão de Projetos e Programas - Aula # 09
Gestão de Projetos e Programas - Aula # 09Gestão de Projetos e Programas - Aula # 09
Gestão de Projetos e Programas - Aula # 09
 
Gestão de indicadores de desempenho roberto de assis nogueira
Gestão de indicadores de desempenho roberto de assis nogueiraGestão de indicadores de desempenho roberto de assis nogueira
Gestão de indicadores de desempenho roberto de assis nogueira
 
Indicadores Em Compras
Indicadores Em ComprasIndicadores Em Compras
Indicadores Em Compras
 

Semelhante a Indicadores de políticas públicas e métricas de software: uma visão em paralelo

Métricas para o Processo e o Projecto de Software
Métricas para o Processo e o Projecto de SoftwareMétricas para o Processo e o Projecto de Software
Métricas para o Processo e o Projecto de Software
Rogerio P C do Nascimento
 
FEI - Modelagem de negocios - 2° semestre 2010
FEI - Modelagem de negocios - 2° semestre 2010FEI - Modelagem de negocios - 2° semestre 2010
FEI - Modelagem de negocios - 2° semestre 2010
nathan85
 
Unp mba - pmo - indicadores
Unp   mba - pmo - indicadoresUnp   mba - pmo - indicadores
Unp mba - pmo - indicadores
UNP
 
Engenharia de Software introdução
Engenharia de Software    introduçãoEngenharia de Software    introdução
Engenharia de Software introdução
miroslayer
 

Semelhante a Indicadores de políticas públicas e métricas de software: uma visão em paralelo (20)

Métricas para o Processo e o Projecto de Software
Métricas para o Processo e o Projecto de SoftwareMétricas para o Processo e o Projecto de Software
Métricas para o Processo e o Projecto de Software
 
FEI - Modelagem de negocios - 2° semestre 2010
FEI - Modelagem de negocios - 2° semestre 2010FEI - Modelagem de negocios - 2° semestre 2010
FEI - Modelagem de negocios - 2° semestre 2010
 
Mpsbr
MpsbrMpsbr
Mpsbr
 
Lecture 4 :: As métricas para o Processo e Projeto de SW
Lecture 4 :: As métricas para o Processo e Projeto de SWLecture 4 :: As métricas para o Processo e Projeto de SW
Lecture 4 :: As métricas para o Processo e Projeto de SW
 
A Arte dos Testes de Performance Aplicacional
A Arte dos Testes de Performance AplicacionalA Arte dos Testes de Performance Aplicacional
A Arte dos Testes de Performance Aplicacional
 
Introdução a Engenharia de Software - Prof.ª Cristiane Fidelix
Introdução a Engenharia de Software - Prof.ª Cristiane FidelixIntrodução a Engenharia de Software - Prof.ª Cristiane Fidelix
Introdução a Engenharia de Software - Prof.ª Cristiane Fidelix
 
A Importância dos Sistemas de Qualidade para o Desenvolvimento de Software da...
A Importância dos Sistemas de Qualidade para o Desenvolvimento de Software da...A Importância dos Sistemas de Qualidade para o Desenvolvimento de Software da...
A Importância dos Sistemas de Qualidade para o Desenvolvimento de Software da...
 
Unp mba - pmo - indicadores
Unp   mba - pmo - indicadoresUnp   mba - pmo - indicadores
Unp mba - pmo - indicadores
 
Engenharia de Software introdução
Engenharia de Software    introduçãoEngenharia de Software    introdução
Engenharia de Software introdução
 
Projeto de pesquisa apresentação
Projeto de pesquisa   apresentaçãoProjeto de pesquisa   apresentação
Projeto de pesquisa apresentação
 
Apresentação qualidade og day
Apresentação qualidade og dayApresentação qualidade og day
Apresentação qualidade og day
 
Qualidade de Software - OpenGEO Day2010
Qualidade de Software - OpenGEO Day2010Qualidade de Software - OpenGEO Day2010
Qualidade de Software - OpenGEO Day2010
 
Qualidade de Software
Qualidade de SoftwareQualidade de Software
Qualidade de Software
 
Como os processos de testes ajudam na obtenção de melhores resultados
Como os processos de testes  ajudam na obtenção de melhores resultadosComo os processos de testes  ajudam na obtenção de melhores resultados
Como os processos de testes ajudam na obtenção de melhores resultados
 
Gerenciamento da Qualidade de Software 2.pptx
Gerenciamento da Qualidade de Software 2.pptxGerenciamento da Qualidade de Software 2.pptx
Gerenciamento da Qualidade de Software 2.pptx
 
A contribuição de Pontos de Função para um programa de métricas de software -...
A contribuição de Pontos de Função para um programa de métricas de software -...A contribuição de Pontos de Função para um programa de métricas de software -...
A contribuição de Pontos de Função para um programa de métricas de software -...
 
Mini aula análise de requisitos
Mini aula análise de requisitosMini aula análise de requisitos
Mini aula análise de requisitos
 
A contribuição de Pontos de Função para um programa de métricas de software
A contribuição de Pontos de Função para um programa de métricas de softwareA contribuição de Pontos de Função para um programa de métricas de software
A contribuição de Pontos de Função para um programa de métricas de software
 
Gerenciamento da Qualidade de Software 1.pptx
Gerenciamento da Qualidade de Software 1.pptxGerenciamento da Qualidade de Software 1.pptx
Gerenciamento da Qualidade de Software 1.pptx
 
Como especificar requisitos em metodologias ágeis?
Como especificar requisitos em metodologias ágeis?Como especificar requisitos em metodologias ágeis?
Como especificar requisitos em metodologias ágeis?
 

Mais de Roberto de Pinho

Doutores 2010-word-clouds_apres
 Doutores 2010-word-clouds_apres Doutores 2010-word-clouds_apres
Doutores 2010-word-clouds_apres
Roberto de Pinho
 
Dados abertos: dados pessoais e anonimização de bases
Dados abertos: dados pessoais e anonimização de basesDados abertos: dados pessoais e anonimização de bases
Dados abertos: dados pessoais e anonimização de bases
Roberto de Pinho
 

Mais de Roberto de Pinho (18)

Avaliação de impacto em Ciência, Tecnologia e Inovação
Avaliação de impacto em Ciência, Tecnologia e InovaçãoAvaliação de impacto em Ciência, Tecnologia e Inovação
Avaliação de impacto em Ciência, Tecnologia e Inovação
 
Rumo a uma política de dados científicos
Rumo a uma política de dados científicosRumo a uma política de dados científicos
Rumo a uma política de dados científicos
 
Towards a scientific data policy
Towards a scientific data policy Towards a scientific data policy
Towards a scientific data policy
 
Cientometria: Duas xícaras de ciência e três pitadas de citações
Cientometria: Duas xícaras de ciência e três pitadas de citações Cientometria: Duas xícaras de ciência e três pitadas de citações
Cientometria: Duas xícaras de ciência e três pitadas de citações
 
Fábrica de Experiência
Fábrica de ExperiênciaFábrica de Experiência
Fábrica de Experiência
 
Metodologia de Análise e Solução de Problemas (MASP)
Metodologia de Análise e Solução de Problemas (MASP)Metodologia de Análise e Solução de Problemas (MASP)
Metodologia de Análise e Solução de Problemas (MASP)
 
Natureza dos Problemas
Natureza dos ProblemasNatureza dos Problemas
Natureza dos Problemas
 
Indicadores bibliométricos
Indicadores bibliométricosIndicadores bibliométricos
Indicadores bibliométricos
 
Evolução e perspectivas dos investimentos em CTI no Brasil
Evolução e perspectivas dos investimentos em CTI no BrasilEvolução e perspectivas dos investimentos em CTI no Brasil
Evolução e perspectivas dos investimentos em CTI no Brasil
 
As Coisas e Os Dados
As Coisas e Os DadosAs Coisas e Os Dados
As Coisas e Os Dados
 
Key words of Brazilian science
Key words of Brazilian scienceKey words of Brazilian science
Key words of Brazilian science
 
Doutores 2010-word-clouds_apres
 Doutores 2010-word-clouds_apres Doutores 2010-word-clouds_apres
Doutores 2010-word-clouds_apres
 
Dados abertos: dados pessoais e anonimização de bases" no II Encontro Naciona...
Dados abertos: dados pessoais e anonimização de bases" no II Encontro Naciona...Dados abertos: dados pessoais e anonimização de bases" no II Encontro Naciona...
Dados abertos: dados pessoais e anonimização de bases" no II Encontro Naciona...
 
In vino veritas - Dans le vin la vérité - L’étiquette de vin
In vino veritas -  Dans le vin la vérité - L’étiquette de vinIn vino veritas -  Dans le vin la vérité - L’étiquette de vin
In vino veritas - Dans le vin la vérité - L’étiquette de vin
 
Espaço incremental para a mineração visual de conjuntos dinâmicos de documentos
Espaço incremental para a mineração visual de conjuntos dinâmicos de documentosEspaço incremental para a mineração visual de conjuntos dinâmicos de documentos
Espaço incremental para a mineração visual de conjuntos dinâmicos de documentos
 
Dados abertos: dados pessoais e anonimização de bases
Dados abertos: dados pessoais e anonimização de basesDados abertos: dados pessoais e anonimização de bases
Dados abertos: dados pessoais e anonimização de bases
 
Basic R
Basic RBasic R
Basic R
 
Curso Básico de R
Curso Básico de RCurso Básico de R
Curso Básico de R
 

Indicadores de políticas públicas e métricas de software: uma visão em paralelo

  • 1. Metodologia de Análise e Solução de Problemas – MASP 15 a 18/dez/2010 20 h Roberto Pinho robertodepinho@gmail.com Contém material de terceiros.Ver indicações de fontes no final.1
  • 2. 2  “Não se pode gerenciar o que não se pode medir”. Tom De Marco  “Se você não sabe para onde você quer ir, qualquer caminho você pode seguir. Se você não sabe onde você está, um mapa não vai ajudar!”. Roger Pressman
  • 3.
  • 4.
  • 5.  É mais fácil medir sacas de feijão…  Outros temas espinhosos: Evolução da ciência Desempenho de pesquisadores
  • 6. 6  Uma métrica é a medição de um atributo (propriedades ou características ) de uma determinada entidade (produto, processo ou recursos). Exemplos:  Tamanho do produto de software (ex: Número de Linhas de código)  Número de pessoas necessárias para implementar um caso de uso  Número de defeitos encontrados por fase de desenvolvimento
  • 7. 7  Esforço para a realização de uma tarefa  Tempo para a realização de uma tarefa  Custo para a realização de uma tarefa  Grau de satisfação do cliente (ex: adequação do produto ao propósito, conformidade do produto com a especificação)
  • 8. 8  Entender e aperfeiçoar o processo de desenvolvimento  Melhorar a gerência de projetos e o relacionamento com clientes  Reduzir frustrações e pressões de cronograma  Gerenciar contratos de software  Indicar a qualidade de um produto de software  Avaliar a produtividade do processo
  • 9. 9  Avaliar os benefícios (em termos de produtividade e qualidade) de novos métodos e ferramentas de engenharia de software  Avaliar retorno de investimento  Identificar as melhores práticas de desenvolvimento de software  Embasar solicitações de novas ferramentas e treinamento  Avaliar o impacto da variação de um ou mais atributos do produto ou do processo na qualidade e/ou produtividade
  • 10. 10  Formar uma baseline para estimativas  Melhorar a exatidão das estimativas  Oferecer dados qualitativos e quantitativos ao gerenciamento de desenvolvimento de software realizar melhorias em todo o processo de desenvolvimento de software
  • 11.  Ferreira, Cassiolato e Gonzales, 2009
  • 12.
  • 13.
  • 14. 14  Facilmente calculada, entendida e testada  Passível de estudos estatísticos  Expressa em alguma unidade  Obtida o mais cedo possível no ciclo de vida do software  Passível de automação  Repetível e independente do observador  Sugere uma estratégia de melhoria  Baixo custo
  • 15. 15  Uma métrica deve ser:  Válida: quantifica o que queremos medir  Confiável: produz os mesmos resultados dadas as mesmas condições  Prática: barata, fácil de computar e fácil de interpretar  Dois contextos para medição de software  Processo: ex. produtividade  Produto: ex. qualidade
  • 16.
  • 17.
  • 18.
  • 19. 19  Métricas diretas (fundamentais ou básicas)  Medida realizada em termos de atributos observados (usualmente determinada pela contagem)  Ex.: custo, esforço, no. linhas de código, capacidade de memória, no. páginas, no. diagramas, etc.  Métricas indiretas (derivadas)  Medidas obtidas a partir de outras métricas  Ex.: complexidade, eficiência, confiabilidade, facilidade de manutenção
  • 20. 20  Métricas orientadas a tamanho  São medidas diretas do tamanho dos artefatos de software associados ao processo por meio do qual o software é desenvolvido.  Ex.: esforço, custo, no. KLOC, no. páginas de documentação  Métricas orientadas por função  método para medição de software do ponto de vista do usuário, determinando de forma consistente o tamanho e a complexidade de um software.
  • 21. 21  Métricas de produtividade  Concentram-se na saída do processo de engenharia de software.  Ex.: no. de casos de uso/iteração.  Métricas de qualidade  Oferecem uma indicação de quanto o software se adeqüa às exigências implícitas e explícitas do cliente.  Ex.: erros/fase
  • 22. 22  Métricas técnicas  Concentram-se nas características do software e não no processo por meio do qual o software foi desenvolvido.  Ex.: complexidade lógica e grau de manutenibilidade
  • 23.  estratégicos  de processo Produtividade ou eficiência Qualidade ou eficácia Capacidade  de projeto
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38. 38  Segundo Humphrey, são quatro os principais papéis de Medições de Software: Processos, Produtos e Serviços de Software Entender Avaliar Prever Controlar
  • 39. 39  Entender  Métricas ajudam a entender o comportamento e funcionamento de processos, produtos e serviços de software  Avaliar  Métricas podem ser utilizadas para tomar decisões e determinar o estabelecimento de padrões, metas e critérios de aceitação
  • 40. 40  Controlar  Métricas podem ser utilizadas para controlar processos, produtos e serviços de software  Prever  Métricas podem ser utilizadas para prever valores de atributos
  • 41. 41  Ex: Comparar a produtividade de engenheiros em termos de linha de código  Está sendo utilizado a mesma unidade de medida? ▪ O que é uma linha de código válida?  O contexto considerado é o mesmo? ▪ Todos os engenheiros são familiarizados com a linguagem de programação?  O que se quer realmente é o tamanho do código? ▪ E a qualidade do código?
  • 42. 42  Como o resultado será interpretado? ▪ Produtividade média de um engenheiro?  O que se quer com o resultado? ▪ Comparar a produtividade do processo de software?  Há impacto no trabalho? ▪ Os programadores passam a escrever código mais longo? “Princípio da Incerteza de Heisenberg”
  • 43.
  • 44. e “um proxy é um proxy.”
  • 45.
  • 46. 46  Usado para definir o conjunto de métricas a ser coletado  Proposto por:  Basili and Rombach’s, Goal-Question-Metrics Paradigm, IEEETransactions on Software Engineering, 1988.  Baseia-se no fato de que deve existir uma necessidade clara associada a cada métrica
  • 47. 47  Inicia-se com a identificação dos interessados na medição.  Com base nos interessados, estabelecem-se os principais objetivos da medição para a organização, o projeto ou uma tarefa específica. Ex: reduzir defeitos, aumentar produtividade, etc.
  • 48. 48  A partir dos objetivos, geram-se perguntas cujas respostas dirão se os objetivos foram ou não alcançados (ex: Qual a taxa de defeito atual? Qual a taxa de defeito após a implantação do novo processo?)  A partir das perguntas, definem-se métricas: que dados serão necessários? Quais os formatos? Como coletar (fórmula e processo)? Onde armazenar e como utilizar?
  • 49. 49 Goal 1 Goal 2 Questão 1 Questão 2 Questão 3 Questão 4 Métrica 1 Métrica 2 Métrica 3 Métrica 4 Métrica 5
  • 50. 50  Objetivo: Assegurar que todos os defeitos são corrigidos antes do software ser liberado para uso.  Perguntas:  Quantos defeitos temos atualmente?  Qual o status de cada defeito?  Qual a cobertura dos testes?
  • 51. 51  Métricas:  Número de defeitos  Número de defeitos por status  Número de casos de testes planejados x executados  Número de requisitos testados
  • 52. 52  Devem estar associados a um período de tempo  Aumentar a produtividade em 20% no prazo de 12 meses  Facilita o acompanhamento e a tomada de ações para viabilizar objetivo  pois existe um prazo!!!
  • 53. 53  Estudos indicam que objetivos muito complexos e de longo prazo podem causar impacto na motivação  Objetivos menores, a curto prazo, permitem que as pessoas visualizem o progresso e alcancem sucessos  Com o tempo e com a maturidade da organização, os objetivos devem se tornar mais complexos e mais desafiadores
  • 54. 54  Seja realista e prático  Considere o processo e o ambiente de desenvolvimento atual  Não selecione métricas em que os dados sejam difíceis de serem coletados na sua realidade  Comece com o que for possível  Utilize a abordagem incremental  Com o tempo, com os benefícios, mais dados estarão disponíveis...
  • 55. 55  Objetivo: Aumentar satisfação do cliente  Que atributos dos nossos produtos e serviços são mais importantes para os nossos clientes? Aspectos Relevantes de Produto e Serviço para Clientes 0 5 10 15 20 Qualidade Custo Prazo Visibilidade do Progresso Flexbilidade p/ mudanças Aspectos Relevantes Para os Clientes Clientesque ConsideramoAspecto # Clientes
  • 56. 56  É um processo cíclico que envolve:  Planejar  Medir  Analisar os dados  Tomar decisões baseadas na análise  Implementar as decisões  Voltar a planejar e medir
  • 57. 57  Um processo de medição deve:  Fornecer uma base para melhoria contínua do processo  Quantificar a qualidade e produtividade  Estar integrado com o ciclo de vida de desenvolvimento  Medir o impacto de vários métodos, ferramentas, e técnicas de melhorias
  • 58. 58  Medições devem ser usadas para medir processos, não pessoas  O processo de medição deve ter objetivos claros e bem-definidos  O processo de medição deve ser fortemente acoplado com o processo de gerência da qualidade e integrado dentro de planos e orçamentos
  • 59. 59  O processo de coleta de dados deve ser simples, e ferramentas automáticas para extração de dados devem ser usadas  O processo de medição é contínuo e sujeito a melhoria
  • 60. 60  Escolha um conjunto adequado de métricas  Relacione as métricas ao processo de tomada de decisão (suportado pela alta administração)  Avalie processos e não pessoas (explique os objetivos da medição)  Não use as métricas para punir  Envolva várias pessoas na seleção e formulação das métricas  Estabeleça alta prioridade (recursos, ferramentas, etc.)
  • 61. 61  Integre o programa ao desenvolvimento de software  Alinhe aos objetivos de negócio  Padronize e documente  Compartilhe as métricas obtidas  Institucionalize como parte da cultura da organização  Integre com o programa de melhorias (ilustre o progresso e as melhorias obtidos a partir do programa)  Ofereça planos de ação
  • 62. 62  Para cada objetivo técnico o plano contém informação sobre:  POR QUE as métricas satisfazem o objetivo  QUAIS métricas serão coletadas, como elas serão definidas, e como serão analisadas  QUEM fará a coleta, quem fará a análise, e quem verá os resultados  COMO será feito: que ferramentas, técnicas e práticas serão usadas para apoiar a coleta e análise das métricas  QUANDO no processo e com que freqüência as métricas serão coletadas e analisadas  ONDE os dados serão armazenados
  • 63. 63 Definir e documentar para cada métrica :  Objetivos  Público alvo da métrica  Quem precisa da informação?  Quem irá usar as informações fornecidas pela métrica?  Uma métrica útil sempre tem um cliente
  • 64. 64  Procedimento de coleta e armazenamento  Quando coletar? Periodicamente ou por eventos?  Quem é o responsável por coletar e armazenar?  Onde armazenar? Quando armazenar ?  Como coletar o dado? A partir de que ferramentas e produtos de trabalho do projeto / organização?  Avaliar métricas que podem acarretar em muito esforço e pouco valor  Buscar automatizar a coleta dos dados (Ferramentas para controle de tempo, helpdesk, controle de versão, gestão de requisitos)
  • 65. 65  Procedimentos de Análise  Necessários para ▪ Entendimento da métrica ▪ Avaliação (critério para tomada de decisão)  Seleção dos métodos e ferramentas de análise: ▪ Como a métrica será visualmente apresentada? ▪ Gráficos de barras, linhas, colunas, pizza, histogramas, tabelas...
  • 66. 66  A equipe de desenvolvimento deve ser envolvida sempre que necessário  Para métricas de controle: ▪ Estabelecimento de limites de controle ▪ Padrões ou requisitos de mercado de performance ▪ Média de mercado para custo da baixa qualidade = 4%  Temos que correr atrás dessa meta!!!
  • 67. 67 Executar as atividades com base no planejamento realizado Utilizar o plano de medição como base!! Tomar ações com base nos resultados Acompanhar os itens de ação Comunicar os resultados ao público alvo de cada métrica Ajustar o processo com melhorias a partir dos resultados de sua execução: Inicialmente vai ser difícil definir todos esses procedimentos da melhor forma Eles devem ser melhorados a medida em que o processo é executado Novos objetivos e métricas surgem... Melhores forma de coleta são identificadas As orientações para realização da análise vão sendo refinadas a medida que conhecemos melhor os dados
  • 68. 68  Armazenar os resultados  Tanto os dados, como os resultados, as ações tomadas, tudo que for relevante  Toda informação que contextualize a métrica ou que forneça alguma informação adicional Dados históricos não são apenas números
  • 69. 69  Elaborar um política de controle de acesso  Apenas pessoas autorizadas devem ter acesso a certos tipos de dados  Evitar o uso indevido dos dados  Avaliação de pessoas  Comparação entre projetos, grupos ou áreas da empresa de forma indevida  Publicação de informações que foram fornecidas de forma confidencial
  • 70. 75  As atividades de medição devem ser guiadas por objetivos  Plano de Métricas detalham como criar programas de medição para atender a objetivos técnicos específicos  Tendências recentes: evolução de métricas ou modelos específicos para amplos programas organizacionais de métricas
  • 71. 76 Falta de comprometimento da alta gerência Medir custa caro Os maiores benefícios vêm a longo prazo Má utilização das métricas Grande mudança cultural necessária Dificuldade de estabelecer medições apropriadas e úteis Interpretações dos dados realizadas de forma incorreta Obter o comprometimento de todos os envolvidos e impactados Estabelecer um programa de medições é fácil, o difícil é manter!!
  • 72. 77 Foco desde os estágios iniciais da melhoria de processo Medição faz parte do TODO Começar Pequeno Selecionar um conjunto coerente É importante definir cada detalhe da métrica Descartar o que não estiver sendo útil Fornecer as informações corretas, para as pessoas certas “Agregar valor”, ao invés de gerar apenas dados
  • 73. 78 Incentivar a equipe de desenvolvimento a fazer uso das métricas Envolvimento de todos os impactados Estabelecer as expectativas Educação e Treinamento Ganhar Confiança Adotar uma Abordagem Evolucionária Compreender que a Adoção leva Tempo
  • 74.
  • 75.  http://www.andresandri.com.br/artigos/GQM.pp t  http://homes.ieu.edu.tr/~oalbayrak/ISE_318/met rics.ppt  http://www.din.uem.br/~emhuzita/PESIII/introd ucao-a-metricas-de-software.ppt  http://www.din.uem.br/~emhuzita/PESIII/introd ucao-a-metricas-de-software.ppt  http://www.planejamento.gov.br/secretarias/upl oad/Arquivos/spi/publicacoes/100324_indicador es_programas-guia_metodologico.pdf