Fone: +55 51 3084 3122 E-mail: pmtech@pmtech.com.br
perguntas frequentes

Análise por Pontos de Função, APF

Respostas para dúvidas comuns sobre Pontos de Função, medição funcional de software, IFPUG, contagem, produtividade, esforço, contratos e estimativas.

visão geral

O que esta página explica

A Análise por Pontos de Função mede o tamanho funcional do software do ponto de vista do usuário. Por isso, é útil para estimativas, controle, contratação, acompanhamento e formação de indicadores de produtividade e qualidade em desenvolvimento de software.

Medida externa

Considera a funcionalidade solicitada e recebida pelos usuários, independentemente da solução técnica usada.

Fator normalizador

Ajuda a comparar produtividade, taxa de entrega, densidade de defeitos e outros indicadores.

Uso em contratos

Pode apoiar quantificação de serviços, estimativas, acompanhamento e subcontratação de software.

conceitos básicos

Perguntas frequentes

O que são Pontos de Função?

Pontos de Função são uma medida funcional de tamanho de software. A técnica foi introduzida em 1979 por Alan Albrecht, da IBM, e aberta à comunidade em 1984.

Uma medida funcional considera a funcionalidade solicitada e recebida pelos usuários. Nesse sentido, é uma medida externa, pois avalia o que é percebido pelos usuários do produto de software, independentemente da forma de implementação.

O que significa FPA?

FPA significa Function Point Analysis. Em português, o termo pode ser traduzido como Análise por Pontos de Função ou Análise de Pontos de Função.

padronização

IFPUG e Manual de Práticas de Contagem

Quem padroniza a APF?

A contagem dos Pontos de Função é regulamentada pelo IFPUG, International Function Point Users Group, organização internacional sem fins lucrativos sediada nos Estados Unidos.

O IFPUG publica o Counting Practices Manual, CPM, que estabelece padrões para o cálculo dos Pontos de Função e mantém a certificação profissional na técnica.

O BFPUG, Brazilian Function Point Users Group, é a representação oficial do IFPUG no Brasil.

Como obter o Manual de Práticas de Contagem do IFPUG?

O CPM é fornecido pelo IFPUG. Filiados ao IFPUG podem fazer download conforme as regras da entidade. Não filiados podem adquiri-lo junto ao IFPUG.

A versão original do manual está em inglês. Há versões em outros idiomas, incluindo português.

gestão de projetos

APF, projetos e contratos

Há alguma relação entre APF e gestão de projetos?

A APF é usada na área de desenvolvimento de software como método para medir tamanho funcional. Ela não é, por si só, uma técnica de gerenciamento de projetos.

Mesmo assim, pode ser uma ferramenta útil para gerentes de projetos de software, pois a medição ajuda a dar visibilidade a requisitos, escopo, produtividade, qualidade, custo, esforço e estimativas.

No que se baseia a contagem dos Pontos de Função?

A contagem considera cinco tipos de componentes de software: arquivos internos, arquivos externos, entradas, saídas e consultas. Esses termos têm significado específico na FPA, e sua identificação exige conhecimento especializado.

Os Pontos de Função são usados como fator normalizador do tamanho do software, permitindo métricas como produtividade, taxa de entrega, densidade de defeitos e outras.

Também é comum seu uso em contratos de fornecimento de software, seja por preço por ponto de função, seja por quantificação de serviços mediante medições.

contagem

Como a contagem é feita

Os Pontos de Função medem as horas necessárias ao desenvolvimento?

Não. Embora exista relação entre o tamanho funcional de um software e o esforço de desenvolvimento, Pontos de Função não medem diretamente o esforço.

O tamanho em Pontos de Função é apenas um dos fatores que influenciam esforço e custo. Também influenciam plataforma, arquitetura, metodologia, testes, complexidade, reutilização, experiência da equipe, ferramentas e grau de confiabilidade requerido.

Como os Pontos de Função são contados?

A contagem é feita com base na especificação do sistema, complementada por informações dos usuários e analistas.

Componentes considerados

  • Arquivos Lógicos Internos: arquivos mantidos e utilizados pelo sistema contado.
  • Arquivos de Interface Externa: arquivos utilizados pelo sistema contado, mas mantidos por outros sistemas.
  • Entradas Externas: transações cujo objetivo é manter arquivos ou alterar o comportamento do sistema.
  • Consultas Externas: transações que apresentam informações sem gerar dados derivados, atualizar arquivos ou usar cálculos.
  • Saídas Externas: transações que apresentam informações, podendo gerar dados derivados, atualizar arquivos ou usar cálculos.

Etapas do processo

  • Identificação: os componentes são identificados a partir de regras específicas.
  • Complexidade e contribuição: cada componente recebe complexidade baixa, média ou alta e uma contribuição em Pontos de Função.
  • Pontos de Função não ajustados: soma das contribuições dos componentes identificados.
  • Pontos de Função ajustados: resultado após aplicação das Características Gerais dos Sistemas, quando aplicável.
Que tipos de contagem podem ser realizados?

A contagem pode medir diferentes situações, usando a mesma técnica, mas variando o que é considerado:

  • Projeto de sistema: inclui o sistema entregue, modificações realizadas ao longo do projeto e programas necessários à implantação.
  • Alteração em sistema: inclui componentes incluídos, alterados e removidos.
  • Sistema: mede o tamanho funcional do sistema entregue aos usuários.
produtividade e estimativas

Uso de APF para estimar software

Existe uma tabela de produtividade por linguagem de desenvolvimento?

No passado, a SPR, Software Productivity Research, disponibilizava uma tabela de linguagens de programação com níveis e intervalos de produtividade estimados. A própria SPR retirou a tabela do ar e depois voltou a oferecê-la como serviço pago.

A linguagem de programação é apenas um dos fatores que afetam a produtividade. Também influenciam a confiabilidade requerida, metodologia, testes, complexidade dos algoritmos, plataforma, interface, reutilização, experiência da equipe, disponibilidade de ferramentas e outros fatores.

Existe tabela de linhas de código, SLOC, por Ponto de Função?

A quantidade de linhas de código por Ponto de Função varia bastante, inclusive dentro de uma mesma linguagem. Há tabelas históricas, como SPR e QSM, mas seus valores devem ser tratados apenas como referência.

A recomendação é medir alguns projetos da própria organização para determinar uma razão média SLOC/PF adequada ao contexto real.

referências complementares

Links úteis

Quer aprender a aplicar APF?

Conheça o curso de Análise por Pontos de Função da PM Tech, com foco em implementação e prática.

ver curso de APF

Quer levar o curso para sua empresa?

O treinamento in-company pode ser adaptado ao contexto de estimativas, contratos, métricas e projetos de software da organização.

solicitar proposta