Mentoring: A análise de pontos de função é uma métrica funcional de software bastante difundida. Embora sua teoria seja bastante simples, sua aplicação prática traz uma série de dúvidas.

Este artigo serve como apoio na elaboração da contagem de pontos de função em situações bastante comuns de serem encontradas no dia a dia. Várias destas situações foram extraídas de experiências, relatos e depoimentos de profissionais.

É interessante compartilhar os questionamentos mais frequentes, além das conclusões e do raciocínio aplicado em cada caso. Serão apresentados cenários relativos a quantidade de consultas, carga única de dados, utilização de componentes, múltiplas consultas externas, processos batch, dentre outras.

Imagine que vamos construir um muro e precisamos contratar uma empresa imediatamente. Inicialmente fazemos a medição do comprimento e altura, e a partir destes dados já é possível fazer cotação com empresas e profissionais.

A empresa estima o custo e o tempo para construir, e fazemos a contratação por m2/h. Após a empresa iniciar seu trabalho, informamos que o acabamento deve ser feito com o pincel especial – ele é bem pequeno e fino, é o menor que existe, somente com este pincel o acabamento fica perfeito.

Ainda tentando entender como utilizar o novo artefato, a empresa nos informa que o tamanho do muro será alterado, pois a contratação feita requer metragem maior, consequentemente custo e tempo de execução maior.

Parece um absurdo, pois o comprimento e a altura não são alterados, mas de toda a forma somos levados a crer que o tamanho do muro torna-se pequeno para o trabalho a ser realizado. Como o contrato está fechado, iniciam-se as discussões em torno da medição inicial, pois é o único caminho para o ajuste do custo e do tempo.

É desta forma que o mito inicia “Como a metragem é injusta, nos faz trabalhar de forma adicional”, “a empresa está trabalhando praticamente sem lucro”, “esta forma de medir é muito cruel”.

Há um grande mito por trás de um erro no uso da técnica de pontos de função. Quando entramos no detalhe do desenvolvimento do sistema, entendemos melhor o acabamento que deve ser feito e percebemos que há problema no contrato fechado por ponto de função.

Ou até simplesmente ignoramos outros fatores relacionados a produtividade da construção e utilizamos mal o tamanho funcional.

Ponto de função é uma medida como o metro quadrado, ambos auxiliam o entendimento do tamanho e possibilitam a geração do custo e tempo de construção, mas não é o suficiente para tal.

São necessárias outras definições, como a forma do acabamento, massa, ladrilho, pastilha, cimento, etc. Assim como no exemplo da construção do muro, na construção de um sistema é preciso identificar qual a tecnologia, padrões de acessibilidade e interface visual, framework, expertise da equipe na tecnologia a ser utilizada, componentes prontos, etc.

A fronteira da aplicação é uma interface conceitual entre aplicação ‘interna’ e mundo ‘externo’ do usuário; atua como uma membrana através da qual os dados processados pelas transações passam para dentro e para fora da aplicação; encapsula os dados lógicos mantidos pela aplicação (ALIs); auxilia na identificação dos dados lógicos referenciados, mas não mantidos pela aplicação (AIEs); é dependente da visão de negócios externa do usuário; e é independente da tecnologia.

Algumas dúvidas surgem na identificação do processo elementar: apesar de ser conceitualmente fácil de entender é na tradução e identificação nos casos reais que surgem as confusões. De acordo com o Manual de Práticas de Contagem de Pontos de Função - CPM, o Processo elementar é a menor unidade de atividades significativa para o usuário.

Deve ser completo, autocontido e deixar o negócio da aplicação que está sendo contada em estado consistente. Traduzindo o conceito, o processo elementar é um pedaço do sistem ...

Quer ler esse conteúdo completo? Tenha acesso completo