Open Source

aus GlossarWiki, der Glossar-Datenbank der Fachhochschule Augsburg
Wechseln zu:Navigation, Suche

Dieser Artikel sollte auf Korrektheit, Quellenangaben und GlossarWiki-Konformität hin überprüft werden.

1 Definition

Open Source (engl.) ist Software, die unter einer von der Open Source Initiative (OSI) anerkannten Lizenz steht. Die OSI stützt sich bei der Bewertung auf die Kriterien der Open Source Definition. Diese geht weit über die Verfügbarkeit des Quelltexts hinaus und ist fast deckungsgleich mit freier Software, d.h. der Quelltext muss auch offen für Bearbeitung und Weiterverbreitung sein.

2 Entstehung

Wie entsteht ein Open-Source-Projekt und wie wird es geleitet? Viele Entwickler ärgerten sich über Probleme mit kommerzieller Software. So war es auch bei Richard Stallman: Er wollte am Massachusetts Institute of Technology einen Druckertreiber verbessern. Mitarbeiter im Netz sollten eine Mitteilung erhalten, wenn der Druckauftrag nicht ausgeführt werden konnte, weil etwa ein Papierstau entstanden war. Eigentlich eine leichte Aufgabe für den Programmierer - wenn der Druckerhersteller sich nicht geweigert hätte, den Quellcode für den Treiber herauszugeben. Stallman war gezwungen, einen komplett neuen Treiber zu schreiben; sein Ärger darüber bekräftigte ihn in dem Entschluss, ein wirklich freies, für jeden zugängliches System zu schaffen.

Ähnlich ist der Ursprung vieler Open-Source-Entwicklungen. Ein Software-Entwickler hat ein bestimmtes Problem und versucht, es zu lösen. Er schreibt ein neues Programm und veröffentlicht es mitsamt dem Quellcode. Erweist sich die neue Software als nützlich, so wird sie von vielen anderen getestet. Sollten Fehler auftreten, so werden sie entweder von den Testern, die sich an den Fehlern stören, behoben oder der Urheber der Software erhält eine Mitteilungen über den ,,Bug (Fehler) und kann ihn selbst beheben. Je größer die Zahl der interessierten Anwender, umso größer ist die Chance, Fehlern auf die Spur zu kommen.

Das Offenlegen der Quellcodes führt außerdem dazu, dass die Programme erweitert oder abgewandelt werden können. Es entstehen Anwendungen, die in vielen Bereichen einsetzbar sind.

Ein wichtiger Punkt für die hohe Qualität von Open-Source-Produkten ist, dass sie schon vor Herausgabe des ersten vollen Releases Anwendern und Testern zugänglich sind, die sie bereits in diesem frühen Stadium prüfen und Verbesserungsvorschläge anbringen können. Sie tragen dazu bei, dass der Weg zum stabilen Produkt verkürzt werden kann.

Wie funktioniert die Zusammenarbeit bei Open-Source-Projekten? Die Gründer eines Open-Source-Projektes sind häufig auch die Projektleiter. Um sie entwickelt sich ein Team von Programmierern, das sich besonders für das entsprechende Produkt interessiert. Wenn sich das Projekt weiterentwickelt, werden diese Teammitglieder oft zu sogenannten Maintainern, die für einzelne Bereiche zuständig und verantwortlich sind. Die Mitarbeit an einem Open-Source-Projekt steht grundsätzlich jedem offen. Grundlage für die Zusammenarbeit ist das Einhalten offener Standards für Protokolle, Dateiformate und Schnittstellen, welche die Basis für die Entwicklung bilden.

In das Kernteam aufgenommen zu werden, ist für die meisten Entwickler eine Auszeichnung. Der Einfluss der Gründerriege auf das endgültige Produkt ist dabei unterschiedlich. Oft entscheiden letztlich ihre Mitglieder, ob eine Software geändert oder ein neuer Baustein hinzugefügt wird.

Wie finanzieren sich Open-Source-Projekte? Ein Kostenfaktor, der auch bei kleineren Open-Source-Projekten entsteht, ist die Anbindung ans Internet. Der Austausch von Daten erfolgt häufig über einen Web- oder FTP-Server - diese Server stellen Dateien zur Verfügung, die über das Internet heruntergeladen werden können. Die Kommunikation mit den anderen Entwicklern erfolgt über Mailinglisten oder in Newsgruppen. Die dabei entstehenden Kosten sind jedoch relativ gering.

Anders sieht es bei großen oder sehr speziellen Projekten aus: Da große Projekte von sehr vielen Entwicklern unterstützt werden, führt das zu einem hohen Datenaufkommen. Die Server müssen darauf eingerichtet sein; denn bei solchen Projekten ist mehr Plattenplatz für die Daten, vor allem aber eine bessere Anbindung ans Internet unabdingbar. Bei Projekten, die sich mit der Portierung von Softwareprogrammen auf unterschiedliche Hardware befassen, müssen zudem unterschiedliche Rechner bereitstehen. Das lässt sich nicht zum Nulltarif realisieren, gerade wenn große und schnelle Server benötigt werden.

Oft leben die Programmierer eines Groß-Projektes überall auf der ganzen Welt und kommunizieren lediglich per Internet miteinander. Um ihnen die Möglichkeit zu schaffen, sich persönlich zu treffen und neue Ideen zu diskutieren, werden Treffen organisiert. Das ist nur mit finanzieller Unterstützung etwa durch Firmen möglich.

3 Beispiele

  • Office Software - OpenOffice
  • Graphic Software - Gimp
  • E-mail Software - Thunderbird
  • CAD Software - FreeCAD
  • WEB Browsers - Firefox, SeaMonkey
  • FTP & Copying - FileZilla
  • Audio Software - AudaCity
  • Antivirus - ClamWin

4 Quellen