A Análise de Pontos de Função (APF) é uma técnica para a medição de projetos de desenvolvimento de software, visando a estabelecer uma medida de tamanho, em Pontos de Função (PF), considerando a funcionalidade implementada, sob o ponto de vista do usuário. A medida é independente da linguagem de programação ou da tecnologia que será usada para implementação. Sob esse contexto, os objetivos da APF são medir a funcionalidade solicitada pelo usuário:
- A antes do projeto de software, de forma a estimar seu tamanho e seu custo; sem medir projetos de desenvolvimento e manutenção de software, independentemente da tecnologia utilizada na implementação, de forma a acompanhar sua evolução; medir a funcionalidade recebida pelo diretor da instituição, após o projeto de software, de forma a verificar seu tamanho e custo, comparando-os com o que foi originalmente estimado.
- B depois de definido o projeto de software, de forma a estimar seu tamanho e seu custo; medir projetos de desenvolvimento e manutenção de software, dependendo da tecnologia utilizada na implementação, de forma a acompanhar sua evolução; medir a funcionalidade recebida pelo usuário, após o projeto de software, de forma a verificar seu tamanho e custo, comparando-os com o que foi originalmente estimado.
- C antes do projeto de software, de forma a estimar seu tamanho, sem se preocupar com o custo; medir projetos de desenvolvimento e manutenção de software, independentemente da tecnologia utilizada na implementação, sem acompanhar sua evolução; medir a funcionalidade recebida pelo usuário, após o projeto de software, de forma a verificar seu tamanho e custo, comparando-os com o que foi originalmente estimado.
- D antes do projeto de software, de forma a estimar seu tamanho e seu custo; medir projetos de desenvolvimento e manutenção de software, independentemente da tecnologia utilizada na implementação, de forma a acompanhar sua evolução; medir a funcionalidade recebida pelo usuário, após o projeto de software, de forma a verificar seu tamanho e custo, comparando-os com o que foi originalmente estimado.
- E se o projeto for desenvolvido em JAVA, de forma a estimar seu tamanho e seu custo; medir projetos de desenvolvimento e manutenção de software, independentemente da tecnologia utilizada na implementação, de forma a acompanhar sua evolução; medir a funcionalidade recebida pelo usuário, após o projeto de software, de forma a verificar seu tamanho, independente do custo, comparando-os com o que foi originalmente estimado.