Was würde Open-Source Software kosten?

Den folgenden Artikel hat Alexander ursprünglich in seinem Blog gepostet. 

Wie erklärt man jemanden die Wertigkeit einer Sache die kostenlos ist? Es heißt „man bekommt immer genau das, wofür man bezahlt“. Was bekommt man aber wenn man nichts bezahlen muss und es trotzdem bekommt? Für eine Software die unter einer Open-Source Lizenz verfügbar ist lässt sich das schwer erklären. Immer wieder bemerke ich, dass proprietäre Software im Vergleich zu einer Open-Source Software bei einigen, gefühlt, eine höhere Wertigkeit besitzt. Schließlich bezahlt man dafür.

Das sich in unserer Welt alles um Geld dreht weiß man nicht erst seit STS. Deshalb habe ich versucht die Entwicklungskosten einer Open-Source Software anhand dem Beispiel TYPO3 zu berechnen. 

Nicht Freibier, sondern Redefreiheit

Open-Source Software ist kostenlos. Sie kann von jedem frei benützt, geändert und weitergegeben werden. Allerdings definiert sich das „frei“ nicht im Sinne von „Freibier“ sondern viel mehr im Sinne von „Redefreiheit“. Wer 10 Sekunden darüber nachdenkt entdeckt den Unterschied. Redefreiheit ist ein Privileg. Freibier etwas tolles am Wochenende. Eine genauere Definition von Open-Source ist bei der OSI verfügbar oder auf meiner Seite zu Open-Source

Softwarekosten berechnen

David A. Wheeler hat 2001 eine Studie veröffentlicht, in der er die Herstellungskosten des Betriebssystem Linux (Red Hat) mit Hilfe von COCOMO, einem algorithmisches Kostenmodell das 1981 bei Boeing entwickelt wurde, zu berechnen. Nach seiner Kalkulation würden sich die Herstellungskosten des frei verfügbaren Betriebssystems im Jahr 2001 auf 1 Billion Dollar belaufen und es hätte knapp 6,5 Jahre gedauert wenn die Entwicklung bezahlt werden müsste wie etwa beim Betriebssystem Windows von Microsoft. Das bei Boeing entwickelte Kostenmodell ging von der Anzahl der geschriebenen Code-Zeilen aus die nötig waren, damit eine Software einen bestimmten Zweck erfüllte. Die Anzahl der Zeilen war die Basis für die Berechnung der Gesamtkosten eines Projekts. Das Kostenmodell wurde oft kritisiert, da es zu Beginn einer Entwicklung sehr schwer war die Anzahl der benötigten Code-Zeilen zu schätzen. Deshalb wurde 1997 COCOMO II publiziert das auch andere Faktoren berücksichtigte. Für meine Berechnung ist ,wie bei Wheeler auch, die Anzahl der Code-Zeilen jedoch eine sehr gute Basis, da ich die genaue Anzahl der Code-Zeilen kenne.

Berechnung der Code-Zeilen

Die Anzahl der Code-Zeilen bezeichnet die Informatik als SLOC (source lines of code). Wheeler berechnete die Anzahl mit einem von Ihm geschriebenen Programm. Da das Programm aber nicht die Programmiersprachen von TYPO3 auswerten kann, habe ich für die Berechnung das ebenfalls frei verfügbar cloc verwendet. Ausgewertet wurde die TYPO3 Version 4.7.1 ohne das Introduction package.

Lines

Aus der Berechnung geht hervor, dass TYPO3 aus 10 verschiedenen Programmiersprachen besteht und 452.185 Zeilen Software-Code enthält. 

Wieviel sind 450.000 Zeilen?

Was bedeutet dieses Zahl? Alle die sich nicht in der Informatik auskennen, können damit erstmal nichts anfangen.Bei Wheeler habe ich noch andere Berechnungen gefunden. So hatte beispielsweise das NASA space shuttle flight control 1.8 Mio Zeilen Code (420TSD für das Shuttle und 1.4 Mio für das ground control). Microsoft Windows 98 brachte es auf 18 Millionen Zeilen. Die Von Wheeler untersuchte Linux-Version kam auf 30 Mio. 

Entwicklungsdauer & Kosten

Nach dem COCOMO-Modell dürfen nur reine Code-Zeilen in der Berechnung berücksichtigt werden. Die Multiplikatoren im Modell berücksichtigen dann die Zeit und Kosten für das Erstellen der Kommentare und der Dokumentation der Software. Das Modell berücksichtigt nicht die Zeit für Planung, Abstimmung und Organisation der Arbeiten. Unter Anwendung des COCOMO-Modells würde es nach meinem Berechnungen ~1.400 Personenmonate benötigen um eine Software wie TYPO3 zu programmieren. Bei der Berechnung der Entwicklungszeit (TDEV = time to develop) berücksichtigt das Modell die Tatsache, dass sich die Zeit nicht linear zum eingesetzten Personal verkürzt. Die Entwicklungsdauer würde ~ 2,7 Jahre betragen. Die monatlichen Personalkosten wurden anhand einer Studie mit 4.200 EUR berücksichtigt (Software-Ingenieur, FH).

Die berechneten Entwicklungskosten belaufen sich demnach auf ~ 5.8 Millionen Euro.

Auswertung

Fazit

Man bekommt nicht immer das wofür man bezahlt. Manchmal bekommt man auch mehr. Sehr viel mehr. Open-Source ist eine großartige Idee um Wissen und Technologie zu teilen und anderen zu ermöglichen neue Dinge aus vorhandenem zu erschaffen. Das Internet wie wir es kennen, würde es ohne Open-Source nicht geben. Webserver, Datenbanken, Programmiersprachen, Content-Management Systeme, Browser, E-Mail Programme. Vieles ist als freie Software verfügbar und wird eingesetzt. Meist sehr viel häufiger als Software die nicht frei ist. Die Kosten stehen dabei meist nicht im Vordergrund. Freie Software funktioniert häufig einfach sehr viel besser.

Ich hoffe Sie denken nächstes mal kurz an meinen Artikel, wenn jemand von der Wertigkeit von Open-Source redet. Alleine die Code-Zeilen von TYPO3 hätten genügt um das space shuttle zu fliegen. [aw]

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s