Propósito: apresentar conceitos e técnicas para estimar os recursos e a duração das atividades em gerenciamento de projetos tradicional
1. Projetos (aplicável em diversos contextos)
Quando trabalhamos com gestão de projetos nas empresas, estamos lidando com recursos finitos, ou seja, as restrições em projetos – tempo, custo, escopo, qualidade e recursos – permeiam durante todas as fases do projeto.
Na fase inicial do projeto, as estimativas são indicadores decisivos de viabilidade do projeto. O Business Case apresenta uma visão de custo e prazo para execução do projeto, além do retorno econômico. Mesmo em fases posteriores de planejamento, execução, monitoramento e controle do projeto, as estimativas são revisadas o tempo todo para atualizar a visão do projeto e mitigação dos riscos.
As informações históricas são bem vindas para aprimorar as estimativas. Também é recomendável que a estimativa seja feita pela própria pessoa executora da tarefa para melhorar a exatidão. Em gestão tradicional de projetos, as estimativas podem se basear na EAP (Estrutura Analítica do Projeto) que possui a decomposição dos pacotes de trabalho.
Principais técnicas de estimativas
- Estimativas análogas (top-down): utilizam informações históricas e de especialistas e históricas para estimar o projeto. Podem ser feitas para um projeto ou por atividade.
- Estimativa única: baseia-se em uma única estimativa por atividade. A estimativa deve ser feita pelo executor, por um especialista ou informações históricas. Em equipes de baixa maturidade, o Gerente do Projeto tem a função de impedir aumentos arbitrários.
- Estimativas paramétricas: calculam as projeções utilizando registros históricos (projetos anteriores) e outras informações, podendo ser por:
- Análise de Regressão (diagrama de dispersão): rastreia duas variáveis e verifica se estão relacionadas, criando uma fórmula matemática para uso em estimativas paramétricas futuras.
- Curva de Aprendizado: aumento da eficiência com o aprendizado.
- Análise de Regressão (diagrama de dispersão): rastreia duas variáveis e verifica se estão relacionadas, criando uma fórmula matemática para uso em estimativas paramétricas futuras.
- Heurística: processo cognitivo não racional para facilitar a resolução de problemas, por exemplo, a regra da qualidade 80/20. Sugere que 80% dos problemas são provocados por 20% das possíveis causas de problemas.
- Estimativa de três pontos (PERT): medir os desvios em relação ao plano para realinhar a execução do projeto ao plano. Indica o grau de incerteza da estimativa.
2. Projetos de TI (aplicável em estimativas de software)
No contexto de gestão tradicional de desenvolvimento de sistemas, podemos destacar algumas técnicas de estimativas:
- APF (Análise de Pontos de Função): procura medir o que o software faz, e não como ele foi construído. Explicarei mais detalhes abaixo.
- COCOMO (Constructive Cost Model): prevê o número de programadores/mês e o tempo de desenvolvimento, utilizando medidas de linhas de código ou Pontos de Função. Esta técnica supõe que não haverá alterações consideráveis nas especificações de requisitos do sistema.
- Linhas de Código (LOC)
- Métricas de Hasltead: quantifica os vocábulos e a extensão do algoritmo do estudo com análise e quantificação de operandos e operadores.
- Puttnam’s Slim Model: relaciona nº de linhas de código ao tempo e esforço de desenvolvimento. A desvantagem é a sua vinculação à linguagem usada.
- Delphi: consulta de especialistas de determinada área para fazer estimativas empíricas.
- PSP (Personal Software Process): criada com a função de capacitar e otimizar o processo individual de trabalho.
- PCU (Pontos por Caso de Uso): adaptação do PF para medir o tamanho de projetos de software orientados a objeto.
Análise de Pontos de Função – APF
A Análise de Pontos de Função (APF) permite criar métricas para medir o prazo, o esforço e o custo do desenvolvimento de um software. Para isso, envolve sete etapas:
- Etapa 1 e 2: abordam os tipos de contagem e o escopo da aplicação.
- Etapa 3 a 6: contagem de requisitos funcionais e não funcionais.
- Etapa 7: cálculo final em Pontos de Função da aplicação.
As classificações dos tipos de funções são funções de dado (ALI e AIE) e funções de transação (EE, SE e CE):
- Arquivo Lógico Interno (ALI): grupo lógico de dados mantidos na fronteira da aplicação, por exemplo, os arquivos de configuração.
- Arquivo de Interface Externa (AIE): grupo lógico de dados mantidos na fronteira de outra aplicação, referenciado pela aplicação que está sendo contada.
- Entrada Externa (EE): processo elementar que processa os dados vindos de fora da fronteira da aplicação. Ex.: incluir, gravar, excluir, alterar, etc.
- Consulta Externa (CE): processo elementar que envia dados para fora da fronteira da aplicação. Ex.: relatórios ou consultas que não contenham cálculos.
- Saída Externa (SE): semelhante a CE, mas com algum cálculo adicional. Ex.: informações em formato gráfico e relatórios com totalização de valores.
E na prática, a APF utiliza a tabela abaixo como fator de ajuste para realizar as estimativas.
Exemplos
1) Após a APF da aplicação, considerou-se que ela possui 3 ALI’s complexos, 3 AIE’s simples, 5 EE’s médias, 7 SE’s médias e 8 CE’s complexas. Ou seja:
ALI’s = 3×15 = 45
AIE’s = 3×5 = 15
EE’s = 5×4 = 20
SE’s = 7×5 = 35
CE’s = 8×6 = 48
Sendo assim, a soma de todos os valores representa o total de 163 pontos brutos.
2) Em um projeto de desenvolvimento de novas features de sistema baseada em PF, consideramos os seguintes dados:
- Fator de ajuste da complexidade: 1,17
- Total de pontos de função: 320
- Produtividade organizacional média: 6,5 PF/pessoas mês
- Valor bruto salarial: R$ 8.000,00 / mês
E então calculamos o custo por PF, aplicando uma simples regra de três:
6,5 PF – R$ 8.000
1 PF – x
x = R$ 1.230
Ou seja, o custo por PF é de R$ 1.230.
Referências
- PMBOK 4ª, 5ª e 6ª edição