45
Análise de Análise de Pontos de Pontos de Função Função O metro quadrado do software

Análise de Pontos de Função O metro quadrado do software

Embed Size (px)

Citation preview

Page 1: Análise de Pontos de Função O metro quadrado do software

Análise de Análise de Pontos de Pontos de

FunçãoFunçãoO metro quadrado do

software

Page 2: Análise de Pontos de Função O metro quadrado do software

.: Objetivos :..: Objetivos :.

Sensibilizar a audiência quanto à necessidade de medição de software

Apresentar as principais aplicações da FPA como unidade de medida e processo de contagem

Apresentar técnicas para definir os objetos de medição

Introdução à Análise de Pontos de Função (APF ou FPA)

Page 3: Análise de Pontos de Função O metro quadrado do software

AgendaAgenda

Page 4: Análise de Pontos de Função O metro quadrado do software

.: Por que medir? :..: Por que medir? :.

Contexto– Requisitos : tendem a expandir– Qualidade, Funcionalidade,

Performance Problemática

– Recursos : tendem a ser limitados– Tempo, Dinheiro, Pessoas entre outros– Na satisfação dos Requisitos,

disputam-se por Recursos

Como manter

esta situação

sob controle, a

fim de obter o melhor

resultado?

Page 5: Análise de Pontos de Função O metro quadrado do software

Isoladamente estas

tecnologias não foram capazes de fornecer as respostas desejadas.

“No Silver Bullet: Essence and Accidents of

Software Engeneering” Fred Brooks

.: Ferramentas :..: Ferramentas :.

Histórico– Ferramentas CASE– Linguagens de 4a. Geração– Tecnologias OO– Ambiente integrado de desenvolvimento– Arquitetura Cliente-Servidor

Hoje– Gerência de Projetos– Terceirização e Gestão de Contratos– Iniciativas de SPI– ERP

Page 6: Análise de Pontos de Função O metro quadrado do software

Gerência de projetos Gerência de projetos

“Não se pode controlar aquilo que não se

consegue medir” - Tom de Marco

Page 7: Análise de Pontos de Função O metro quadrado do software

.: O que é Gerência de .: O que é Gerência de Projetos :.Projetos :.

Gerência– [Do lat. gerere, 'trazer'; 'produzir',

'criar'; 'executar'; 'administrar'.] Dicionário Aurélio

Projetos – [Empreendimento temporário posto

em execução para criar um único produto ou serviço] PMBOK

Como gerenciar projetos?

Page 8: Análise de Pontos de Função O metro quadrado do software

.: Como gerenciar .: Como gerenciar projetos? :.projetos? :.

Planejar– Definir e refinar objetivos– Selecionar o melhor curso de ação

Executar– Coordenar pessoas e outros recursos para

executar o plano Controlar

– Garantir que os objetivos são alcançados – Monitorar e medir o progresso

regularmente– Identificar variações do plano– Tomar ações corretivas quando necessário

Processos que permitam

controlar sua execução pelo conhecimento

prévio dos efeitos de

suas respostas.

P.: Como? R.: Visibilidade.

Page 9: Análise de Pontos de Função O metro quadrado do software

.: Visibilidade :..: Visibilidade :.

Trazer a VISIBILIDADE necessária a:– Comunicação efetiva– Rápida identificação e correção de

problemas– Realização de escolhas chave– Defesa e justificativa de decisões– Acompanhamento de objetivos

específicos

O principal papel das

métricas de projeto é trazer a

visibilidade necessário à

ação gerencial.P.: A partir de

quando?

R.: Do início.

Page 10: Análise de Pontos de Função O metro quadrado do software

.: Planejamento :. .: Planejamento :. Quando o trabalho começa Quando o trabalho começa

Falta de conhecimento exige estimativa

Conforme este conhecimento evolui menos se assume

O quanto este conhecimento evolui é uma métrica

[C1]Especificação Inicialde Requisitos

[C2]Projeto deAlto Nível

[C3]ProjetoDetalhado

Estimativa Dimensionamento

[C4]ProdutoEntregue

A Análise de Pontos de

Função permite

estimar o tamanho dos

requisitos funcionais

desde muito cedo.

P.: Como medir conhecimento?R.: Com os requisitos.

Page 11: Análise de Pontos de Função O metro quadrado do software

.: Medindo e Estimando :..: Medindo e Estimando :.Os requisitos e seu Os requisitos e seu

crescimentocrescimento

[1.200 PF]Especificação Inicial

de Requisitos

[1.500 PF]Projeto deAlto Nível

[1.700 PF]Projeto

Detalhado

Estimativa Dimensionamento

[1.900 PF]ProdutoEntregue

Horas, Reais, Pontos de Função, etc.

Estimativa Incial...: 1.200 PFProduto Entregue.: 1.900 PFCrescimento.........: 53%

( 1.900 – 1.200 ) * 1001.200

Projeto A Equipe 1

[1.200 PF]Especificação Inicial

de Requisitos

[1.500 PF]Projeto deAlto Nível

[1.700 PF]Projeto

Detalhado

Estimativa Dimensionamento

[1.900 PF]ProdutoEntregue

Horas, Reais, Pontos de Função, etc.

Estimativa Incial...: 1.200 PFProduto Entregue.: 1.900 PFCrescimento.........: 53%

( 1.900 – 1.200 ) * 1001.200

Projeto A Equipe 1

P.: Para que saber o tamanho funcional?

R.: Ele é um fator normalizador.

Qual o Esforço? Qual o Prazo? Qual o Custo?

Page 12: Análise de Pontos de Função O metro quadrado do software

.: Recursos para responder :..: Recursos para responder :.

Experiência Individual A Data Limite Indicadores de PRODUTIVIDADEIndicadores de PRODUTIVIDADE

– Quantas HORAS são necessárias para realizar as ATIVIDADES envolvidas no fornecimento de um PONTO DE FUNÇÃO em determinado CONTEXTO?

– Qual o PREÇO de um PONTO DE FUNÇÃO contemplando determinadas ATIVIDADES neste CONTEXTO?

A razão de bens ou serviços

produzidos por unidade de tempo ou custo “Applied

Software Measurement”

P.: Está tudo muito abstrato. Dá pra dar um exemplo?

Page 13: Análise de Pontos de Função O metro quadrado do software

.: Estimativas .: Estimativas Paramétricas :.Paramétricas :.

Atividades: – Especificação (20%)– Projeto (30%)– Construção (40%)– Documentação(10%)

Tecnologia: – Java – Oracle AS com Portal

Produtividade: 6 Horas/PF

EstimativaInicial...: 1.200 PFProduto Entregue..: 1.900 PF

Crescimento.........: 53%( 1.900 – 1.200 ) * 100

1.200Projeto A Equipe 1

1.900 PF*

6 H / PF=

11.400H

* 11.400 H= 2.280 H

* 11.400 H= 3.420 H

* 11.400 H= 4.560 H

* 11.400 H= 1.140 H

P.: E isto é suficiente para tudo dar certo?

Page 14: Análise de Pontos de Função O metro quadrado do software

.: Controle :..: Controle :.

Atraso noProjeto

Pressãopara Aumentar

Produção

Mais Pessoal Novono Projeto

Mais Horas

Trabalhadas

Menos Controle deQualidade

Tempo emAculturamento

Desgaste daEquipe

MaiorNúmero de

Erros

Adiar Entrega

Dinâmica dos 99%

concluídos

T e m p o

Produção

Curvado

Pânico

P.: Como as métricas podem ajudar?

Page 15: Análise de Pontos de Função O metro quadrado do software

Instrumento de acompanhamento Ajuda a perceber problemas em tempo Várias dimensões :

– cronograma, custos, qualidade, riscos ou escopo

Novo PrazoPrevisto

T E M P O

PRODUÇÃO

ProduçãoPrevista

Progresso

NovaCurva

doPânico

Novo PrazoPrevisto

T E M P O

PRODUÇÃO

ProduçãoPrevista

Progresso

NovaCurva

doPânico

P.: Poderia ser mais específico?

Page 16: Análise de Pontos de Função O metro quadrado do software

AçãoGerencial

Ação

Gerencial

Base de

Projetos

Prazos

Previstos

Tempo (meses)

Produção Prevista

Progresso

Pro

du

çã

o Q

ua

nti

ficad

a

#1#2

#3

#4

#5

Indicadores

AçãoGerencial

Ação

Gerencial

Base de

Projetos

Prazos

Previstos

Tempo (meses)

Produção Prevista

Progresso

Pro

du

çã

o Q

ua

nti

ficad

a

#1#2

#3

#4

#5

Indicadores

O Problema não é só o erro, mas a demora em identificá-lo

P.: As métricas coletadas tem valor apenas para este projeto?

Page 17: Análise de Pontos de Função O metro quadrado do software

Base de Projetos

Coleta deDados doProjeto

Sistemade I n form ações

de Projetos

I ndicadoresdo P ro jeto

IndicadoresHist óricos

Dados deProjetos

P.: Minha empresa não desenvolve projetos de software. Ela contrata. A FPA pode ainda me ajudar?

Page 18: Análise de Pontos de Função O metro quadrado do software

Terceirização e Gestão Terceirização e Gestão de Contratos de Contratos

A Análise de Pontos de Função como instrumento

para nivelar de riscos

Page 19: Análise de Pontos de Função O metro quadrado do software

Na Terceirização pessoas são gerenciadas, enquanto na Gestão de

Contratos o foco está no resultado.

P.: O FPA ajuda em ambos estes casos?

.: Terceirização :..: Terceirização :.não é Gestão de Contratos não é Gestão de Contratos

Terceirização– [Contratação de terceiros, por parte de

uma empresa, para a realização de atividades não essenciais, visando à racionalização de custos, à economia de recursos e à desburocratização adminstrativa] Houaiss

Gestão de Contratos– [processos necessários à obtenção de

bens e serviços externos a organização executora] PMBOK

Page 20: Análise de Pontos de Função O metro quadrado do software

.: Pontos de Função :..: Pontos de Função :.Por que medir na Por que medir na

terceirização?terceirização?

Monitoramento :– Produtividade (horas)– Qualidade (defeitos)

507090

110130150170190

1 2 3 4 5 6 7 8 9 10 11 12

Mês

Unidades

Pontos de Função Horas

Apesar de nos meses 1,2 e 3 ter havido o

mesmo volume de PF entregues, a

quantidade de horas

aumentouA análise

exclusiva da quantidade de

horas não é conclusiva

Page 21: Análise de Pontos de Função O metro quadrado do software

.: Pontos de Função :..: Pontos de Função :.Por que medir na Por que medir na

terceirização?terceirização?

O ponto de função permite monitorar uma tendência de acomodação

Acompanhamento da ProdutividadeManutenção Equipe do Sistema A

0,00

5,00

10,00

15,00

20,00

25,00

30,00

35,00

40,00

45,00

50,00

1 2 3 4 5 6 7 8 9 10 11 12

Mês

PF

Pontos de Função / Homens Mês

A industria do Erro. Quanto

mais improdutivo

mais o subcontratado

ganha.

P.: Como a FPA ajuda na gestão de contratos?

Page 22: Análise de Pontos de Função O metro quadrado do software

Uma avaliação

orientada aos processos de Gerência de

Aquisições do Projeto do PMBOK©.

.: Pontos de Função :..: Pontos de Função :.E na Gestão de Contratos?E na Gestão de Contratos?

Ferramentas, Técnicas e Produtos– Análise de “Make-or-buy”– Seleção do Tipo de Contrato

• Preço global fixo• Preço unitário

– Negociação Contratual– Sistema de Pagamentos– Especificação de Trabalho (SOW)– Documentos de Aquisição– Critérios de Avaliação– Relatório de Desempenho

Page 23: Análise de Pontos de Função O metro quadrado do software

.: Análise de “.: Análise de “Make or Make or Buy” Buy” :.:.

Visa determinar se é mais vantajosa a contratação de um produto específico no mercado ou o seu desenvolvimento interno.

Comparação dos níveis de performance– Organização x Mercado

Alguns aspectos são quantificáveis– Análise Objetiva– Indicadores

Por exemplo ...

Comparar: “Pôr em paralelo,

equiparar em valor,

qualidade ou intensidade”

Houaiss

Page 24: Análise de Pontos de Função O metro quadrado do software

.: Caso: Aplicação da FPA :..: Caso: Aplicação da FPA :.Análise de “Análise de “Make or Buy”Make or Buy”

A organização deve empreender internamente o desenvolvimento de um novo sistema;

Deve ser contratada uma empresa externa para o desenvolvimento completo do novo sistema;

Deve ser realizado internamente o trabalho de especificação de requisitos e implantação, enquanto a codificação e testes será contratada no mercado;

É conveniente a aquisição de um pacote (COTS) com sua parametrização e adequações tanto no parque de sistemas quanto na organização.

P.: Como decidir?R.: Compare.

P.: Como comparar?R.: Conheça a si para poder comparar-se ao mercado.

Page 25: Análise de Pontos de Função O metro quadrado do software

“Se você conhece o

inimigo e se conhece, você não

deve temer o resultado

de cem batalhas“ A

Arte da Guerra

.: Conheça a si mesmo :..: Conheça a si mesmo :.

Funcionalidade solicitada pela organização (PF)

Indicadores:– taxa de produção (PF/HM),– custo (R$/PF),– indicadores de qualidade (defeitos/PF),

Distribuição do esforço entre as atividades (especificação, projeto, etc.)

Números internos de outra forma de difícil apuração ou justificativa.

Page 26: Análise de Pontos de Função O metro quadrado do software

.: Seleção do Tipo de .: Seleção do Tipo de Contrato :.Contrato :.

Distribuindo RiscosDistribuindo Riscos Aumento do Escopo - Quem Contrata Queda na Produtividade - Contratado Modelos de Terceirização

– Homem-Hora - O contratado é beneficiado pela queda na produtividade

– Preço Fechado - O contratado é prejudicado pelo aumento do escopo

– Pontos de Função - Cada um arca com o risco que lhe corresponde - Ganha x Ganha

Page 27: Análise de Pontos de Função O metro quadrado do software

.: Ponto de Função - Unidade .: Ponto de Função - Unidade :.:.

Contratando Resultados Contratando Resultados

Se o cliente quiser mais funcionalidades, é só pagar o preço do Ponto de Função

Se o fornecedor quiser manter sua lucratividade, é só manter sua produtividade e qualidade

Não existe ponto de função “defeituoso”“defeituoso”

[1.200 PF]Especificação Inicial

de Requisitos

[1.500 PF]Projeto deAlto Nível

[1.700 PF]Projeto

Detalhado

[1.900 PF]Produto

Entregue

Os pontos de função

refletem as novas telas, relatórios, consultas,

controles, etc. que vão se

materializando conforme se

aumenta o conhecimento

do sistema

Page 28: Análise de Pontos de Função O metro quadrado do software

SOW“Descreve o item a ser

contratado com suficiente

detalhe para permitir que os

potenciais fornecedores

possam avaliar se são capazes de atender ao

edital” PMBOK©. P.: E se minha

empresa for a fornecedora?

.: Outras Aplicações Afins :..: Outras Aplicações Afins :. Negociação Contratual Sistema de Pagamentos Especificação de Trabalho (SOW)

– Apoio na validação da descrição– Pode ser usada para estimar ou contar PF?

Documentos de Aquisição e Critérios de Avaliação– Defeitos por Ponto de Função– Produtividade Mínima– Capacidade de Produção

Relatório de Desempenho

Page 29: Análise de Pontos de Função O metro quadrado do software

Iniciativas de Software Iniciativas de Software Process Improvement Process Improvement

O papel das métricas e da Análise de Pontos de

Função em iniciativas de SPI

Page 30: Análise de Pontos de Função O metro quadrado do software

.: SPI :..: SPI :.Software Process Software Process

Improvement Improvement Procedimento sistemático Melhora a performance de um sistema

composto por um conjunto de processos existentes

Modificação em processos existentes ou a atualização de novos processos

Objetivando corrigir ou evitar problemas identificados no sistema anterior

Assessment

Software Engineering Processes: Principles

and Applications,

Wang Y. 2000

P.: O que é um Assessment?

Page 31: Análise de Pontos de Função O metro quadrado do software

Software Engineering Processes: Principles

and Applications,

Wang Y. 2000

P.: Como assim um modelo?

.: SPA :..: SPA :.Software Process Software Process

AssessmentAssessment Procedimento sistemático Investiga a existência, adequação e

performance de um contexto real Compara a um MODELO, padrão ou

benchmark– SEI CMMI – Capability Maturity Model

® Integration sm– SPICE - Software Process Improvement

and Capability Determination (ISO 15504);

– TickIT

Page 32: Análise de Pontos de Função O metro quadrado do software

Níveis de Maturidade

Process Area 1

ProcessArea 2

ProcessArea N

ObjetivosEspecíficos

ObjetivosGerais

Práticas Específicas

Compromisso em Executar

Capacidade deExecução

Direção naImplementação

Verificação daImplementação

Práticas Gerais

Características Comuns

.:Componentes:.do Modelo CMMI

Page 33: Análise de Pontos de Função O metro quadrado do software

Gerência de RequisitosPlanejamento de Projetos

Monitoramento e Controle de ProjetosGerência de Acordos com Fornecedores

MEDIÇÃO e ANÁLISEGarantia de Qualidade de Produto e Processo

Gerência de ConfiguraçãoNível 1Inicial

Nível 1Inicial

Nível 2 Gerenciado

Nível 3 Definido

Nível 3 Definido

Nível 4 Quantitativamente

Gerenciado

Nível 4 Quantitativamente

Gerenciado

Nível 5 Otimizado

Nível 5 Otimizado

.: Process Areas :..: Process Areas :.Representação em EstágiosRepresentação em Estágios

Page 34: Análise de Pontos de Função O metro quadrado do software

.: Medição e Análise :..: Medição e Análise :. Objetivo:

– DESENVOLVER e SUSTENTAR a capacidade utilizada no suporte às necessidades de INFORMAÇÃO da gerência.

Áreas Relacionadas– Planejamento de Projetos [2]– Monitoramento e Controle de Projetos [2]– Gerência de Configuração [2]– Desenvolvimento de Requisitos [3]– Definição de Processos Organizacionais [3]– Gerência Quantitativa de Projeto [4]

CMMI - SW -V1.1- Staged

Representation página 152

P.: Enfim qual o papel da FPA nisso?

Page 35: Análise de Pontos de Função O metro quadrado do software

.: Papel da FPA :..: Papel da FPA :.Iniciativas de SPIIniciativas de SPI“..., quando feita

adequadamenteadequadamente, a medição em seqüência de

atributos de atributos de qualidadequalidade de produtos

e processos pode fornecer uma base efetiva

para a iniciação e gerência de atividades de melhoria de processos.”

PSM: Measuring for

Process Management

and Improvement

William A. F. et al, 1997

FUNCIONALIDADE

Page 36: Análise de Pontos de Função O metro quadrado do software

O Que Medir ?O Que Medir ?

Software é PROCESSO e PRODUTO

Page 37: Análise de Pontos de Função O metro quadrado do software

.: Goal/Question/Metric :..: Goal/Question/Metric :.

Objetivo

QuestãoQuestão

Objetivo

QuestãoQuestão

Objetivo

QuestãoQuestão

MétricaMétricaMétricaMétricaMétricaMétrica

Planejamento

Cada organização ou projeto tem objetivos.

Para cada um destes há um conjunto de questões a fim de verificar seu cumprimento.

Muitas destas questões tem respostas que podem ser mensuradas

Basili, V.R, 1984, Goal Question Metric Paradigm

Page 38: Análise de Pontos de Função O metro quadrado do software

Medidas são a

quantificação de uma

característica do software, processo ou

produto.

.: O Que Medir :..: O Que Medir :. Aspectos comuns do software

– Previsto e Realizado– Recursos e Custos– Crescimento e Estabilidade– Qualidade do Produto– Performance do Desenvolvimento– Adequação Técnica

Categorias para medição– Tamanho funcional e estabilidade, etc.

Métricas– Esforço, Datas, Reporte de Problemas, etc.

Page 39: Análise de Pontos de Função O metro quadrado do software

.: O papel do TAMANHO :..: O papel do TAMANHO :.

Fator normalizador dos dados (métricas) coletadas

Adiciona a experiência coletiva à experiência individual

Deve ser representativo - quantificar bens ou serviços produzidos

Page 40: Análise de Pontos de Função O metro quadrado do software

.: Pontos de Função :..: Pontos de Função :. Independente de tecnologia e

Padronizado pelo IFPUG Requisitos funcionais refletem

objetivos objeto de gerenciamento– normalizador de todas as atividades

envolvidas Baseado em

– Descrição formal das necessidades de negócio do usuário Em sua linguagem.

– Desenvolvedores traduzem-na em linguagem de T. I. para fornecer a solução. P.: Mas o que

é um Ponto de Função?

Page 41: Análise de Pontos de Função O metro quadrado do software

Método PadrãoMétodo Padrão para para Medir SoftwareMedir Software do do Ponto de Vista do Ponto de Vista do

UsuárioUsuário através da através da quantificação da quantificação da

Funcionalidade Funcionalidade FornecidaFornecida

Page 42: Análise de Pontos de Função O metro quadrado do software

.: Objetivos :..: Objetivos :. Objetivos da Técnica

– Medir a Funcionalidade que o usuário solicita e recebe

– Medir o desenvolvimento e manutenção de software de forma Independente da Tecnologia utilizada para sua implementação

Objetivos do Processo de Contagem– Simples o suficiente para minimizar o

trabalho adicional envolvido no processo de medição

– Uma medida Consistente entre vários projetos e organizações

Page 43: Análise de Pontos de Função O metro quadrado do software

.: Componentes da .: Componentes da Contagem :.Contagem :.

fronteira da aplicação

arquivos lógicosinternos

consultas externas

Fatto Sistemas__________________

Sumário Executivo de Projeto

Projeto : BR01020 Cliente : Banco Istabel Base : 31/ 05/ 1998

Custos x Faturado

......................

......................

......................

......................

......................

......................

......................

saídas externas

arquivos de interface externa

entradas externas

Page 44: Análise de Pontos de Função O metro quadrado do software

.: Processo de Contagem :..: Processo de Contagem :.

ANÁLISE DE

PONTOS DE FUNÇÃO

CARTÃO DE REFERÊNCIABaseado na Versão 4.1.1 doManual de Práticas deContagem do IFPUG

Determinar o Tipo

de Contagem

Determinar Escopo

da Contagem

e Fronteira

da Aplicação

Contar Funções

Tipo Dados

Contar Funções

Tipo Transação

Determinar

Contagem de Pontos de Função

não Ajustados

Determinar Valor do Fator de Ajuste

Calcular o Número

de Pontos de Função Ajustados

Copyright © 2001, 2002 por FATTO CONSULTORIA E SISTEMAS LTDA.

Page 45: Análise de Pontos de Função O metro quadrado do software

Questões???Questões???

Carlos Eduardo Vazquez(27)9254-6389

[email protected]