Tutorial mini projeto parte 2 – Estimativa utilizando APF – Análise de pontos por função - Blog CMMI & MPS.Br

Tutorial mini projeto parte 2 – Estimativa utilizando APF – Análise de pontos por função

By on December 10, 2009

No post Tutorial mini projeto – o nascimento da idéia iniciamos um mini tutorial de um projeto.
Apenas relembrando, no final geramos a seguinte tela:

Tela do mini projeto

A tela foi aprovada e seu cliente (que é seu amigo) indaga:  “Legal, é isso mesmo que eu quero. Quando você me entrega e quanto isso vai me custar?”

Você poderia responder essa pergunta de dois jeitos: Um, chutando, outro, fazendo uma estimativa de custo, prazo e esforço. Obviamente você opta pela segunda (certo?).

Bom… com a tela em mãos, vamos usar uma técnica de estimativa, existem várias, mas, vamos escolher APF – Análise de pontos por função.

Para efeito didático, vamos usar uma visão simplista do APF, mas é bom lembrar que a técnica é muito interessante e assertiva. Eu particularmente sempre recomendo o uso de APF.

Primeiramente existem 5 elementos* que podem ser contados em APF:

  • Entradas externas (EE)
  • Consultas externas (CE)
  • Saídas externas (SE)
  • Arquivos lógicos internos (ALI)
  • Arquivos lógicos externos (ALE)

sponsor* Vou deixar para vocês irem atrás do que é cada um

Existe uma tabela de pesos de cada elemento de APF por complexidade. Pra definir se algo é simples, médio ou complexo existem critérios, mas por ora, vamos definir que tudo é de complexidade média, assim facilitaremos nossa contagem.

sponsorAgora, vamos analisar a tela e ver o que teremos que fazer… bom… como é um cadastro de contatos, obviamente vou precisar de uma tabela para guardar os contatos (1 arquivo lógico interno). Também vou precisar mostrar os dados do contato em uma tela e isso me gera uma consulta externa. Meu amigo me pediu que os contatos fosse agrupados, então vou precisar de uma função para criar os grupos (1 entrada externa). Também vou precisar de uma função para criar o contato (+1 entrada externa), e não posso esquecer de uma função para alterar os dados(+1 entrada externa). E por último, vou precisar listar os contatos e grupos (+1 consulta externa).

Terminamos uma etapa, agora vamos colocar os pesos conforme a tabela acima (lembrando… é tudo médio), e após fazer as contas chegamos ao tamanho. Em outras palavras, o projetinho do seu amigo tem o tamanho de 30 PFs.

Para facilitar, vamos colocar identificar os elementos, tipos e valores na nossa tela:
Tela do projeto com os elementos identificados, valores e tipos

Bom… assim ficou bem mais fácil, mas… por enquanto você só tem o tamanho. Como calcular custo, esforço e prazo?

Primeiramente você deve conhecer sua produtividade nas linguagens que você domina. A produtividade nada mais é do que quantas horas você precisa para produzir um ponto por função.

Você domina as linguagens ASP, C# e Java e tem as seguintes produtividades:

  • ASP : 6h
  • C# : 7h
  • Java : 10h

Agora é só fazer as contas… Se você fizer o sistema em ASP vai precisar de 180h (30PFs x 6h). Se fizer ele em C# (.Net) vai precisar de 210h (30PFs x 7h). E se fizer em Java vai precisar de 300h (30PFs x 10h).

Você opta por desenvolver em .Net por já ter uma boa biblioteca de componentes para reutilizar. Então você passa para seu amigo 210h (esforço).

Você respondeu uma das  perguntas do seu amigo, agora vamos responder a de prazo. Se você fizer o sistema sozinho vai precisar de 27 dias (210h / 8h por dia). Já se você chamar um amigo pode entregar na metade do tempo (dois trabalhando).

E por ultimo o custo. Supondo que você vá cobrar do seu amigo R$ 40,00 por hora, então o sistema custará a ele R$ 8.400,00.

Resumindo, o projeto vai precisar de 210h, levando 27 dias a um custo de R$8.400,00.

Para completar, e facilitar mais um pouco, segue a tela com as contagens e identificações.
Tela estimativa APF com elementos (EE, CE, SE, ALI, ALE), pesos, produtividade e cálculo de APF.

[Idéia baseada em uma apresentação de Carlos Cadu – Fatto Consultoria em APF]

About Washington Souza

Black Belt, Washington Souza tem mais de 10 anos de experiência com gestão. Participou de implantações em todos os níveis CMMI e MPS.Br A. Gosta muito de Six Sigma e gestão como um todo.

One Comment

  1. Kris Batrez

    April 16, 2017 at 6:13 pm

    I appreciate you sharing this article post.Really looking forward to read more. Awesome.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.