Artigo do BLOG

Pontos de função: um desabafo necessário

Há quase duas décadas, o Governo do Brasil contrata software utilizando uma forma de quantificação dos serviços que é considerada consistente e transparente: a Análise de Pontos de Função (APF). Esse é um case de sucesso, especialmente para nós brasileiros, que sempre sofremos da nossa “síndrome de vira-latas”; e é um fato ainda mais significativo pelo momento que estamos atravessando e pelas frequentes notícias que envolvem corrupção – acho que isso não precisa de maiores explicações.

Embora suspeito em falar a respeito, pois trabalho a mais de 10 anos com métricas de software e tenho participação ativa na comunidade, eu posso afirmar que a APF, seja ela mantida por IFPUG, NESMA ou COSMIC (sim, todos estes órgãos têm abordagens de pontos de função), é ainda hoje o melhor meio para avaliarmos eficiência nas atividades e operações de software.

Muitos de vocês talvez lembrem de experiências de uso da APF, principalmente nas abordagens do IFPUG ou da NESMA, seja no setor público ou privado; alguns com amor ou significado, outros com indiferença… e ainda outros, com desconfiança ou ódio.

Então, eu gostaria de chamar o foco do artigo para um esclarecimento, que na verdade é sobre uma injustiça que o mercado vem promovendo. Eu vou detalhá-la aqui, conforme minha percepção, por experiências passadas nesses últimos anos.

SIMPLICIDADE E SUBJETIVIDADE

Frequentemente, ouço falar que a APF é simples de aplicar, como os manuais costumam referir, e que é uma métrica subjetiva – ou seja, que depende do entendimento do analista.

Ocorre que a APF não é mais tão simples de aplicar no contexto de complexidade dos sistemas de informação da atualidade; e pasmem: tampouco é uma métrica subjetiva! Pelo contrário: exceto por pequenos itens que não deixam a comunidade de usuários totalmente segura na sua aplicação (vamos dizer que está 95% segura), a APF é incrivelmente atual e objetiva!

O que vejo muito, contudo, são profissionais que rotulam a métrica de “subjetiva”, mas que efetivamente não o falam com conhecimento de causa. Esquecem eles, que a métrica depende do entendimento do negócio e que quase não temos requisitos a explorar como base de conhecimento daquilo que o software se propõe a fazer (requisitos funcionais do usuário) e das restrições que pretende atender (requisitos não funcionais).

QUEM APLICA NÃO CONHECE

Há várias empresas, principalmente órgãos da iniciativa pública, que hoje contratam software usando pontos de função com o único objetivo de seguir as determinações a que eles se submetem, sejam federais, estaduais ou municipais (quando deveria ser algo maior do que isso).

Ocorre que na grande maioria das vezes, não há profissionais qualificados na área de métricas de software e/ou com a experiência e imparcialidade necessária para validar as contagens de pontos de função nessas organizações – outras vezes, sequer com o conhecimento necessário para escrever os editais, por vezes redigidos num estilo CTRL+C e CTRL+V de outros, e elaborado como uma grande colcha de retalhos; é importante destacar também, que é comum não existir mão de obra especializada do lado do fornecedor de software, ou sequer, alguma exigência disso num processo licitatório.

Para desenhar o absurdo que estou falando: imagine uma empreiteira que foi contratada com base no custo médio do metro quadrado, o CUB (analogia com o custo médio do ponto de função), onde então, você teria que contar metros quadrados construídos para então emitir a fatura; só que nosso exemplo, imagine que ninguém sabe exatamente como medir metros quadrados, seja da parte da contratante ou da contratada. Daí vem um construtor americano e ao invés do sistema decimal, usa a medida imperial… e está feita a deturpação do orçamento, mesmo que inconscientemente.

Só que não acaba por aí… se qualquer medida é medida e as pessoas não sabem exatamente o que estão fazendo ou não querem saber… possivelmente até convertendo horas em pontos e pontos em horas, as referências de custo e produtividade passam a ser mera e falsa formalidade, comprometendo a cadeia de fornecimento como um todo (já que aquele que considera as unidades conforme deveria ser, passa a não ser competitivo – e foi este um dos motivos que me fizeram escrever este artigo, já que isso tem sido um empecilho para novos negócios na empresa onde eu trabalho).

QUEM DEVERIA CONHECER, NÃO CONHECE TANTO

Se não bastasse, às vezes não há exigência de qualificação mínima daqueles que devem aplicar o método de pontos de função (na verdade, isso ocorre em muitos contratos da administração pública); e tampouco é licitado lote prevendo a contratação de empresa idônea para validar e/ou dar o seu parecer a respeito das contagens realizadas e utilizadas na relação comercial estabelecida entre as partes.

Com isso, elas ficam desassistidas de uma análise imparcial, que resolva eventual conflito e, também de alguém que como conhecedor de causa, se responsabilize pelo “certo ou errado”, terceirizando o risco jurídico envolvido (há várias empresas no Brasil que atuam como terceira parte a um custo acessível, onde indico as de maior expertise: ti Métricas e Fatto Consultoria).

Note que o fornecedor da relação é fortemente impactado principalmente quando não tem voz suficiente ou mesmo por não querer se indispor com o seu cliente, que algumas vezes se torna parcial em sua defesa; e nisso, tanto o órgão como o seu servidor também são impactados, em verdade, por estarem “assinando” algo pelo qual poderão ser inclusive responsabilizados no futuro.

NÃO FUNCIONA NO ÁGIL

Este é um mito que vem sendo levado aos quatro cantos, mas que também não faz sentido.

APF só não funciona num contexto ágil por dois motivos:

  • O contexto não é realmente ágil, é bagunça (caos)
  • A abordagem de métricas selecionada não é compatível com os artefatos gerados

CIO QUE TRABALHA ÀS CEGAS

É dificil de explicar, mas parece que as pessoas, de alguma forma, tentam e muitas vezes conseguem convencer seus CIOs a darem passos sem terem algum domínio a respeito dos seus números, ou seja, apenas “tateiam” com base em sentimentos… e olha que estamos num mundo orientado à dados, onde isso já não funciona! Não faz sentido correr tanto risco!

Contudo, também não basta um número qualquer, ele precisa responder ao(s) objetivo(s) de negócio. E isso é uma coisa que precisamos ter tempo para pensar: qual é o problema que eu preciso resolver?

NÚMEROS A FAVOR

Um dos principais benefícios ao usar pontos de função, é dispor de uma enorme base de projetos de software para realizar benchmarking, que é a forma como você sabe se os parâmetros da operação estão minimamente compatíveis com os parâmetros do mercado, considerando uma realidade similar.

Aqui reside uma observação, que ilustro com uma frase que aprendi com o meu amigo Fernando Monteiro (ti Métricas): “embora exista uma referência do número do sapato médio do brasileiro, não necessariamente eu uso ela para comprar os meus sapatos”. Logo, é fundamental avaliar o próprio contexto!

Não é porque que o mercado diz que a produtividade de 10 horas por ponto de função é o parâmetro a ser usado para desenvolver software numa determinada tecnologia que você precisa utilizá-la para o seu contexto! É necessário analisar processo, maturidade, ambiente de negócio e tecnológico, entre outros aspectos.

PONTOS DE FUNÇÃO COMO MOEDA

Embora seja um modelo econômico num primeiro olhar, trabalhar com o custo unitário do ponto de função como única variável numa modalidade de pregão (menor preço vence), pode se tornar até mais caro do que outras soluções mistas – modelo amplamente utilizado no Brasil. Peraí Ismael, você pirou neh???

Quando sua meta é produzir mais e mais, mesmo que tenha outras metas de qualidade associadas, você pode estar produzindo com o objetivo de maximizar os ganhos, sem pensar em valor para o negócio – e é exatamente aí que reside o problema!

Quando a parte que produz, maximiza as unidades construídas para maximizar também os seus lucros, implementando recursos que o usuário não necessariamente precisa (desperdício) ou ao menos, não necessariamente do modo com que ele vai perceber valor, nós criamos uma bolha, que estoura no momento em que o produto já não é mais visto como útil.

Os usuários então perdem o interesse no produto e deixam de usá-lo… e num belo dia, a solução é trocada.

Assim, embora pareça incoerente, na intenção de promover um modelo de maior economicidade, você criou um modelo mais caro, seja no curto, médio ou longo prazo.

O mais estranho é que no curto e médio prazo os custos são maiores do que aparentam e você nem percebe, tampouco sabe o quanto mais caro isso é, pois há funcionalidades sendo construídas sem uma perspectiva de valor (o que acontece quando você tira pedidos). No final, ninguém consegue mais separar o joio do trigo, e ainda passa trabalho para usar as features construídas. Agora você entendeu o motivo pelo qual trabalhar num modelo ágil e enxuto aparentemente custa mais caro num primeiro olhar?

Complementando, a longo prazo, sua empresa talvez perca alguns milhões, não só pelo produto que já não serve, mas também pelo déficit alcançado em valor de negócio, pelas oportunidades perdidas, pela eficiência do usuário final que foi comprometida, enfim… 

CONCLUSÕES

Não julgue o que não conhece suficientemente: APF pode não ser uma bala de prata, mas é ótima para análise de eficiência (se estamos otimizando o uso dos recursos) e ainda não se provou outra abordagem que seja melhor.

O custo unitário do ponto de função ao usar uma abordagem onde você tira pedidos, normalmente é pior do que aparenta, pois, o tamanho provavelmente foi deturpado por funcionalidades que não necessariamente agregam valor (você não precisa delas).

Ser ágil, não significa andar sem métricas, desde que elas façam sentido para dar visibilidade a quem precisa e frente a um ou mais objetivos específicos (acredito que quem não quer mostrar seus números, tem algo a temer).

E principalmente: a busca por um ESTADO MÍNIMO (leia-se talvez ESTADO ENXUTO), deve ser pensada em termos de EFICÁCIA, EFICIÊNCIA e principalmente EFETIVIDADE! Vamos ajudar a construir um país melhor para nós e para os nossos filhos?

Eficácia: fazer o que tem de ser feito

Eficiência: fazer otimizando os recursos utilizados

Efetividade: gerar valor para o negócio com base naquilo que foi feito

Share on linkedin
LinkedIn
Share on facebook
Facebook
Share on whatsapp
WhatsApp
Share on email
Email
Nossos Colunistas