palestra claudiambafgv

85
Implementação de um Processo de Medições de Software Claudia Hazan, MSc. Certified Function Point Specialist [email protected]

Upload: valeriaramosg

Post on 23-Oct-2015

9 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Palestra ClaudiaMBAFGV

Implementação de umProcesso de Medições de

Software

Claudia Hazan, MSc.Certified Function Point Specialist

[email protected]

Page 2: Palestra ClaudiaMBAFGV

Agenda• Introdução• Qualidade de Software• Medições de Software• Análise de Pontos por Função• Gerência de Projetos• Estimativas• Banco de Dados Histórico• Conclusão

Page 3: Palestra ClaudiaMBAFGV

Cenário

Page 4: Palestra ClaudiaMBAFGV

Qualidade de Software

Page 5: Palestra ClaudiaMBAFGV

ARIANE 5

Page 6: Palestra ClaudiaMBAFGV

ARIANE 5

• Projeto da Agência EspacialEuropéia que custou:– 10 anos.– US$ 8 Bilhões.

• Capacidade 6 toneladas.• Garante supremacia européia

no espaço.

Page 7: Palestra ClaudiaMBAFGV

Vôo inaugural em 4/junho/1996

Page 8: Palestra ClaudiaMBAFGV

RESULTADO

• Explosão 40 segundosapós a decolagem.

• Destruição do foguetee carga avaliada emUS$ 500 milhões.

Page 9: Palestra ClaudiaMBAFGV

• Fato: o veículo detonou suas cargasexplosivas de autodestruição e explodiu noar. Por que?

• Porque ele estava se quebrando devido àsforças aerodinâmicas. Mas por que?

• O foguete tinha perdido o controle dedireção (atitude). Causa disso?

• Os computadores principal e back-up deramshut-down ao mesmo tempo.

O que aconteceu? (I)

Page 10: Palestra ClaudiaMBAFGV

O que aconteceu? (II)

• Por que o Shut-down? Ocorrera um runtime error (out of range, overflow , ou outro)e ambos computadores se desligaram. Deonde veio este erro?

• Um programa que convertia um valor emponto flutuante para um inteiro de 16 bitsrecebeu como entrada um valor que estavafora da faixa permitida.

Page 11: Palestra ClaudiaMBAFGV

Especificamente:O que faltou?strict precondition 1: { Set."x"=FLPT and Set."y"=INT16

and -32768 <= x <= +32767}

program code: y := int(x);postcondition: {Set."x"=FLPT and Set."y"=INT16 and y=int(x)}

Page 12: Palestra ClaudiaMBAFGV

Conscientização

???

Quais Seriam?

Será mesmo?

?

Não!

Será que a minha empresa tem problemas?

Page 13: Palestra ClaudiaMBAFGV

Modelos daQualidade de Software

Page 14: Palestra ClaudiaMBAFGV

Qualidade de Software

QUALIDADE

Conformidade aos Requisitos

Adequação ao Uso

SATISFAÇÃO DO CLIENTE�������������������

�������������������

�������������������

�������������������

�������������������

�������������������������������������������������

�������������������������������������������������

�������������������������������������������������

�������������������������������������������������

�������������������������������������������������

�������������������������������������������������

�������������������������������������������������

�������������������������������������������������

�������������������������������������������������

�������������������������������������������������

�����������

�������������������������������������������������

�������������������������������������������������

�������������������������������������������������

�������������������������������������������������

�������������������������������������������������

�����������

Aumento da Fatia de Mercado

Page 15: Palestra ClaudiaMBAFGV

Qualidade de SoftwareConjunto de Características a seremsatisfeitas em um determinado graude modo que o software satisfaça àsnecessidades de seus USUÁRIOS

Cliente Usuários Equipe deDesenvolvimento

Suporte

Page 16: Palestra ClaudiaMBAFGV

?Modelos

Page 17: Palestra ClaudiaMBAFGV
Page 18: Palestra ClaudiaMBAFGV
Page 19: Palestra ClaudiaMBAFGV

Medições de Software

Page 20: Palestra ClaudiaMBAFGV

POR QUE MEDIR ?

Page 21: Palestra ClaudiaMBAFGV

❐ Indicar a qualidade do Produto

❐ Avaliar a produtividade do processo

❐ Formar uma Baseline para estimativas

❐ Ajudar a justificar as solicitações de novasferramentas ou treinamento

❐ Indicar a qualidade do Produto

❐ Avaliar a produtividade do processo

❐ Formar uma Baseline para estimativas

❐ Ajudar a justificar as solicitações de novasferramentas ou treinamento

Por Que Medir

Page 22: Palestra ClaudiaMBAFGV

❐ Entender e aperfeiçoar o Processo

❐ Melhorar a gerência de projetos erelacionamento com clientes

❐ Reduzir frustrações e pressões decronograma

❐ Gerenciar contratos de software

❐ Entender e aperfeiçoar o Processo

❐ Melhorar a gerência de projetos erelacionamento com clientes

❐ Reduzir frustrações e pressões decronograma

❐ Gerenciar contratos de software

Por Que Medir ....

Page 23: Palestra ClaudiaMBAFGV

“ NÃO SE PODE GERENCIARO QUE NÃO SE PODE MEDIR ”

“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 PressmanRoger Pressman

Tom De MarcoTom De Marco

Por Que Medir ....

Page 24: Palestra ClaudiaMBAFGV

Implantação de um Processo deMedição

Um Processo de Medição deve:

• Fornecer uma base para melhoria contínua doprocesso

• Quantificar qualidade e produtividade• Estar integrado com o ciclo de vida• Medir o impacto de vários métodos, ferramentas,

e técnicas de melhoria

Page 25: Palestra ClaudiaMBAFGV

Princípios de um Processo deMedição

• 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 processode gerência da qualidade e integrado dentro de planos e orçamentos

• O processo de coleta de dados deve ser simples, e ferramentasautomáticas para extração de dados devem ser usadas.

• As medições devem ser repetíveis e independente do observador

• O processo de medição é um processo contínuo e sujeito a melhoria

• Os resultados das métricas deve ser compartilhado com osdesenvolvedores

Page 26: Palestra ClaudiaMBAFGV

DADOS SOFT

DADOS HARDInformações que podem ser quantificadas com pouca ou nenhuma subjetividade.

Opiniões humanas devem ser avaliadas

DADOS DE PADRONIZAÇÃOMétricas Padrão usadas por propósitos

corporativos

Tipos de Medições

Page 27: Palestra ClaudiaMBAFGV

Análise de Pontospor Função

Page 28: Palestra ClaudiaMBAFGV

Pontos de Função (PF)É uma medida de dimensionamento de software através da funcionalidade implementada em um

sistema, sob o ponto de vista do usuário.

= 1000 PF

Análise de Pontos por Função

Page 29: Palestra ClaudiaMBAFGV

Análise de Pontos por Função

Medir a funcionalidade requisitada e recebida pelo usuário

Medir Projetos de Desenvolvimento e deManutenção independentemente da tecnologia utilizada

Page 30: Palestra ClaudiaMBAFGV

Análise de Pontos por Função

APF quantifica as funções contidas dentro de um software em termos entendidos pelo usuário.APF relata diretamente os requisitos do negócio.APF é independente da tecnologia utilizada.APF torna possível as estimativas nas fases iniciaisdo processo de desenvolvimento de software.APF fornece facilidade para uma reestimativaAPF fornece suporte à: tributação do software, tempo de duração do projeto e gerência APF apoia a análise de produtividade e qualidade

Page 31: Palestra ClaudiaMBAFGV

APLICAÇÃO

Arquivos Lógicos Internos

Fronteira da AplicaçãoFronteira da Aplicação

Entradas Externas

Saídas Externas

ConsultasExternas

Outra Aplicação

Arquivo Lógico Interno

Arquivos de InterfaceExterna

Funções de dadosFunções de dadosFunções transacionaisFunções transacionais

(Sem Dados Derivados) ( Com Dados Derivados)

Visão Geral

Page 32: Palestra ClaudiaMBAFGV

ETAPAS PARA CONTAGEM DE PONTOS DE FUNÇÃO

■ Determinar o Tipo de Cálculo■ Identificar a Fronteira da Aplicação■ Contagem das Funções de Dados■ Contagem das Funções Transacionais

■ Cálculo dos Pontos de Função Não-Ajustados■ Cálculo do Fator de Ajuste■ Cálculo dos Pontos de Função Ajustados

Análise de Pontos por Função

Page 33: Palestra ClaudiaMBAFGV

DeterminarTipo de

Contagem

Identificar Escopo de

Contagem eFronteira da

Aplicação

Contar Funçõesde Dados

Contar Funções

Transacionais

Determinaros PF NãoAjustados

Determinaro Fator de

Ajuste

Calcular os PF

Ajustados

Etapas de Contagem

Page 34: Palestra ClaudiaMBAFGV

Etapas de Contagem

TIPOS DE CÁLCULO DE PONTOS POR FUNÇÃOTIPOS DE CÁLCULO DE PONTOS POR FUNÇÃO

• Contagem de PF de Projetos de Desenvolvimento - PF associados com a instalação inicial de um software novo

• Contagem de PF de Projetos de Manutenção - PF associados com a melhoria de um software já existente (inclui funcionalidade que é adicionada, modificada ou excluída)

• Contagem de PF de Aplicações - PF associados com uma aplicação instalada - Funcionalidade da aplicação no ponto de vista do usuário

Page 35: Palestra ClaudiaMBAFGV

Etapas de Contagem

Determinação da fronteira da aplicação -baseada:

✓ No ponto de vista do usuário

✓ Na funcionalidade do negócio e não naimplementação tecnológica

Determinação da fronteira da aplicação -baseada:

✓ No ponto de vista do usuário

✓ Na funcionalidade do negócio e não naimplementação tecnológica

Page 36: Palestra ClaudiaMBAFGV

Etapas de Contagem

Funções de Dados

Arquivos LógicosInternos

Arquivos deInterface Externa

Page 37: Palestra ClaudiaMBAFGV

Etapas de Contagem

Classificação das Funções - de acordocom o número de Registros Lógicos eItens de Dados:

❐ Simples❐ Média❐ Complexa

Classificação das Funções - de acordocom o número de Registros Lógicos eItens de Dados:

❐ Simples❐ Média❐ Complexa

Page 38: Palestra ClaudiaMBAFGV

Etapas de Contagem

Funções Transacionais

SaídaExterna

EntradaExterna

ConsultaExterna

Page 39: Palestra ClaudiaMBAFGV

Etapas de Contagem

Classificação das Funções - de acordocom o número Arquivos Referenciadose Itens de Dados:

❐ Simples❐ Média❐ Complexa

Classificação das Funções - de acordocom o número Arquivos Referenciadose Itens de Dados:

❐ Simples❐ Média❐ Complexa

Page 40: Palestra ClaudiaMBAFGV

TIPO DE COMPLEXIDADE TOTAL TOTALFUNÇÃO FUNCIONAL COMPLEX. TIPO FUNÇÃO

SIMPLES X 7 =ARQUIVO MÉDIA X 10 =

COMPLEXA X 15 = SIMPLES X 5 =

INTERFACE MÉDIA X 7 = COMPLEXA X 10 = SIMPLES X 3 =

ENTRADA MÉDIA X 4 = COMPLEXA X 6 = SIMPLES X 4 =

SAÍDA MÉDIA X 5 = COMPLEXA X 7 = SIMPLES X 3 =

CONSULTA MÉDIA X 4 = COMPLEXA X 6 =

* * * TOTAL DE PONTOS DE FUNÇÃO NÃO - AJUSTADOS =

Etapas de ContagemCONTAGEM DOS PF´s NÃO AJUSTADOS

Page 41: Palestra ClaudiaMBAFGV

Etapas de Contagem

Atribui-se um peso de 0 a 5 para cada característica: 0- Nenhuma Influência 3- Influência Média 1- Influência Mínima 4- Influência Significativa 2- Influência Moderada 5- Grande Influência

1. Comunicação de Dados 2. Processamento Distribuído 3. Performance 4. Utilização do Equipamento 5. Volume de Transações 6. Entrada de dados “on-line” 7. Eficiência do Usuário Final

8. Atualização “on-line” 9. Processamento Complexo 10. Reutilização de Código 11. Facilidade de Implantação 12. Facilidade Operacional 13. Múltiplos Locais 14. Facilidade de Mudanças

Page 42: Palestra ClaudiaMBAFGV

FA = ( NI * 0,01 ) + 0,65

NÍVEL DE INFLUÊNCIA (NI) NÍVEL DE INFLUÊNCIA (NI)

FATOR DE AJUSTE (FA) FATOR DE AJUSTE (FA)

NI = ΣΣΣΣ Características Gerais do Sistema

Etapas de Contagem

Page 43: Palestra ClaudiaMBAFGV

- Cálculo de PF de um Projeto de Desenvolvimento

PF_DESENVOLVIMENTO = PF_NÃO_AJUSTADO * FATOR_AJUSTE

- Cálculo de PF de um Projeto de Manutenção

PF_MANUTENÇÃO = ((PF_INCLUÍDO + PF_ALTERADO)* FA_ATUAL) + (PF_EXCLUÍDO*FA_ANTERIOR)

PROJETO

Etapas de Contagem

Page 44: Palestra ClaudiaMBAFGV

Etapas de Contagem

- Cálculo de PF de uma Aplicação já Implantada

PF_APLICAÇÃO = PF_NÃO_AJUSTADO * FATOR_AJUSTE

APLICAÇÃO

- Cálculo de PF de uma Aplicação já Implantadaa partir dos PF de um Projeto de Desenvolvimento

PF_APLICAÇÃO = PF_DESENVOLVIMENTO - (PF_CONVERSÃO * FATOR_AJUSTE)

Page 45: Palestra ClaudiaMBAFGV

Etapas de Contagem

- Cálculo de PF de uma Aplicação após um Projeto de Manutenção

PF_APLICAÇÃO = (PF_NÃO_AJUSTADO + PF_INCLUÍDO + PF_ALTERADO_ATUAL- PF_ALTERADO_ANTERIOR - PF_EXCLUÍDO) * FA_ATUAL

APLICAÇÃO

Page 46: Palestra ClaudiaMBAFGV

Implantação de APF no SERPRO

Page 47: Palestra ClaudiaMBAFGV

Implantação de APF na SUNAT

✔ Página de APF (Intranet):→→→→ Manter os líderes de projeto “sintonizados” com o Plano de Medições da SUNAT

→→→→ disseminação da técnica de APF →→→→ distribuição do ESTIMATIVA

→→→→ disponibilização dos resultados→→→→ canal de comunicação entre os líderes de projeto e a Coordenação

✔ Página de APF (Intranet):→→→→ Manter os líderes de projeto “sintonizados” com o Plano de Medições da SUNAT

→→→→ disseminação da técnica de APF →→→→ distribuição do ESTIMATIVA

→→→→ disponibilização dos resultados→→→→ canal de comunicação entre os líderes de projeto e a Coordenação

✔ Administradores de APF:→→→→ responsáveis pela disseminação da métrica nos Pólos e envio das pontuações dos projetos para a Coordenação

✔ Administradores de APF:→→→→ responsáveis pela disseminação da métrica nos Pólos e envio das pontuações dos projetos para a Coordenação

Page 48: Palestra ClaudiaMBAFGV

❐ Desenvolvido pela ATGDE/SUNAT❐ Automatiza os cálculos envolvidos na técnica de APF❐ Fornece facilidades para a pontuação de projetos❐ “Fala a língua” da SUNAT❐ Permite agrupamento de funções por plataformas diferentes

(linguagem e equipe)❐ Estima produtividade da equipe❐ Permite acompanhamento da evolução dos Projetos (versão,

manutenção)❐ Fornece relatórios apropriados às necessidades gerenciais❐ Base histórica integrada

❐ Desenvolvido pela ATGDE/SUNAT❐ Automatiza os cálculos envolvidos na técnica de APF❐ Fornece facilidades para a pontuação de projetos❐ “Fala a língua” da SUNAT❐ Permite agrupamento de funções por plataformas diferentes

(linguagem e equipe)❐ Estima produtividade da equipe❐ Permite acompanhamento da evolução dos Projetos (versão,

manutenção)❐ Fornece relatórios apropriados às necessidades gerenciais❐ Base histórica integrada

ESTIMATIVAESTIMATIVA

Page 49: Palestra ClaudiaMBAFGV

ESTIMATIVAESTIMATIVA☞ Relatórios

❐ Descrição Detalhada ❐ Estimativa de Produtividade ❐ Pontos por Função de Aplicação ❐ Pontos por Função de Projeto ❐ Pontos por Função dos Projetos ❐ Quadro Comparativo dos Pontos por Função por Linguagem ❐ Relação Detalhada dos Projetos ❐ Relação Simplificada dos Projetos

☞ Gráficos❐ Evolução do Tamanho do Projeto ❐ Influência das Características ❐ Distribuição das Funções

Page 50: Palestra ClaudiaMBAFGV

ESTIMATIVAESTIMATIVA

Page 51: Palestra ClaudiaMBAFGV

ESTIMATIVAESTIMATIVA

Page 52: Palestra ClaudiaMBAFGV

Certificação CFPSCFPS - Certified Function Point Specialist:é a certificação conferida peloInternational Function Point Users Groupàs pessoas aprovadas no exame decertificação.

A certificação é a garantiade que o profissionalentende e utilizacorretamente as regras doIFPUG para a contagem depontos de função.

Page 53: Palestra ClaudiaMBAFGV

Gerência de Projetos

Page 54: Palestra ClaudiaMBAFGV

Planejamento deProjetos

O processo Planejamento do Projeto de Softwareenvolve desenvolver ESTIMATIVAS para o trabalhoa ser executado, estabelecer os compromissosnecessários e definir o plano para executar o trabalho.

Page 55: Palestra ClaudiaMBAFGV

Planejamento deProjetos

Documentar as estimativas de software a seremusadas no acompanhamento do projeto desoftware.

Meta - Estimativa

Plano: estimativas de tamanho, custo,esforço e cronograma e recursoscomputacionais críticos

Page 56: Palestra ClaudiaMBAFGV

Medições para Estimativas

Requisitos ProjetoFuncional

AplicaçãoEntregue

ProjetoDetalhado

DocumentaçãoEstimativa de FPInicial

Estimativade FPIntermediária

FPEntreguesReal

Page 57: Palestra ClaudiaMBAFGV

Medições para Mudança de Escopo Gerencial

Requisitos ProjetoFuncional

AplicaçãoEntregue

ProjetoDetalhado

100 FPs 120 FPs 130 FPs 135 FPs

•Tela para entradade dados modificada(3FPs)• Arquivo adicionado(10 FPs)•Consulta adicionada(7 FPs)

ImpactoEsforçoCronogramaCusto

+ 1 mês+ 2 semanas+ $5000

+ 0.5 mês+ 1 semana+ $2500

+ 0.25 mês+ 2.5 dias+ $1250

• Relatóriode sumário adicionado(5 FPs)

• Nova tabela adicionada(10 FPs)

Page 58: Palestra ClaudiaMBAFGV

Estimativas

Page 59: Palestra ClaudiaMBAFGV

Métodos para Estimativasde Tamanho

- Contagem Indicativa - NESMA

- Estimativas Percentuais - Tabela SPR

-Estimativas Percentuais - Tabela ISBSG

- Contagem Empírica

Page 60: Palestra ClaudiaMBAFGV

Contagem Indicativa da NESMA

Segundo o Modelo de Dados e Interfaces

• Utilizaremos a “ContagemIndicativa” (NESMA)

• A técnica assume que cadaarquivo lógico (10 ptos.) terá:– inclusão, alteração e exclusão (3

x 4 = 12 ptos.)

– 1 relatório (5 ptos.)

– 2 consultas (2 x 4 = 8 ptos.)

Page 61: Palestra ClaudiaMBAFGV

Contagem Indicativa da NESMA

• Fórmula 1 (sem Interfaces):– PF = Qtd Arquivos Lógicos * 35

• Considerando que as Interfaces(7 ptos.) tenham:– 2 consultas (2 x 4 = 8 ptos.)

• Fórmula 2 (completa):PF = (Qtd. Arq. Lógicos * 35) +

(Qtd. Interfaces * 15)

Page 62: Palestra ClaudiaMBAFGV

Contagem Indicativa da NESMA

EXEMPLO: SISTEMA COM 3 ARQUIVOS INTERNOS

PF = Nº de ALIs x 35 + Nº de AIEs x 15

PF = 3 x 35 + 0 x15 = 105

TOTAL DE PONTOS DE FUNÇÃO NÃO-AJUSTADOS = 105Para simplificar, supondo FATOR DE AJUSTE = 1, TEMOS: PONTOS DE FUNÇÃO AJUSTADOS = 105 *1 = 105

Page 63: Palestra ClaudiaMBAFGV

* A quantidade de arquivos internos representa 25% do total defunções de uma aplicação

* A quantidade de interfaces representa 3% do total de funções de umaaplicação

* A quantidade de entradas externas representa 30% do total defunções de uma aplicação

* A quantidade de saídas externas representa 28% do total de funçõesde uma aplicação

* A quantidade de consultas representa 14% do total de funções deuma aplicação

Método de Estimativa Percentual

Page 64: Palestra ClaudiaMBAFGV

* Se 3 ARQUIVOS = 25 % do TOTAL DE FUNÇÕES, entãoTOTAL DE FUNÇÕES = 12.

* Se INTERFACES = 3% do TOTAL DE FUNÇÕES, entãoINTERFACES = 0,36 (arredonda-se para 0).

* Se ENTRADAS = 30 % do TOTAL DE FUNÇÕES, entãoENTRADAS = 3,6 (arredonda-se para 4).

* Se SAÍDAS = 28 % do TOTAL DE FUNÇÕES, então SAÍDAS =3,36 (arredonda-se para 3).

* Se CONSULTAS = 14% do TOTAL DE FUNÇÕES, entãoCONSULTAS = 1,68 (arredonda-se para 2).

Método de Estimativa Percentual

EXEMPLO: SISTEMA COM 3 ARQUIVOS INTERNOS

Page 65: Palestra ClaudiaMBAFGV

TIPO DE FUNÇÃO COMPLEXIDADE FUNCIONALTOTAL COMPLEX. TOTALTIPO FUNÇÃOARQUIVO 3 MÉDIA X 10 30INTERFACE 0 MÉDIA X 7 0ENTRADA 4 MÉDIA X 4 16SAÍDA 3 MÉDIA X 5 15CONSULTA 2 MÉDIA X 4 8

* * * TOTAL DE PONTOS DE FUNÇÃO NÃO-AJUSTADOS= 69PONTOS DE FUNÇÃO AJUSTADOS = 69 *1 = 69

Método de Estimativa Percentual

EXEMPLO: SISTEMA DE 3 ARQUIVOS INTERNOS

Page 66: Palestra ClaudiaMBAFGV

ISBSGInternational Software Benchmarking Standards Group

- Organização sem fins lucrativos- Mantém um Banco de Dados de métricas de projetos desoftware internacionais para auxiliar na melhoria dagerência de recursos de TI, promovendo a melhoria dasestimativas e produtividade do projeto e Benchmarking.

Objetivo: Fornecer as organizações a oportunidade de fazerum benchmarking com os melhores do mundo, permitindo queestas submetam seus projetos de software para o repositório,com custo zero e um esforço mínimo, e recebam um relatóriogratuitamente. Este relatório apresenta graficamente dados deBenchmarking do projeto submetido em relação aos projetoscom perfil similar contidos no Banco de Dados.

Page 67: Palestra ClaudiaMBAFGV

Estudo do ISBSG (Data 6 /2000)

Objeto Novo Desenvolvimento Re-desenvolvimento MelhoriasALI 22,00% 23,00% 15,60%

AIE 5,00% 2,50% 6,50%

EE 33,50% 52,90% 32,70%

SE 23,50% 17,50% 32,00%

CE 16,00% 4,10% 13,20%

Método de Estimativa Percentual

Page 68: Palestra ClaudiaMBAFGV

* Se 3 ARQUIVOS = 22 % do TOTAL DE FUNÇÕES, entãoTOTAL DE FUNÇÕES = 13,64 arredonda-se para 14.

* Se INTERFACES = 5% do TOTAL DE FUNÇÕES, entãoINTERFACES = 0,7 (arredonda-se para 1).

* Se ENTRADAS = 33,5 % do TOTAL DE FUNÇÕES, entãoENTRADAS = 4,69 (arredonda-se para 5).

* Se SAÍDAS = 23,5 % do TOTAL DE FUNÇÕES, então SAÍDAS =3,29 (arredonda-se para 3).

* Se CONSULTAS = 16% do TOTAL DE FUNÇÕES, entãoCONSULTAS = 2,24 (arredonda-se para 2).

Método de Estimativa Percentual(ISBSG)

EXEMPLO: SISTEMA COM 3 ARQUIVOS INTERNOS –NOVO DESENVOLVIMENTO

Page 69: Palestra ClaudiaMBAFGV

Contagem Empírica• Baseado no Esquema Lógico e

Conhecimento das Funções

APLICAÇÃO

Arquivos Lógicos Internos

Fronteira da AplicaçãoFronteira da Aplicação

Entradas Externas

Saídas Externas

ConsultasExternas

Outra Aplicação

Arquivo Lógico Interno

Arquivos de InterfaceExterna

Funções de dadosFunções de dadosFunções transacionaisFunções transacionais

(Sem Dados Derivados) ( Com Dados Derivados)

Page 70: Palestra ClaudiaMBAFGV

NESMA: 105 PFJONES: 69 PFISBSG: 80 PF_____________MÉDIA: 85 PF

REAL: 84 PFs

ESTIMADO:

Para simplificar, supondo 1 para o Fator de Ajuste:

Page 71: Palestra ClaudiaMBAFGV

Estimativas por Fases

Atividade do ciclo de Vida % deDistribuição

Levantamento de Dados (LD) 10%

Projeto Lógico (PL) 20%

Projeto Físico (PF) 25%

Construção (CO), Testes (TE) 35%

Implantação (IM) 10%

Total do Sistema 100%

Page 72: Palestra ClaudiaMBAFGV

Ambiente/Linguagem Produtividade (horas/PF) Produtividade (PF/homen_hora) Baixa Média Alta Baixa Média Alta Visual Basic 8,8 h 6,8 h 5,7 h 0,1136 0,1477 0,1742

Delphi 8,8 h 6,8 h 5,7 h 0,1136 0,1477 0,1742

C 26,4 h 17,6 h 13,2 h 0,0379 0,0568 0,0758 C ++ 13,2 h 8,8 h 6,6 h 0,0758 0,1136 0,1515

Access 8,8 h 6,8 h 5,7 h 0,1136 0,1477 0,1742

ORACLE 13,2 h 8,8 h 6,6 h 0,0758 0,1136 0,1515

SQL 8,3 h 5,9 h 4,3 h 0,1212 0,1704 0,2273

UNIX Shell Scripts 8,8 h 6,8 h 5,7 h 0,1136 0,1477 0,1742

WEB/Documentos

VB–Script 12 h 12 h 12 h 0,0833 0,0833 0,0833 ASP 12 h 12 h 12 h 0,0833 0,0833 0,0833 HTML 8,3 h 5,9 h 4,3 h 0,1212 0,1704 0,2273

Java 13,2 h 8,8 h 6,6 h 0,0758 0,1136 0,1515

DT2 17 h 17 h 17 h 0,0588 0,0588 0,0588 Lotus Notes 5,5 3,9 3,1 0,1818 0,2564 0,3226

Case

Oracle Designer 2000 8,2 h 6,8 h 5,7 h 0,1212 0,1704 0,2273

Page 73: Palestra ClaudiaMBAFGV

Exemplo Exemplo Exemplo Exemplo de de de de EstimativaEstimativaEstimativaEstimativade de de de EsforçoEsforçoEsforçoEsforço

EXEMPLO: SISTEMA COM 3 ARQUIVOS LÓGICOSINTERNOS E 1 ARQUIVO DE INTERFACE EXTERNA

- Aplicação de complexidade média, Equipe Iniciante

- Linguagem JAVA

0,0758 PFs/homem_hora ou 13,2 horas para produzir 1 PF.

Esforço = 85 * 13,2 = 1122 horas

Page 74: Palestra ClaudiaMBAFGV

Método para EstimativaMétodo para EstimativaMétodo para EstimativaMétodo para Estimativade de de de PrazoPrazoPrazoPrazo

- Estimativa de Esforço

- Tamanho da Equipe

- Consideração: 6 horas de trabalho/ dia

Prazo (em dias) = Esforço (horas) /Tam. equipe * 6

Page 75: Palestra ClaudiaMBAFGV

Exemplo Exemplo Exemplo Exemplo de de de de EstimativaEstimativaEstimativaEstimativade de de de PrazoPrazoPrazoPrazo

• Equipe: 1 analista e 1 programador (2 profissionais)• Produtividade: 6 horas /dia

Prazo = 1122 /2 * 6 = 93,5 dias úteis (aproximadamente 4 meses)

EXEMPLO: SISTEMA COM 3 ARQUIVOS LÓGICOSINTERNOS E 1 ARQUIVO DE INTERFACE EXTERNA

Page 76: Palestra ClaudiaMBAFGV

Estimativas de CustoEstimativas de CustoEstimativas de CustoEstimativas de Custo

Indicador de Custo: $/Ponto de Função

Page 77: Palestra ClaudiaMBAFGV

Método para EstimativaMétodo para EstimativaMétodo para EstimativaMétodo para Estimativade de de de Recursos ComputacionaisRecursos ComputacionaisRecursos ComputacionaisRecursos Computacionais

CríticosCríticosCríticosCríticos - Planilha: Estimativas de Recursos Computacionais

- Nome do Recurso Computacional- Descrição- Parâmetros- Custos- Crítico

Page 78: Palestra ClaudiaMBAFGV

Banco de DadosHistórico

Page 79: Palestra ClaudiaMBAFGV

Banco de DadosHistórico

Contém informações relevantes de projetos realizados

Utilizado para Estimativas de futuros projetos

Utilizado para análise e melhoria do processo

Contém Baselines de esforço, tempo, custo e outrosatributos relevantes.

Page 80: Palestra ClaudiaMBAFGV

Banco de DadosHistórico

Tamanho Cronograma

Linguagens

Plataforma

Metodologia

Precisão dasEstimativas Tipo do Projeto

RecursosComputacionais Críticos

Page 81: Palestra ClaudiaMBAFGV

Banco de DadosHistóricoConstrução

Implantação de um Processo de Medições

Identificação de Atributos do Projeto Relevantes

Identificação de Métricas

Identificação de Indicadores

Definição das Baselines

Definição de Método de Análise e Melhoria

Page 82: Palestra ClaudiaMBAFGV

Conclusão

Page 83: Palestra ClaudiaMBAFGV

BaselineMedições

Resultados

Ações

Decisões

• Estatísticas deProjeto/Aplicação• Atributos deProjeto/Aplicação

Programas

MelhoriasOportunidades• Produtividade

• Qualidade• Satisfação do Cliente• Custos

• Pessoal• Métodos/técnicas•Tecnologia• Ambiente

• Quais são nossos pontos fortes?• Quais são nossas oportunidades de melhoria ?

Page 84: Palestra ClaudiaMBAFGV

Análise de Pontos por FunçãoBFPUG: www.bfpug.com.brIFPUG: www.ifpug.org

Modelo CMMwww.sei.cmu.edu

Page 85: Palestra ClaudiaMBAFGV

[email protected]

www.serpro.gov.br

Claudia HazanMSc. Qualidade de SoftwareCertified Function Point SpecialistAnalista de Sistemas do SERPRO

Tel: (21) 2506-4407Cel: (21) 9124-6579