De onde é isso (originalmente) ?: “80% do custo da vida útil de um software é destinado à manutenção” [fechado]

9

No documento das convenções de codificação Sun Java (aqui: http://www.oracle.com/technetwork/java/codeconv-138413.html ), ele afirma:

"80% do custo vitalício de um software é destinado à manutenção"

Alguém sabe de onde essa estatística é originária? Não duvido da afirmação, mas também posso criar estatísticas sem atribuição e gostaria de saber de onde veio isso antes de começar a usá-lo como base para outras declarações.

Dan Coates
fonte
6
76,3% de todas as estatísticas são feitas no local
Steven A. Lowe
2
@ Lowe, isso é 76,37% ou 3/5. E as estatísticas nunca mentem.
Christopher Mahan

Respostas:

6

Você precisa primeiro definir o que significa manutenção. Geralmente, os custos de manutenção acima de 50% incluem aprimoramento e remoção de defeitos.

O número de 80% não parece ser diretamente atribuível a um estudo específico, mas você pode encontrar vários números confiáveis ​​na faixa> 50% nos estudos mencionados nesta página: https://web.archive.org/web/ 20120313070806 / http: //users.jyu.fi/~koskinen/smcosts.htm

Tabela 3-7 de Applied Software Measurement, terceira ed. lista que dos 8200 projetos estudados, apenas 2410 eram novos desenvolvimentos. 1385 eram projetos de manutenção e o restante, projetos de aprimoramento. Isso corresponde a aproximadamente 70% dos projetos que mantêm o código existente.

Joeri Sebrechts
fonte
2

A regra prática de 80-20 é muito comumente invocada em muitos contextos, como números de amostras concretas substituindo a frase "a grande maioria".

Essa pode ser apenas uma invocação.

yfeldblum
fonte
-7

das convenções de código Java - 12 de setembro de 1997 pela Sun Microsystems.

Você verá esta citação na introdução do documento em

1.1 Por que ter convenções de código

  • 80% do custo vitalício de um software é destinado à manutenção
  • Quase nenhum software é mantido por toda a vida por seu autor original
  • As convenções de código melhoram a legibilidade do software, permitindo que os engenheiros entendam o novo código de maneira mais rápida e completa
  • Se você enviar seu código-fonte como um produto, verifique se ele está bem embalado e limpo como qualquer outro produto criado.

Até 2011, este documento está bastante datado. Software e sistemas estão sendo desenvolvidos em uma variedade de linguagens, incluindo e excluindo Java.

No entanto, o Java é muito lento e possui um espaço de memória extremamente grande comparado ao C / C ++. Quando alguns usuários experimentam o quão lento o Java realmente é executado em comparação com outras linguagens como PHP, C / C ++, etc, eles geralmente pensam que algo está errado com o programa. O dinheiro é gasto na tentativa de melhorar o desempenho sem sucesso. Por esse motivo, sempre questiono a motivação das pessoas para pular no titânico e zarpar. Como não faz sentido implementar muitos programas em Java, especialmente onde o desempenho ou a pegada de memória é uma preocupação.

Na verdade, eu vi pessoas gastando mais tempo implementando algo em Java por uma implementação Java do que gastariam implementando o mesmo software que um script bash no Linux ou em Python ou C ++.

Não estou dizendo que evite Java a todo custo, mas há uma ferramenta certa para o trabalho certo e há muito mais ferramentas que Java hoje em dia.

Parabéns à Apple por finalmente descontinuar o Java.!

jcpennypincher
fonte
8
O OP está procurando a fonte original dessa citação e / ou evidência estatística, não discursando sobre Java.
Péter Török
4
Isso não responde à pergunta e não ajuda em nada.
KeesDijk
1
Honesto, mas fora do tópico :)
dsimcha