3. APF ESTENDIDA: MÉTRICA DE SOFTWARE BASEADA NA ABORDAGEM DAS DIMENSÕES TECNOLÓGICA E AMBIENTAL/CONTEXTUAL
Esta dissertação de mestrado é de autoria de Augusto Gonçalves Sousa e apresenta uma proposta renovada e abrangente
para o fator de ajuste (VAF) existente atualmente na técnica de pontos de função do IFPUG, contemplando características
gerais de sistema relativas à parte tecnológica e ambiental. O trabalho traz também dois capítulos bem interessantes que
abordam a fundamentação teórica das medições e um resumo das técnica de medição de software existentes.
Este é um termo usado pelo manual do IFPUG para identificar as transações nas quais há
uma apresentação de dados para o usuário, mas que não está claramente explícito nos
requisitos ou no próprio sistema (nem em opções de menu, barras de ferramenta, etc).
Isto é bem comum em telas para alteração ou exclusão de registros de um arquivo.
Normalmente antes da alteração ou exclusão, os dados do registro são apresentados ao usuário.
Abordagem
=========
Quando a consulta implícita atender à definição de processo elementar e for um
requisito do usuário, ela deve ser considerada na contagem de pontos de função;
e poderá ser classificada como uma consulta externa (CE) ou saída externa (SE),
dependendo das lógicas de processamento envolvidas na transação.
Voltando então ao exemplo da tela de alteração ou exclusão de registro: há duas
transações envolvidas, a entrada externa de alteração ou exclusão e a consulta
externa (ou saída externa) referente à consulta implícita.
Porém deve-se ter o cuidado de não contar a mesma função mais de uma vez.
Muitas vezes já há uma consulta explícita que faz o mesmo papel da consulta implícita.
Sendo assim, conta-se apenas uma das funções. Pode ser o caso dos campos
apresentados na consulta implícita serem diferentes (em geral menos campos) da
consulta implícita. Inclusive a consulta implícita da alteração pode ter campos
diferentes da consulta implícita da exclusão. De acordo com as regras de unicidade
do processo elementar, se são campos distintos nas transações, tem-se então três
funções distintas (a consulta explícita, a consulta implícita da alteração e a
consulta implícita da exclusão).
Porém antes de considerar três funções na contagem da aplicação, é fundamental
avaliar o que o usuário tem de requisito para a situação. Se para o usuário, a
consulta explícita puder ser usada para a apresentação dos dados precedendo a
alteração e a exclusão (em substituição às consultas implícitas), deve-se contar
uma única função. O fato da implementação do desenvolvedor usar três funções distintas
para a situação não implica que deve-se contar todas as funções. Deve sempre haver uma
justificativa (aprovação ou solicitação do usuário) para que as funções sejam contadas.
Outro cuidado é com relação à manutenção; pode haver alteração em uma regra de negócio
da transação de alteração ou exclusão que fará com que estas funções sejam contadas no
projeto de melhoria, porém se a consulta implícita não for alterada, não deve fazer
parte da contagem do projeto de melhoria.
O responsável pelos requisitos deve atentar para a necessidade ou não da diferenciação
das consultas implícitas das consultas explícitas, pois quando surgirem manutenções e
se as consultas forem distintas, provavelmente sempre que a consulta explícita tiver
que ser alterada, a implícita acabará também tendo que sofrer manutenção.