|
Qual a produtividade do JAVA?
Esta pergunta está incluída
aqui porque de fato ocorre muito. O importante é saber que um dado como a produtividade
(média) do JAVA só faz sentido em comparações. Por exemplo, se você mediu a
produtividade de um projeto cuja principal linguagem foi JAVA, pode querer saber se a
mesma foi maior ou menor do que a de outros projetos realizados no mesmo ambiente. Não é
adequado utilizar uma produtividade obtida junto a terceiros sem realizar medições.
Feita esta ressalva, vamos ver como a pergunta acima pode ser respondida.
- O banco de dados do International Software Benchmarking
Standards Group (ISBSG) é uma importante fonte de dados sobre projetos. Na versão 7
do ISBSG há apenas 4 (quatro) novos desenvolvimentos, com dados confiáveis, cuja
principal linguagem de programação é JAVA. As produtividades desses projetos aparecem
visualmente no gráfico abaixo. O de menor produtividade está próximo de 10 H/PF.
O de pior produtividade, um pouco abaixo de 60 H/PF. Digamos que a média seja um pouco
menos de 30 H/PF e a mediana, próxima de 20 H/PF. Isso não nos diz qual valor deve ser
utilizado em um caso específico. Como vamos saber se o projeto que desejamos estimar
está próximo do mais produtivo, da média, da mediana, ou do menos produtivo?

|
- O objetivo deste exemplo é mostrar
que não se pode tomar uma boa decisão tendo apenas uma produtividade média. Seria
preciso, também, conhecer outros atributos dos projetos, para saber por que um projeto
tem a produtividade próxima de 60 H/PF, enquanto outro a tem próxima de 10 H/PF. Além
disso, seria necessário saber em que faixa de produtividade a nossa organização está
operando. Sem isso, o dado estatístico nos dará apenas a ilusão de que não estamos
simplesmente "chutando". E, é claro, 4 projetos é uma quantidade muito, muito
pequena.
|
- Repare, no entanto, que muitas
"estatísticas" de produtividade não dizem em quantos projetos as mesmas se
basearam...
- Vejamos o que dizem outras
fontes, tais como o David
Consulting Group, uma das empresas de FPA mais conhecidas e respeitadas nos EUA.
No site do DCG, a produtividade é informada em Pontos de Função
por Pessoa-Mês. Sabendo-se que o DCG utiliza um mês com 120 horas, essas produtividades
podem ser convertidas para H/PF. Teremos então (dentre outros) os números abaixo:
| Client/Server |
6,7
H/PF |
| Web |
4,4
H/PF |
| e-Business Web |
7,5
H/PF |
- O JAVA deverá situar-se,
possivelmente, próximo de Client/Server e e-Business Web. Como conciliar esses números
com os do ISBSG? Se colocarmos todos os números citados no mesmo gráfico, teremos a
próxima figura.
- :
 |
- Agora temos uma variação ainda
maior. O mínimo está abaixo de 10 e o máximo continua próximo a 60. A média desceu
para um número próximo a 20 e a mediana, para algo em torno de 17.
-
- Se aproveitarmos o fato de JAVA e C++
serem linguagens algo semelhantes (ambas orientadas a objeto, sintaxe um pouco parecida),
poderemos encontrar cerca de 20 projetos no banco de dados do ISBSG, misturando JAVA e
C++. A produtividade média desses projetos ficará entre 17 e 18 H/PF.
-
- Para não confundir o leitor, vamos
reconhecer que a produtividade média dos projetos que utilizam
JAVA deve estar entre 15 e 20 H/PF. Mas não é essa a questão.
|
- O problema é que o seu projeto pode
estar bastante distante disso, dependendo das demais características do mesmo. É por
essa razão que a resposta para a pergunta "Qual a produtividade do JAVA" não
deve ser dada apenas com um número. Mais uma vez, é preciso medir para
ter segurança nos resultados.
|