Análise de Pontos de Função - FACOMbacala/ES/06-APF.pdf · 2015. 10. 19. · Por que APF como...

Preview:

Citation preview

Análise de Pontos

de Função

Medição, Estimativas e

Gerenciamento de Projetos de

Software 1

Por que medir

software?

2

Por que medir software? • Estimar custo e recursos de projetos

• Avaliar a aquisição de pacotes (make-or-buy)

• Suportar análises de produtividade e qualidade

• Remunerar fornecedores

• Apoiar a gerência de escopo do projeto

• Apoiar a gerência de requisitos do projeto

• Benchmarking

3

Dilema do desenvolvimento

SW • Requisitos - qualidade, funcionalidade e performance

• são infinitos: tendem a expansão

• Recursos - trabalho, logística, capital

• são restritos: pressão para menor utilização

• Como manter esta situação sob controle?

• Atender ao máximo as expectativas com a utilização do

mínimo de recursos

4

As Respostas de Hoje

• Terceirização e gestão de contratos

• Uso intensivo de pacotes de software - ERP em especial

• Orientação para gerência de projetos

• Iniciativas de Melhoria de Processos

• Mas o que é gerência de projetos e onde entra a APF?

5

Desafio do GP

• Tornar o gerenciamento de projetos baseado em fatos,

não em “achismos”

• Para isto, deve-se buscar métricas e indicadores que

orientem a gerência pois:

• “Não se pode controlar o que não se pode medir” - Lord

Kelvin

• ou

• “Não se pode gerenciar o que não se pode medir” - Tom de

Marco

6

Importância da medição

• “..., quando feita adequadamente, a

medição em seqüência de atributos de

qualidade 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

7

O que medir?

8

Objetivo

Questão Questão

Objetivo

Questão Questão

Objetivo

Questão Questão

Métrica Métrica Métrica Métrica Métrica Métrica

Planejamento

Indicadores derivados de PF

• A APF, junto com outras métricas permite a geração de

vários indicadores para o GP

• Horas / PF

• PF / Homem Mês

• R$ / PF

• Defeitos / PF

• Estabilidade dos requisitos

• Baseline da organização

• Tamanho do backlog

9

Uso da APF em

Estimativas

10

Estimativas de Projetos de

Software • Quanto Tempo?

• Quanto Custa?

• Respostas dependem

• dos Requisitos

• da Equipe

• da Tecnologia

• Exatidão apenas ao término

• Podem ser mais ou menos exatas

11

Podem ser mais ou menos

exatas

12

Paradoxo: quando mais se

exige precisão, menos se tem

13

14

desenvolver produto

aprovar estimativas

estimar custo

cronograma

estimar esforço fatores

de

risco

dados

históricos

medidas reais de tamanho, esforço,

etc.

estimativas aprovadas de

tamanho, esforço , etc.

recursos

dados

de custo

Analisar o processo de estimativa

estimar tamanho

coletar requerimentos

estim

ar n

ova

me

nte

se

mp

re q

ue

ne

ce

ssá

rio

Onde entra a APF?

• Tamanho pode ser estimado antes da especificação de

requisitos estar completa

• Muito útil em tempo de proposta e análise de viabilidade

• É uma técnica para macro-estimativas

• Não recomendada para estimativas pontuais de

atividades ou projetos muito pequenos

15

Estimando Esforço

• Necessidade das horas apropriadas para

• Produtividade (PF / H)

• Taxa de Entrega (H / PF)

• Classificação de projetos por similaridade

• processo de desenvolvimento deve ser estável

• Extrapolar o comportamento histórico

• Indicadores de Mercado

• Indicadores Internos

16

Estimando Custo

• Necessidade dos custos apropriados para

• Preço do ponto de função ( R$ / PF)

• Classificação de projetos por similaridade

• processo de desenvolvimento deve ser estável

• Extrapolar o comportamento histórico

• Indicadores de Mercado

• Indicadores Internos

17

Estimando Duração

• Neste ponto o ideal é conjugar outras técnicas pois:

• Nem sempre Prazo = Esforço / Tamanho Equipe

• Cuidado com fórmulas mágicas

• duração = PF ** 0,4 ???

18

Outras Estimativas

Possíveis? • Número de casos de teste (= PF x 1,2) ???

• Número de defeitos (= PF ** 1,25) ???

• Tamanho da equipe de desenvolvimento (= PF / 150)

???

• Tamanho da equipe de manutenção (= PF / 1500)

???

19

Uso da APF em

Contratos de

Software

20

Aspectos Contratação

Sofware • Foco no negócio principal

• Terceirização do desenvolvimento SW

• Parcial

• Equipe

• Projeto

• Atividade (codificação, teste, análise, etc)

• Total

• Outsourcing

21

Gestão do Contrato

• A necessidade de gerenciar o contrato existe seja qual

for o nível da terceirização

• Equipe: produtividade e qualidade

• Projeto: prazo, escopo

• Atividade: prazo

• Outsourcing: custo, qualidade

22

Formas de contratação

23

Homem Hora

Preço Global Fixo

Preço Unitário

Sele

ção d

o T

ipo d

e C

ontra

to

APF

Homem Hora (HH)

• “Body shopping” , “time and material”

• Equipe mista

• Nem sempre apenas um fornecedor

• Infra-estrutura própria

• Remuneração

• Nível de qualificação

• Experiência dos profissionais

• Horas apropriadas

24

HH - Por um lado

• Simples administração

• Flexibilidade

• Agilidade em picos de demanda

• Mudança real dos requisitos:

• Aumento de escopo

• Aumento do esforço

• Aumento da fatura

• É justo. Responsabilidade direta do contratante

25

HH - Por outro lado

• Quantidade mínima de horas:

• Mês ou ano

• Potencial subutilização de recursos

• Garantia

• Gerenciar a produtividade dos contratados:

• Competência não necessariamente disponível

• Remuneração não vinculada a resultados

• Falta de estímulo ao aumento de produtividade

• NÃO é justo. Responsabilidade do contratado

26

Aplicação da APF x HH

• Monitoramento da qualidade

• Defeitos

• quantidade, severidade, origem ...

• Funcionalidade fornecida (pontos de

função)

• Monitoramento da produtividade

• Pessoal envolvido em manutenção

• Baseline ou base instalada

27

Preço Global Fixo (PGF)

• Privilegia a abordagem de projeto

• Exige maior grau de organização

• Quanto melhor definidos estiverem os requisitos, menor a

chance de atritos

• Em geral:

• O fornecedor não dispõe de muita informação

• Ele não dispõe de tempo para análise detalhada

• Superdimensionamento ou subdimensionamento (mais

provável)

• Ambos assumem que os requisitos não mudam

• Mas eles mudam... 28

Os requisitos mudam... • Quanto maior a duração do projeto, mais provável de

ocorrer

• Nova negociação (aumento do escopo): como saber se

as condições originais serão mantidas?

• APF como fator de normalização

• Dimensionar o projeto original

• Calcular o valor unitário

• Aplicar os números ao objeto da mudança de

escopo

• Instrumento de COMUNICAÇÃO

29

Quem disse que eles

mudaram?

30

Medição da variação do

escopo

31

[1.200 PF] Especificação Inicial

de Requisitos

[1.500 PF] Projeto de

Alto Nível

[1.700 PF]

Projeto

Detalhado

Estimativa Dimensionamento

[1.900 PF] Produto

Entregue

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

Estimativa Incial...: 1.200 PF

Produto Entregue.: 1.900 PF

Crescimento.........: 58,3%

( 1.900 – 1.200 ) * 100

1.200

Projeto A Equipe 1

Preço Unitário (PU) • Remuneração sobre elementos do projeto

• Relatórios, telas, tabelas, casos de uso, linhas de código, pontos de função

• Equilibrar riscos

• Produtividade e qualidade - Contratado

• Escopo - Contratante

• Desafio: O elemento

• Reconhecido pelo contratante e contratado

• Uniforme

• Consistente

32

Por que APF como unidade

• Pontos de função como unidade padrão

• Método padrão de medição funcional

• Centenas de empresas e profissionais

• IFPUG - organização responsável

• Pontos de função facilitando a comunicação

• Vocabulário independente da tecnologia

• Perspectiva do negócio

33

Quem usa APF em contratos

• BANDES

• CEF

• SERPRO

• PM- SP

• DATAPREV

• CORREIOS

• BRADESCO

• ABN/REAL

• EXÉRCITO 34

• PETROBRÁS

• EMBRATEL

• PRODEB

• EDS

• POLITEC

• MSAInfor

• DBA

• CPM

• STEFANINI

Visão Geral da APF

35

Definição da APF

• Método Padrão para Medir Software do Ponto de

Vista do Usuário através da quantificação da

Funcionalidade Fornecida

36

Objetivos da APF

37

Objetivos da Técnica •Medir a Funcionalidade que o usuário solicita e recebe

•Medir o desenvolvimento e melhoria 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

Componentes da contagem

38

Processo de contagem

39

ANÁLISE DE

PONTOS DE FUNÇÃO

CARTÃO DE REFERÊNCIA

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

Recommended