Open Source Software

Aus Social-Media-ABC
Version vom 26. Oktober 2017, 14:14 Uhr von Phoeboe (Diskussion | Beiträge) (→‎Nachteile von OSS)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Definition

Open Source Software (OSS) muss folgende Kriterien erfüllen:

  • Freie Weitergabe: OSS darf frei, das heißt ohne Lizenzgebühren, auch an Dritte weitergegeben werden.
  • Offener Quellcode: Der Source Code ist quelloffen, das heißt frei zugänglich und leicht nachvollziehbar.
  • Abgeleitete Software: Der Source Code darf verändert und erweitert werden. Die daraus entstehenden produkte dürfen wiederum frei verbreitet werden.
  • Integrität des originalen Quellcodes des Autors: Je nach Lizenz müssen Originalcode und geänderter Code unterscheidbar sein.
  • Keine Einschränkung der Nutzer: Eine Diskriminierungen von Personen oder Gruppen ist unzulässig. Das heißt niemand darf von einem Open-Source-Projekt ausgeschlossen werden.
  • Keine Einschränkung der Nutzung: Die Einsatzfelder für OSS unterliegen keinerlei Einschränkungen.
  • Unmittelbare Lizenzerteilung und Produktneutralität: Die Freiheit des Einsatzes von OSS darf nicht in der Form eingeschränkt werden, dass beispielsweise der Kauf anderer Produkte notwendig wird.
  • Restriktionsfreiheit: OSS darf auch in Kombination mit kommerzieller Software eingesetzt werden.
  • Technologieneutralität: Die Lizenz, die OSS unterliegt, muss technologieneutral sein. Das heißt, es dürfen keine bestimmten Technologien oder Schnittstellen vorgeschrieben bzw. ausgeschlossen werden.

Dies bedeutet jedoch nicht, dass Open Source Software in einem rechtfreien Raum entsteht. Sie unterliegt in der Regel bestimmten Lizenzen.

Das grundlegende Ziel von Open Source Software formuliert die OSI (Open Source Initiative) folgendermaßen: „The basic idea behind open source is very simple: When programmers can read, redistribute, and modify the source code for a piece of software, the software evolves. People improve it, people adapt it. People, fix bugs. And this can happen at a speed that, if one is used to the slow pace of conventional software development, seems astonishing.“


Lizensierung

Unter die obige Definition von Open Source Software fallen derzeit etwa 100 verschiedene Lizenzmodelle, die von der OSI gelistet werden.

Das Copyleft-Prinzip eines Open-Source-Lizenzmodells ist ein wesentlicher Grundpfeiler der gesamten Lizensierung. Es besagt bei strenger Gültigkeit, dass Software, die von der ursprünglichen Software abgeleitet wurde, ausschließlich wieder unter der gleichen Lizenz weiterverbreitet werden darf. Dieses Copyleft-Prinzip ist in der GNU Public License GPL sehr stark verankert.

Andere Open-Source-Lizenzmodelle schränken es ein oder verzichten komplett darauf. Gerade letzteres ist für die kommerzielle Nutzung von OSS wichtig, denn die Befreiung vom Copyleft-Prinzip ermöglicht die Überführung von OSS in proprietären Code.

Die Lesser GNU Public License (LGPL) unterscheidet sich von der GPL sehr deutlich. Sie ist geeignet für Programmteile, etwa Bibliotheken, die von anderen Programmen lediglich extern genutzt werden. Während sich die GPL auch auf die aufrufenden Programme „vererbt“, ist dies bei der LGPL nicht der Fall. Das aufrufende Programm darf also unter einem beliebigen anderen Lizenzmodell vertrieben werden. Damit erlaubt die LGPL auch die Nutzung von Open-Source-Anteilen in kommerziellen Software-Projekten.

Links zum Thema Lizensierung:

  • gnu.org [1]
  • Ranking der am meisten verwendeten Lizenzen [2]


Vorteile von Open Source Software

Anpassbarkeit: OSS kann von jedem für individuelle Zwecke erweitert oder angepasst werden. Im Vergleich zu einer Neuentwicklung können damit umfangreiche Synergieeffekte realisiert werden. Die Vorteile von Standard-Software (bewährtes Grundprodukt) und Eigenentwicklung (Anpassung an individuelle Zwecke) können so vereinigt werden.

Wiederverwendbarkeit von Code: Durch die Verwendung von Komponenten eines OS-Produkts in eigenen Produkten kann Entwicklungszeit eingespart werden. Durch Studium von Quellcode anderer Entwickler findet auch ein Know-how-Transfer innerhalb der Entwicklergemeinde statt.

Geringe Kosten/keine Lizenzkosten: Für Unternehmen und Behörden mit ihren häufig knappen IT-Budgets hat Open Source Software den Vorteil, dass keine Lizenzgebühren gezahlt werden müssen. Selbst wenn die Software über Distributoren bezogen wird, fallen nur geringe Kosten an. Der Wegfall von Lizenzkosten wird oft als der zentrale Vorteil von OSS überhaupt betrachtet. Man muss hierbei aber einschränkend hinzufügen, dass die Lizenzkosten oft nur einen relativ geringen Anteil des Total Cost of Ownership von Software darstellen. Nichtsdestotrotz führt der Wegfall der Lizenzgebühren in vielen Fällen zu einer erhöhten Wirtschaftlichkeit von OSS gegenüber kommerzieller Software.

Anbieterunabhängigkeit/Unabhängigkeit von Lieferanten: OSS zwingt im Gegensatz zu manchem kommerziellen Pendant die Nutzer nicht in ein Abhängigkeitsverhältnis zu bestimmten Herstellern. Ein Diktat von (Nutzungs-) Bedingungen, wie dies bei kommerzieller Software durchaus üblich ist, muss ein Anwender von OSS nicht befürchten.Vielmehr genießen die Nutzer freier Software umfassende Freiheitsrechte in bezug auf deren Einsatz. Weiterentwicklung und Verteilung der Software werden von unabhängigen Entwicklergremien organisiert, es gibt daher keine Abhängigkeit von einem Hersteller. Insbesondere gibt es nicht die häufig gravierenden Probleme, die für einen Kunden entstehen können, wenn ein Lieferant von kommerzieller Software sich vom Markt verabschiedet oder die Weiterentwicklung eines Produkts einstellt.

Offene Standards/Standardkonformität: Da Open Source Produkte nicht wie kommerzielle Produkte im Rahmen einer langfristigen Releaseplanung weiterentwicklet werden, können sie aktuelle technologische Entwicklungen und neue Standards in der Regel viel früher berücksichtigen (kurze Innovationszyklen). Die von OS-Produkten verwendeten Dateiformate und Datenaustauschstandards sind über die Verfügbarkeit der Quelltexte per Definition offen gelegt. Dies hat eine höhere Kompatibilität und Interoperabilität von OSS-Produkten mit anderer Software zur Folge, da entsprechende Schnittstellen mit geringem Aufwand erstellt werden können und kein Interesse besteht proprietäre Schnittstellen zu verwenden. Damit ist die Voraussetzungen für die einfache Portierung auf andere Hardware- oder Software-Plattformen geschaffen. Open Source Software läuft daher häufig auf vielen Systemen, da sie leichter als die meiste proprietäre Software an die Hardware angepasst werden kann. Die Anwender bleiben bei der Auswahl der Hardware daher weitgehend ungebunden.

(Höhere) Sicherheit: Wegen der Verfügbarkeit der Quellprogramme ist der Einsatz von Open Source Software auch da von Vorteil, wo hohe Sicherheitsanforderungen gelten. Unter anderem ist sie auch besser vor Trojanischen Pferden geschützt als Software, deren Quellcode nicht eingesehen werden kann. Durch Hardening, ein gezieltes Abspecken, das bei den modular aufgebauten Open Source Produkten relativ leicht möglich ist, können zusätzlich die Risiken verringert werden: Wenn bestimmte Funktionen im Rahmen einer Anwendung nicht benötigt werden, so können diese in der Regel leicht ausgebaut oder stillgelegt werden. Oft wird OSS ein höheres Maß an Sicherheit zugesprochen als Closed Code Produkten. Da jeder Einsicht in den Quellcode nehmen kann, werden Sichheitslücken und -probleme schneller entdeckt, als dies bei kommerzieller Software der Fall ist. Die Möglichkeit zum Einbau von Hintertüren besteht bei freier Software ebenfalls nicht, da der entsprechende Code im Quelltext schnell auffallen würde.

Höhere Produktqualität/Qualität und Stabilität: Bei der Entwicklung von Open Source Software können neue Entwicklungen oder Änderungen schon von Anfang an von Anwendern und Testern begutachtet werden. Bei der Qualitätssicherung kommerzieller Software ist das anders. Hier wird in der Regel nur das Einhalten der Spezifikation getestet. Gezielte Reviews der Programmquellen werden im Gegensatz zu Open Source Projekten nur in ausgewählten Fällen durchgeführt. Der Freigabezeitpunkt hängt dann häufig auch weniger vom Erreichen einer bestimmten Qualität ab als von strategischen Überlegungen von Marketing und Vertrieb. OSS wird (zumindest von deren Befürwortern) eine tendenziell höhere Produktqualität zugeschrieben. Dies wird mit dem im Vergleich zu kommerzieller Software grundlegend anderen Entwicklungsprozess begründet, der für OSS gilt. Letztere unterliegt im Unterschied zu kommerzieller Software keinerlei Marktzwängen, insbesondere müssen keine festen Veröffentlichungstermine eingehalten werden.

Wartungsfreundlichkeit: Gerade für kleine und mittelständische Unternehmen oder die Öffentliche Verwaltung dürfte auch die Wartungsfreundlichkeit von Programmen mit offenem Quellcode von großem Vorteil sein. In den meisten Fällen ist es kein großes Problem, projektspezifische Änderungen, Erweiterungen oder Korrekturen der Software selbst durchzuführen, sofern das benötigte Know-how vorhanden ist.

Support: Um Probleme und Anforderungen zu verfolgen, verfügen viele Open Source Projekte über Fehlerdatenbanken, wo Benutzer die Möglichkeit haben, Fehlerberichte zu liefern und deren Bearbeitung zu verfolgen. Die Kommunikation von Problemen und deren Lösungen erfolgt über Mailinglisten und Newsgroups. Aufgrund der weltweiten Verbreitung dieser Gruppen und der großen Anzahl der Teilnehmer steht dieser Support praktisch rund um die Uhr mit kurzen Reaktionszeiten zur Verfügung. Kunden, die Wert auf kommerziellen Support beim Einsatz von Open Source Software legen, finden heute entsprechende Angebote bei Distributoren und spezialisierten Dienstleistungsunternehmen.

Offene Kommunikation: Treten bei einem Open Source Produkt Probleme auf, so werden diese normalerweise sofort und in vollem Umfang kommuniziert. Es kann rasch mit der Lösung des Problems begonnen werden. Bei kommerziellen Produkten ist es häufig nicht im Interesse des Herstellers Fehler und Probleme schnell oder gar überhaupt zu kommunizieren. Strategische Überlegungen können hier zu Verzögerungen und Verschleierungen führen.


Nachteile von OSS

Unerwartete Betriebskosten für Unternehmen:

  • nicht nur Lizenzkosten sind relevant, sondern „Total Cost of Ownership“ inkl. Folgekosten durch Anpassungen, Schnittstellen, Updates, Wartung etc.

Unsichere Rechtslage:

  • keine Garantie für die Funktionstüchtigkeit der Software
  • fehlende Gewährleistungs- und Haftungsansprüche von Seiten der Nutzer gegenüber Entwicklern
  • dadurch Einsatzrisiko
  • Tendenz allerdings auch bei kommerzieller Software zunehmend

Mangelnder Support durch Entwickler:

  • im Bedarfsfall Rückgriff auf Dienstleistung Dritter

Höherer Schulungsaufwand:

  • fehlendes unternehmensinternes Know-how wie auch Know-how auf dem Arbeitsmarkt, da viele (potenzielle) Mitarbeiter mit kommerziellen Softwareprodukten arbeiten
  • Konsequenz: vorübergehender Verlust von Produktivität bzw. längere Einarbeitungszeiten von neuem Personal
  • höhere Anforderungen an Anwender durch schlechte Oberflächengestaltung, komplizierte Bedienung, unzureichende Anwenderdokumentation etc.

Ungewisse Weiterentwicklung:

  • Aufgabe von OSS-Projekten jederzeit möglich aufgrund fehlender Verpflichtungen bezüglich Wartung und Pflege der Software
  • dadurch fehlende langfristige Planbarkeit des Softwareeinsatzes
  • allerdings auch bei kommerzieller Software kein Schutz vor Produkteinstellungen
  • bei OSS wenigstens Quellcode verfügbar und theoretisch eigene Weiterenwicklung und Wartung möglich

Benötigte Funktionen/Applikationen nicht verfügbar

Mangelnde Interoperabilität mit kommerzieller Software

  • Dateiformate und Schnittstellen kommerzieller Software liegen nicht offen, so dass OSS nicht ohne Probleme daran anknüpfen kann


Wirtschaftlichkeit

Die Frage, ob der Einsatz von OSS oder proprietäre Software für Unternehmen wirtschaftlicher ist, lässt sich nicht allgemeingültig beantworten, sondern ist vom jeweiligen Einzelfall abhängig. Die Durchführung einer Wirtschaftlichkeitsbetrachtung ist daher immer erforderlich.

Für OSS spricht der weitgehende Wegfall von Lizenzgebühren, für proprietäre Software spricht der vergleichsweise größere Umfang an verfügbarem Know-how. Hardwarekosten verhalten sich in einer vergleichenden Betrachtung der beiden Softwarearten weitgehend neutral.

Neuere Studien gehen von einer Einsparmöglichkeit von bis zu 30 % durch den Einsatz von OSS aus. Dabei können größere Unternehmen höhere Einsparpotenziale realisieren als kleinere Unternehmen (da deren Lizenzkostenblock meist höher ist). Finanziell besonders attraktiv sind OS-Produkte in den Bereichen Büroanwendungen, Server-Betriebssysteme, Datenbanken und Content Management Systeme.

Folgende Kriterien spielen bei der Überlegung eine Rolle, ob Open Source Software einge-setzt werden sollte:

  • Einsparung von Kosten (Lizenzkosten vs. Umstellungskosten ggf. mit Umschulungen der Mitarbeiter)
  • Verfügbarkeit notwendiger Funktionalitäten
  • Verträglichkeit mit der vorhandenen Infrastruktur
  • Vorhandensein von Migrationsstrategien
  • Akzeptanz bei den Mitarbeitern im Unternehmen (Fachabteilungen und Anwender)


Kommerzialisierungsmöglichkeiten/Commercial Open Source Software

Ein wesentlicher Aspekt für alle Visionäre der Open-Source-Bewegung war die Idee, mit Hilfe von OSS kommerzielle Erfolge zu erzielen. Insbesondere propagiert die Free Software Foundation die Vorstellung der Software als Dienstleistung.

Unter dem Begriff Commercial Open Source Software werden Geschäftsmodelle zusammengefasst, die in einem bestimmten Bereich OSS beinhalten. Zu unterscheiden sind vier verschiedene Grundtypen:

Doppel-Lizensierung: Hier lizensieren OSS-Hersteller verschiedene Versionen ihrer Software in unterschiedlicher Weise (Enterprise-, Professional-, Extended- oder Premium-Editionen im Gegensatz zu einer OS-Version) und stellen Features, die über eine (OS-)Basisversion hinausgehen, unter eine kommerzielle Lizenz (vertikale Mehrfachlizensierung). Dual Licensing ist allerdings sorgfältig zu trennen von der gängigen Praxis „Light“-Versionen kommerzieller Software kostenlos verfügbar zu machen.

Wenn OSS in proprietäre Software eingebunden wird, können Einschränkung der Nutzungsbedingungen und Einsatzmöglichkeiten vereinbart werden:

  • zeitlich (z. B. Verwendung für ein Jahr)
  • räumlich (z. B. Verwendung in Deutschland)
  • produktbezogen (z. B. Integration ausschließlich in Produkt X)
  • umfangbezogen (z. B. Verwendung ausschließlich innerhalb des Unternehmens X mit einer Anzahl von maximal Y Usern)

Horizontale Mehrfachlizensierung: Hier wird ein Gesamtpaket in einen Open-Source-Anteil und einen kommerziellen Anteil aufgespaltet, die jeweils für sich unterschiedlichen Lizenzmodellen genügen. Typisches Beispiel sind Entwicklungsumgebungen für Mikrocontroller, denen der Open Source Compiler gcc beigefügt ist.

Software als Dienstleistung: Hier wird Hosting, Wartung, Pflege der Installation von OSS in Rechnung gestellt. Die OSS gelangt in der Regel niemals auf die Computer der Kunden. Typisches Beispiel ist das Hosting von Websites auf Apache-Web-Servern.

Dienstleistung rund um Software: Hier wird die OSS auf den Computern des Kunden installiert, zu Wartung und Pflege kommen deshalb noch Schulungsmaßnahmen hinzu.


Gewinne können bei freier Software oft nur über Komplementäreffekte wie Anpassungen oder spezielle Erweiterungen der Software erfolgen, was aber nicht immer praktikabel oder überhaupt möglich ist. Schwierigkeiten hat insbesondere jene Software, die bereits optimal auf die Bedürfnisse der Anwender zugeschnitten ist – denn dort braucht es keine Anpassungen oder anderweitige Dienstleistungen mehr. Hier bleibt also nur die Finanzierung über Subventionen oder Steuern. Freie Software ist also nicht die institutionelle Lösung für sämtliche Gebiete der Softwareentwicklung, sondern wird auch in Zukunft überwiegend Bereiche bedienen, in denen Anpassungen und Serviceleistungen bezüglich einer Software strukturbedingt notwendig sind, zuvorderst bei Software mit Plattform-Charakter.


Gremien und Plattformen

  • Open Source Initiative, [3], vergibt Gütelsiegel für OS-Lizenzen, mit dem OSS als solche gekennzeichnet werden kann
  • Free Sofware Foundation, [4], engagiert sich für allgemeine Fragen rund um OSS
  • Linuxverband, [5], Vertretung der Interessen von Unternehmen, die OSS anwenden gegenüber Politik und Verwaltung, bietet Erfahrungsaustausch unter Mitgliedsunternehmen
  • Institut für Rechtsfragen der freien und Open Source Softare (ifrOSS), [6], beschäftigt sich mit juristischen Fragen rund um OSS
  • BerliOS, [7], Mediator für die verschiedenen Interessensgruppen im OSS-Umfeld
  • SourceForge.net, [8], größte Entwicklungsplattform für OS-Projekte
  • Freshmeat.net, [9], Indexdienst, der sich hauptsächlich an OSS richtet, hierarchische (über Kategorien) und schlagwortbasierte Suche möglich


Quellen

  • Fraunhofer Gesellschaft (Hrsg.) (2005): Open Source Software. Einsatzpotenziale und Wirtschaftlichkeit. Stuttgart: Fraunhofer IRB Verlag.
  • Gläßer, Lothar (2004): Open Source Software. Projekte, Geschäftsmodelle, Rechtsfragen, Anwendungsszenarien – was IT-Entscheider und Anwender wissen müssen. Erlangen: Publicis.
  • Haneke, Uwe/Stephan Trahasch/Tobias Hagen/Tobias Lauer (Hrsg.) (2010): Open Source Business Intelligence. Möglichkeiten, Chancen und Risiken quelloffener BI-Lösungen. München, Wien: Hanser.
  • Henkel, Joachim (2007): Offene Innovationsprozesse. Die kommerzielle Entwicklung von Open-Source-Software. Wiesbaden: Deutscher Universitäts-Verlag.
  • Hetmank, Maik (2006): Open-Source-Software. Motivation der Entwickler und ökonomischer Hintergrund. Saarbrücken: VDM.
  • Mundhenke, Jens (2007): Wettbewerbswirkungen von Open-Source-Software und offenen Standards auf Softwaremärkten. In: Snower, Dennis (Hrsg.): Kieler Studien 338. berlin, Heidelberg: Springer.
  • Open Source Jahrbücher, 2004 – 2008, kostenloser Download [10]