Bei der Arbeit mit einem Softwarepaket fiel die Bemerkung dass man den ganzen Mist wegwerfen und neu entwickeln sollte. Mir fiel dazu ein dass es ein Tool gibt mit dem die Entwicklungskosten für Softwareprojekte abgeschätzt werden kann: ohloh.net berücksichtigt dazu im wesentlichen die Anzahl der Quellcodezeilen, das darunterliegende COCOMO-Modell, das zwar nicht völlig aus der Luft gegriffen ist, effektiv aber wohl auch nicht viel mehr bringt als eine Glaskugel.

Trotzdem: die Zahlen die dabei rausfallen sind schon beeindruckend. Selbst wenn man nur die Anzahl der Codezeilen ansieht, nicht die daraus folgenden Kosten (die mit $55k pro Personenjahr angesetzt werden):

Projekt Codebase Size Estimated Effort Estimated Cost
Apache HTTP Server 2.268.153 Zeilen 645 Personenjahre 35.476.462 Dollar
Apache OpenOffice 23.105.092 Zeilen 7361 Personenjahre 404.853.843 Dollar
Gimp 728.523 Zeilen 201 Personenjahre 11.034.951 Dollar
GNU Compiler Collection 6.435.383 Zeilen 1956 Personenjahre 107.585.880 Dollar
Linux Kernel 16.411.777 Zeilen 5321 Personenjahre 292.631.874 Dollar
MySQL 12.566.154 Zeilen 4009 Personenjahre 220.473.614 Dollar
Nagios 240.833 Zeilen 61 Personenjahre 3.334.334 Dollar
Perl 5.422.092 Zeilen 1664 Personenjahre 91.502.061 Dollar
PHP 2.281.573 Zeilen 653 Personenjahre 35.901.501 Dollar
Python Programming Language 908.412 Zeilen 251 Personenjahre 13.822.126 Dollar
Samba 1.554.832 Zeilen 442 Personenjahre 24.330.106 Dollar
Zabbix 279.878 Zeilen 73 Personenjahre 4.036.481 Dollar

Wie gesagt: alles nur Glaskugel, und sicher gibt es tausend Unwägbarkeiten wie autogenerierten Code, oder unterschiedliche Kosten für unterschiedlich qualifizierte Programmierer.

Für 300 Millionen Dollar würde ich persönlich aber durchaus anfangen einen Kernel zu schreiben… selbst wenn ich damit rechne bis zur Rente noch 30 Jahre hacken zu müssen, müsste der rechnerisch bis dahin ja nur 0,56% der Funktionalität bringen ((1 / 5321) * 30 * 100 = approx. 0.5638038)… wenn ich mir die richtigen 0,56% raussuche passt das schon… :-)