A Análise de Pontos de Função (APF) mede os requisitos funcionais do usuário. Observe: a pergunta não fornece elementos para rastrear a criação da tabela de associação entre duas outras aos requisitos funcionais.

O importante é manter a simplicidade do método e não buscar uma correspondência perfeita entre cada elemento da implementação, como uma tabela por exemplo, com um componente funcional básico na medição.

Antes de tudo, precisamos avaliar se essa decisão remete a um requisito funcional do usuário ou uma resposta de projeto a um requisito não funcional.

Por exemplo, o usuário estabelece um requisito funcional de consultar quais os fornecedores de um determinado produto. Há requisitos não funcionais, que levam a decisão pelo uso de um banco de dados relacional; adicionalmente, deseja-se otimizar o uso de espaço em disco. Em resposta a esse conjunto de requisitos é incluída no banco de dados uma tabela “Fornecedor do Produto”, indicando quais os fornecedores de um determinado produto e quais os produtos são fornecidos por um fornecedor.

Observe que não há um requisito de armazenamento independente especificamente para o fim de armazenar esses dados. O conjunto com determinado produto e determinado fornecedor indicando o relacionamento entre os dois não é um grupo lógico de dados na visão do usuário. Trata-se de uma tabela de chave a chave (key-to-key) usada como solução de projeto para atender requisitos não funcionais. Considerando apenas o requisito funcional citado, a visão do usuário é de uma lista de fornecedores dependente do produto.

Se desconsiderarmos os requisitos não funcionais, então uma solução possível é acrescentar um campo no cadastro de produtos indicando cada fornecedor com várias ocorrências. Por isso este cenário não implica na inclusão de um novo Arquivo Lógico Interno na medição; mas a criação de um campo medido como um .

Mas observe que o caso “Novas tabelas de associação N:N” pode responder a outros requisitos funcionais. Por exemplo, vamos assumir, que o requisito do usuário não seja apenas consultar os fornecedores de determinado produto, mas também saber quais as condições de fornecimento como, por exemplo, o valor negociado com aquele fornecedor, quantidade mínima, prazo, etc.

Segue não havendo um novo grupo de dados, mas não se trata de agregar um campo e sim um subgrupo de dados dependente do produto. Na medição em pontos de função, esse subgrupo de dados é mapeado como um novo Registro Lógico Referenciado (ou Tipo de Registro) o que pode aumentar a complexidade do arquivo lógico produto.

Por fim, essa tabela de associação pode ser um grupo lógico de dados, independente de outros requisitos de armazenamentos ainda que relacionado com alguns deles. Nesse caso, haveria a medição de um novo arquivo lógico.