50. Qual a diferença dos métodos COSMIC e IFPUG?

 

O método do COSMIC está para o método do IFPUG na medição do tamanho funcional como o C# está para o COBOL nas linguagens de programação.

 

Por que uma funcionalidade de transação pode chegar no máximo a 07 PF quando usamos o método do IFPUG? Porque o estudo para criar o método foi realizado com uma amostra de 22 projetos entre 1974 e 1979 e os números usados nas tabelas de complexidade nasciam a partir de:

 

"Essas contagens são ponderadas pelos números projetados para refletir o valor da função
para o cliente. As ponderações utilizadas foram determinadas por debates e julgamentos. Esses
pesos têm nos dado bons resultados:
• Número de Entradas x 4;
• Número de Saídas x 5;
• Número de Consultas x 4;
• Número de Arquivos Mestre x 10;" - Allan Albrecht em Medindo a Produtividade do Desenvolvimento de Aplicativos (1979).

 

Ter previamente definidos esses pesos entre 3 e 15 PF por funcionalidade provoca uma série de problemas. Fenômenos como o aumento da variabilidade em estimativas e a maior dificuldade no planejamento e na avaliação de desempenho no contexto em que a métrica está inserida (projeto, empresa, equipe, etc.). Por exemplo:

 

• Como tratar a contagem dos dados de código em um cenário em que os mesmos necessitam de uma apropriação direta de custos? Uma transação de manutenção em dados de código, no mínimo, contribuiria (se fosse medida) com 03 PF; estaria muito próximo à uma manutenção cadastral ainda que a diferença no esforço seja brutal?

 

• Como lidar com as várias funcionalidades com diversas pequenas variações e, ainda assim, no máximo pode contribuir com 07 PF? Ainda que exijam um esforço bem maior que outras, todas esbarram no mesmo teto?

 

A resposta para todos essas questões é considerar que há momentos em que se apura uma produtividade maior que a produtividade média e há momentos em que se apura uma produtividade menor que a produtividade média... Mas será que é necessária uma dispersão tão grande? Usando o método do COSMIC, não.

 

No método do COSMIC, não há qualquer critério empírico de complexidade. Não há entendimento comum na comunidade de engenharia de software do que seja complexidade! O método simplesmente conta cada movimentação de um grupo de dados entre o software e o usuário, ou entre o software e algum mecanismo de armazenamento, como uma unidade, um ponto de função COSMIC.

 

Outra diferença entre os dois métodos é o tratamento de manutenção. Enquanto o método do IFPUG considera apenas funcionalidades incluídas, alteradas e excluídas, o método do COSMIC considera os movimentos de dados incluídos, alterados ou excluídos. Com isso dando uma solução muito mais eficaz que a solução dada pelo IFPUG e muito mais elegante que a adoção de fatores de impacto entre 0,25 e 1,50 pela NESMA em seu ponto de função de melhoria. Com a abordagem do COSMIC, os resultados da medição podem ser usados em diversos casos que - quando medidos usando o método do IFPUG - ficam classificados como requisitos não funcionais e que não podem ser medidos por um método de medição do tamanho funcional.

 

O método do IFPUG trabalha essencialmente com a medição em uma camada de aplicação. Isso dificulta a medição do software em cenários que envolvem, por exemplo, a troca de uma infraestrutura de suporte como um banco de dados, sistema operacional ou servidor de aplicação. Já o método do COSMIC tem intrínseco em seu modelo o conceito de camada e o papel de usuário que um software em uma camada superior tem em relação ao software em uma camada inferior.

 

Além do conceito de camada, o COSMIC traz o conceito de componentes pares, que permite que uma mesma aplicação seja medida considerando, por exemplo, a sua camada de apresentação, sua camada de regras de negócio e sua camada de persistência. Obviamente a soma das partes será maior que o todo por a medição das partes considerar movimentos internos; contudo, o método orienta em como se trabalhar nesses cenários.

 

Enquanto no método do IFPUG há uma página descrevendo o que seja propósito, escopo e fronteira da aplicação, no método do COSMIC há toda uma fase denominada Estratégia da Medição para colocar o software em análise no modelo de contexto de software com as diferentes camadas e componentes pares conforme os objetivos da medição e os requisitos do usuário.

 

  

Gostou de nosso FAQ?

 

 

 

Confira a nossa lista completa de perguntas e respostas sobre a Análise de Pontos de Função.  Clique aqui.

 

 

.

 

.