Introdução
Certamente você, caro leitor, já deve ter ouvido falar sobre contratos firmados e mal sucedidos. Especialmente na esfera do desenvolvimento de software. Analisando mais detalhadamente esse problema, é possível identificar diversos aspectos que contribuem para a concretização dessa situação. Dentre os mais comuns podemos destacar:
- Requisitos especificados de forma incorreta ou ambígua;
- Estimativas não confiáveis (falta de mão-de-obra qualificada);
- Domínio do problema mal compreendido;
- Constante mudança de requisitos;
- Pressões externas não gerenciadas.
Em seguida, irei apresentar as três modalidades de contratação mais comuns na área de desenvolvimento de software: homem/hora, preço global fixo e preço unitário. Apresentarei suas vatagens e desvantagens do pontos de vista do cliente e como a APF (Análise de Pontos de Função) pode ajudar a obter benefícios em cada caso.
Homem/Hora
Também conhecida como body shopping ou time material, na contratação homem/hora a empresa contrata profissionais para a alocação no desenvolvimento do software, usualmente em conjunto com sua própria equipe, e utilizando sua própria infra-estrutura logística.
- Vantagens
- Grande flexibilidade para ambos os lados, pois a contratante pode atender mais rapidamente aos picos de demanda, enquanto a contratada pode ser melhor remunerada caso haja um aumento de escopo e consequente aumento de esforço (horas trabalhadas).
- Desvantagens
- Subutilização dos profissionais contratados, à medida que a demanda de serviços diminui (prazo de contrato fixo);
- Contratante responsável pela produtividade dos contratados;
- Remuneração não vinculada à produtividade.
Podemos aplicar a APF para monitorar a produtividade da equipe, levando em consideração dois fatores: esforço (horas) e resultados (pontos de função). Sendo P = PF/E, podemos criar um gráfico mensal que represente o desempenho da equipe. A partir daí podemos tomar medidas estratégicas que visem alinhar o trabalho com as expectativas de negócio da empresa. O quadro abaixo, retirado do livro Análise de Pontos de Função: Medição, Estimativas e Gerenciamento de Projeto de Software, ilustra as vantagens e desvantagens dessa técnica.
Preço Global Fixo
Essa é uma modalidade bastante comum em contratos de prestação de serviços, pois privilegia a abordagem de projeto, com um início e fim bem definidos. Exige maior nível de organização tanto da contratante como do contratado.
- Vantagens
- O contratante sabe quanto vai pagar após a conclusão do projeto.
- Desvantagens
- Geralmente ocorre uma subestimação ou superestimação do orçamento proposto.
- Provável necessidade de renegociação de contrato.
A APF, nesse caso, seria utilizada como um fator de normalização. A contratante pode dimensionar o projeto originalmente contratado e calcular o valor unitário cobrado pela contratada com base na contagem de pontos de função do projeto inicial. Assim, qualquer serviço adicional poderia ter seu custo estimado e ser contestado pela empresa contratante caso o valor cobrado seja bem diferente do calculado.
Preço Unitário
Modelo que define remuneração para o fornecedor a partir dos elementos do projeto: tela, relatório, tabela, caso de uso, linha de código, stored procedure ou ponto de função. Procure equilibrar as deficiências dos modelos anteriores.
- Vantagens
- Em caso de aumento de escopo (mais elementos solicitados), fornecedor será remunerado.
- Desvantagens
- Negociações mais desgastantes no caso em que o fornecedor identificar necessidade de mais elementos para o projeto.
Analisando essa deficiência, urge a necessidade de encontrar uma unidade que elimine o lado técnico da comunicação entre os profissionais de TI e seus clientes. E é exatamente nesse ponto que a APF toca, pois ela define objetos de contagem que independem da tecnologia utilizada para o desenvolvimento de software.