Sei sulla pagina 1di 46

Medidas de Esforo de Desenvolvimento de

Software
Unidade 1 Fundamentos de Mtricas e Medidas
Luiz Leo luizleao@gmail.com
http://www.luizleao.com
Medidas de Esforo de Desenvolvimento de Software

Unidade 1 Fundamentos de mtricas e medidas


Introduo
Mtrica e medida
Caractersticas de uma mtrica
Definio de uma mtrica
Classificao da mtrica quanto ao objetivo
Acompanhamento da mtrica
Medidas diretas
Medidas indiretas
Medidas no ciclo de vida do software
Medidas no software pronto (kloc defeitos
produtividade)
Unidade I Fundamentos de Mtricas e Medidas
Medidas de Esforo de Desenvolvimento de Software

Unidade 2 Determinao de ponto funo

Ponto funo
Fator de ajuste
Contagem de ponto funo no ajustado
Ponto funo ajustado
Medidas no modelo preliminar de dados
Modelo e funes bsicas
Projeto detalhado
Medir arquivos lgicos internos
Complexidade de algoritmos

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Unidade 2 Determinao de ponto funo (cont.)

Tratamento nas entradas de dados


Complexidade da entrada
Sada
Complexidade da sada
Consultas
Complexidade das consultas
TED Tipo de Elemento de Dados
TER Tipo de Elemento de Registro
TAR Tipo de Arquivo Referenciado

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Unidade 2 Determinao de ponto funo (cont.)

Calculo de PF para:
Um caso e uso
Um programa
Um diagrama de classes
Um diagrama de sequencia
Uma tela um arquivo
Um DFD
Um diagrama lgico de dados
Uma proposta de manuteno
Uma classe de projeto
Um mtodo

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Unidade 3 Mtricas Utilizando Ponto Funo

Medidas da produtividade por PF


Aspectos de influncia na produtividade
Produtividade por fase
Relacionamento entre linguagens
Deciso
Acompanhamento das fase do projeto
Estimativas de ponto funo para manuteno de
software
Oramento do projeto

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Unidade 4 Tcnicas de estimativa de esforo e prazo

Tipo e tcnicas de estimativa


COCOMO (Bsico Intermedirio detalhado)
COCOMO II
Estimativas de prazo
Estimativas de custo
Estimativas de defeitos pr-release
Estimativas de esforo de retrabalho
Mtodo de Putman
Estimativa de custos e esforo para a manuteno de software
Outros mtodos
Estudo de casos
Acompanhar projetos (mtodo EVA).

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Unidade 5 Estimativas com Base Estatstica

Estimativas a partir de bases estatsticas


Erros
Interpolao de medidas (linear, exponencial,
logartmica,..)
Regresso Linear
Formas de Clculos
Dados histricos
Custo estimado baseado no esforos
Estudo de Casos

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Unidade 1 Fundamentos de mtricas e medidas


Introduo
Mtrica e medida
Caractersticas de uma mtrica
Definio de uma mtrica
Classificao da mtrica quanto ao objetivo
Acompanhamento da mtrica
Medidas Diretas
Medidas Indiretas
Medidas no Ciclo de Vida do Software
Medidas no software pronto (kloc defeitos
produtividade)
Unidade I Fundamentos de Mtricas e Medidas
Medidas de Esforo de Desenvolvimento de Software

Introduo

S podemos gerenciar o que podemos medir


No podemos otimizar o que no medido

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Introduo

O que ?
Quem faz?
Quais so os passos?
Qual o produto do trabalho?
Como garanto que fiz corretamente?
Por que Medir?

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Introduo

O que ?
So medidas quantitativas que permitem ao pessoal de software
ter ideia da eficcia do processo de software e dos projetos que
so conduzidos usando o processo como arcabouo
(PRESSMAN, 2002)

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Introduo

Quem faz?
Gerentes de Software ou Projeto: Analisam as mtricas
Engenheiros de Software: Coletam as medidas

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Introduo

Quais so os passos?

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Introduo

Qual o produto do trabalho?


Obter um conjunto de mtricas de software que nos fornea uma
idia do processo e entendimento do projeto

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Introduo

Como garanto que fiz corretamente?


Aplicando um esquema de medio consistente, mas simples,
que nunca deve ser usado para avaliar, premiar ou punir o
desempenho individual.

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Introduo

Por que Medir?


Indicar a qualidade do produto;
Avaliar a produtividade dos que desenvolvem o produto;
Determinar os benefcios derivados de novos mtodos e
ferramentas de engenharia de software;
Formar uma base para as estimativas;
Buscar oportunidades por refatorao;
Ajudar na justificativa de aquisio de novas ferramentas ou de
treinamentos adicionais;

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Glossrio

Medida
Medio
Indicador

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Medida

Fornece uma indicao quantitativa da extenso,


quantidade, dimenso, capacidade ou tamanho de algum
atributo de um produto, ou de um processo
(PRESSMAN,2002)
Ex: Quantidade de Funcionalidades de um sistema,
quantidade de telas, etc.

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Medio

o ato de determinao de uma medida (IEEE)


Ex: Em um sistema acadmico foram encontrados 10
telas, 40 funes e 10 tabelas de dados.

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Indicador

uma mtrica ou a combinao delas, que


fornece compreenso do processo de
software, de um projeto ou do produto
Um indicador fornece compreenso que
possibilita ao gerente de projeto ou aos
engenheiros de software ajustar o processo,
projeto ou produto para tornar as coisas
melhores.

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Indicador

Ex: Foi constatado que um formulrio de


coleta de requisitos A otimiza o trabalho ,
economizando 20% do tempo em relao ao
formulrio B, logo, o formulrio A ser adotado
como padro em medies futuras

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Caractersticas de uma Mtrica


Facilmente calculada, entendida e testada
Passvel de estudos estatsticos
Expressa em alguma unidade
Obtida o mais cedo possvel no ciclo de vida do software
Passvel de automao (Ferramentas)
Repetvel e independente do observador (Modelo)
Sugere uma estratgia de melhoria

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Em resumo...

Uma mtrica deve ser:


Vlida: Quantifica o que queremos medir
Confivel: Produz os mesmos resultados dadas as mesmas
condies
Prtica: Barata, fcil de computar e fcil de interpretar

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Classificao da Mtrica quanto ao Objetivo

Medidas Diretas
Medidas Indiretas

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Acompanhamento da Mtrica

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Medidas Diretas

So medidas mais simples de serem quantificadas pois


so tangveis (Podem sem visualizadas)
Incluem custo e esforo aplicados

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Medidas Diretas

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Medidas Indiretas

Medidas abstratas, logo, tem uma quantificao mais


complexa, porm, indispensvel no contexto do projeto
Cada uma das medidas deve ser analisada de forma
particular.

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Medidas Indiretas

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Mtricas Orientadas ao Tamanho


Mede o tamanho do software pelo nmero de linhas do
cdigo-fonte
Devem ser descartadas as linhas em branco e
comentrios Muito trabalhoso!!
Est diretamente ligada a linguagem de programao
utilizada, logo, no pode servir de indicador para
softwares desenvolvidos em outras linguagens

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Mtricas Orientadas Funo

Criada por Allan Albercht (1979)


Ao invs de contarmos linhas, contamos funcionalidades
do software;
Baseada na viso de negcio do usurio;

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Mtricas Orientadas Funo (Cont.)


independente da linguagem utilizada e de qualquer
tecnologia em geral;
Ela no permite calcular o esforo de desenvolvimento,
mas gera uma varivel que pode permitir seu clculo;
Auxilia o usurio final a melhorar o exame e avaliao de
projetos.

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Medidas no Software Pronto

Efetuada aps a entrega do produto


Usaremos a mtrica Orientada a Tamanho mais
especificamente a KLOC

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

KLOC

Kilo Lines Of Code (Mil Linhas de Cdigo)


Mtrica que analisa a quantidade de linhas de um cdigo
Muito utilizada em grande sistemas
utilizada tambm como medida de referncia
comparativa para erros em sistemas, servindo como base
para homologao ou aceitao de projetos (Ex: aceita-se
at "x" erros por KLOC para aprovar um sistema e coloc-
lo em produo).

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Medidas no software pronto

A partir de dados rudimentares, contidos na tabela de


medidas orientada a tamanho, um conjunto de mtricas
simples pode ser desenvolvido a cada projeto:
Erros por KLOC
Defeitos por KLOC
Valor (R$) por LOC (linha de cdigo)
Pginas de Documentao por KLOC

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Medidas no software pronto


Tabela de Medidas Orientada a Tamanho

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Medidas no software pronto

Adicionalmente, outras mtricas podem ser calculadas:


Erros por Pessoa-ms
LOC por Pessoa-ms
Valor (R$) por Pginas de Documentao

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Medidas no software pronto

Adicionalmente, outras mtricas podem ser calculadas:


Erros por Pessoa-ms
LOC por Pessoa-ms
Valor (R$) por Pginas de Documentao

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Estimativa de KLOC

Frmula para estimar o tamanho do software:

kloc = (KlocOtimista + 4 * KlocEsperado + KlocPessimista)/6

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

KLOC
Defeitos
Ocorre quando atividades de garantia de qualidade (p. ex.,
revises tcnicas formais) deixam de descobrir um erro num
produto de trabalho produzido durante o processo de
software (PRESSMAN, 2002)
Serve de mtrica para quantificarmos a qualidade do
software

Qualidade = defeitos/KLOC
A densidade de defeitos encontrados, a cada 1000 linhas
de cdigo, ser usada como um dos fatores que
determinam a qualidade do software

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

KLOC

Produtividade
Capacidade da equipe em desenvolver as atividades
envolvidas no processo de software

Produtividade = KLOC/Esforo (Pessoa-ms)

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

KLOC

Problemas na Mtrica
O KLOC uma medida direta, portanto feita sobre as
atividades. E, s podemos contar as linhas de um
software aps ele ter sido escrito. Portanto,
terminado.

Alguns contestam o KLOC por que no privilegia a boa


programao (mais eficiente) ou o uso de linguagens
mais eficientes.

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

KLOC

Problemas na Mtrica (Cont.)


O acompanhamento de projetos com mtricas
baseadas no KLOC compara projetos de
caractersticas distintas nas especificaes de
funcionalidades e na sua forma de implementar.

Comparar a produtividade de projetos desenvolvidos


em ambientes distintos pode gerar concluses
equivocadas

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

KLOC

Problemas na Mtrica (Cont.)


Linguagens Orientadas a Objeto tendem a tornar o
projeto extremamente caro com essa mtrica, pelo fato
de produzir muitos artefatos (classes, interfaces, APIs),
que consomem milhares de linhas de cdigo.

Linguagens procedurais tende a ser mais baratas,


porm o custo de manuteno desses softwares so
elevados.

Unidade I Fundamentos de Mtricas e Medidas


Medidas de Esforo de Desenvolvimento de Software

Sobre Mtricas Orientadas a Tamanho


So amplamente usadas at hoje, porm, o debate sobre
a sua validade e aplicabilidade continuam

Unidade I Fundamentos de Mtricas e Medidas

Potrebbero piacerti anche