07 - Análise de Pontos de Função
Nesma
IFPUG/CPM
Definição 1: Análise de Pontos de Função (APF) é uma técnica que permite medir as funcionalidades ou tamanho funcional de um software, independente de tecnologia e sob o ponto de vista dos requisitos funcionais do usuário
Counting Practices Manual (CPM)
benefícios
determinar o tamanho de um pacote adquirido
análise de produtividade e qualidade (a produtividade – diferente da funcionalidade – é dependente de tecnologia)
analisar se vale a pena comprar ou fabricar
determinar se os requisitos funcionais cresceram ou diminuíram
auxiliar na verificação da solidez e completeza dos requisitos especificados
estimar custo e recursos para o desenvolvimento e manutenção de software
fundamentar a negociação de contratos
componentes
Funções do Tipo Transação
Saída Externa (SE)
Funções do Tipo Dado
Consulta Externa (CE)
Arquivo Lógico Interno (ALI)
Sua função é armazenar dados mantidos dentro da fronteira da aplicação através dos processos da aplicação.
Arquivo de Interface Externa (AIE)
Entrada Externa (EE)
Seu objetivo é exibir informações recuperadas através de processamento lógico, i.e., que envolva cálculos ou criação de dados derivados e não apenas uma simples recuperação de dados
combinação de entrada/saída de dados onde uma entrada de dados causa uma recuperação e uma saída correspondente. A lógica de processamento não deve conter cálculo matemático ou criar dados derivados ou atualizar nenhum ALI
Operação R (read)
Os dados são armazenados fora da fronteira da aplicação. Um AIE de uma aplicação sempre será contado como um ALI na aplicação de origem
processa dados ou informações de controle recebidos de fora da fronteira da aplicação e cujo objetivo é manter um ou mais ALIs e/ou alterar o comportamento do sistema
Operações CUD (create, update, delete)
etapas do procedimento de contagem
Calcular Pontos de Função Não-ajustados (medem-se as funções de dados e as funções de transação)
Calcular Fator de Ajuste
Determinar o Escopo e Fronteira
Calcular os Pontos de Função Ajustados
Determinar o Tipo de Contagem
Projeto de Melhoria (somente evolutiva e, não, corretivas e preventivas) (EFP = ADD + CHGA + CFP + DEL)
Changed (Function Points) After Enhancements, Deleted (Function Points)
Projeto de Aplicação (AFP = ADD)
Projeto de Desenvolvimento (DFP = ADD + CFP)
Development Function Points, Additional (Function Point), Convertion Function Points
medir funções de dados
pela quantidade de Registros Lógicos Referenciados (RLR) - subgrupo de dados elementares referenciados
pela quantidade de Dados Elementares Referenciados (DER) - atributo único, reconhecido pelo usuário e não repetido
medir funções de transação
pela quantidade de Dados Elementares Referenciados (DER) - considera-se como o dado que atravessa a fronteira durante o processamento da transação.
pela quantidade de Arquivos Lógicos Referenciados (ALR) - é
um ALI/AIE que foi acessado por uma função de transação
São 14 características gerais do sistema
Com base nos requisitos do usuário, cada característica geral do sistema deve ter seu nível de influência avaliado numa escala de 0 a 5
Calcula-se o Fator de Ajuste a partir da soma dos pontos obtidos de cada
característica pela fórmula:
FA = (SNI*0,01) + 0,65. (SNI = Somatório do Nível de Influência)
Conclui-se, então, que as características gerais do sistema podem influenciar no seu tamanho variando no intervalo de -35% a +35%.
Basta calcular PFA = PFNA*FA
os pontos de função ajustados equivalem aos pontos de função não ajustados multiplicado pelo fator de ajuste calculado na etapa anterior
tipos de contagem
estimativa (média precisão)
mais rápida e imprecisa
detalhada (alta precisão)
semelhante à contagem do IFPUG.
indicativa (baixa precisão) (PFNA = 35ALI + 15AIE)
pode ser útil na análise de viabilidade de um projeto
Definição 2: A análise de pontos de função é uma técnica de medição das funcionalidades oferecidas por um software do ponto de vista de seus usuários com a qual se busca medir o que o software é capaz de fazer, e não a forma como ele foi construído
O conceito de projeto de melhoria do IFPUG envolve apenas a manutenção evolutiva
ISO/IEC 20926 (Norma que especifica um conjunto de
definições, regras e passos para aplicação da contagem de pontos de função do IFPUG)
a produtividade é expressa como o número de
pontos de função implementados por pessoa-mês
O NESMA utiliza o conceito de Deflatores, que é um artifício utilizado para reduzir distorções na contagem de projetos de melhoria.
IFPUG e NESMA são praticamente idênticos para cálculo em projetos de desenvolvimento e aplicação, mas não de Melhoria