Arquivo da tag: APF

Esforço, Produtividade e Custo utilizando Análise de Pontos de Função (APF)

Pare de fazer isso!

Hoje recebi uma mensagem através do LinkedIn de um rapaz que não conheço, perguntando algumas questões relacionadas a esforço, produtividade e custo utilizando Análise de Pontos de Função (APF). Quem é da área sabe que este assunto é SUPER recorrente e super controverso. Algumas (muitas) pessoas tendem a não se aprofundar no tema e querer apenas respostas rápidas (não estou dizendo que é o caso do colega que me enviou a mensagem). Infelizmente não existe resposta curta e rápida para isto. Se não quiser resposta superficial, recomendo ler e se aprofundar. E cuidado, pois tem muita gente dando resposta superficial por aí (e perdendo milhões por isso, já vi e calculei de perto).

Aproveito para compartilhar o e-mail que enviei como resposta (com algumas alterações e ênfases, rs) para quem mais se interessar:

Diversos fatores podem impactar o esforço para se desenvolver 1 PF (e consequentemente a produtividade e o custo).

Citando alguns: Metodologia de desenvolvimento (ágil? tradicional?), existência/qualidade/complexidade/estrutura/tamanho da documentação, experiência da equipe, conhecimento do negócio pela equipe de dsv, maturidade da organização e da equipe de dsv, reuso de software, ambiente físico, linguagem de desenvolvimento, utilização de frameworks, uso de componentes, tamanho não-funcional do sistema, etc, etc, etc, etc, etc, etc, ETC!!!!!!!!!!…)

Em relação ao último item citado, lembre-se que APF mede apenas o tamanho funcional do sistema. Os requisitos de qualidade e os requisitos técnicos (conforme ISO/IEC 14143-1) não estão contemplados no tamanho em pontos de função. Leve isto em consideração, pois você pode se deparar com sistemas/manutenções com grande tamanho funcional e pequeno esforço técnico ou sistemas/manutenções com pequeno (ou nenhum) tamanho funcional e grande esforço técnico.

O ideal é utilizar uma metodologia que considere, não só o tamanho funcional medido em APF, mas também os demais requisitos de qualidade e técnicos (pesquise por “COCOMO”) (ou daqui a alguns meses pesquise por “SNAP – Software Non-functional Assessment Process”, que está atualmente em fase de beta-test pelo IFPUG).

A título de referência, neste site você encontrará diversos preços cobrados para o desenvolvimento de 1 PF em contratos públicos:
http://www.fattocs.com.br/editais.asp

Repare que a faixa de valores varia bastante e tem alguns pontos fora da curva. Eu julgo que atualmente, para médias e grandes organizações, um valor razoável está entre R$ 400/PF e R$ 700/PF, dependendo do cenário.

Para produtividade, você também encontrará uma faixa bem grande de valores no mercado, variando de 3hs/PF a até 25hs/PF. Novamente, a título de referência dê uma olhada neste site: http://www.blogcmmi.com.br/engenharia/produtividade-das-linguagens-em-pontos-por-funcao-apf.

O MAIS IMPORTANTE: Se estiver começando a utilizar APF em sua organização, passe a registrar o quanto antes os dados de esforço, produtividade, tamanho funcional, tamanho não-funcional, custo, para cada demanda, começando a formar assim a SUA PRÓPRIA base histórica. Ela é a melhor fonte para tomada de decisão futura. Melhor do que qualquer site ou valor de outras organizações que você encontrar.

Abraços e boa sorte!

PS: Análise de Pontos de Função não é esse demônio todo como algumas pessoas insistem em dizer… E nem é essa cocada toda como outras pessoas insistem em idolatrar… Um dia tento me inspirar para falar mais sobre o meu posicionamento em relação a APF, em quais cenários acho que ela serve bem e em quais cenários NÃO recomendo sua utilização ;-)