Glossar
Die wichtigsten Begrifflichkeiten: Open-Source-Software Glossar
Im Kontext von Open-Source-Software gibt es eine Vielzahl an besonderen Ausdrücken und Begrifflichkeiten. Für ein besseres gemeinsames Verständnis und kollaboratives Arbeiten mit der openCode-Plattform enthält das nachstehende Glossar die zentralen Hauptbegriffe mit kurzer Erläuterung. Die Auflistung der Begriffe erfolgt in alphabetischer Reihenfolge.
Artefakte Kopiert!
Als Artefakte werden die Ergebnisse von Aktivitäten im Prozess der Softwareentwicklung beschrieben. Typischerweise sind Artefakte Dateien, die aus Quellcode erzeugt werden, wie bspw. ein Kompilat oder Executable.
Common Vulnerabilities and Exposures (CVE) Kopiert!
Als Common Vulnerabilities and Exposures (CVE) wird ein Referenzier-System mit einheitlicher Nomenklatur zur Benennung von öffentlich bekannten Sicherheitslücken und Schwachstellen bezeichnet. Jede CVE ID-Referenz beschreibt dabei eine eindeutige Sicherheitslücke und standardisiert den Informationsaustausch zu Sicherheitslücken.
CVE Management Kopiert!
Als CVE Management werden Verfahren bezeichnet, die kontinuierlich oder in regelmäßigen zeitlichen Abständen die in einem Projekt genutzten Abhängigkeiten mit einer kontinuierlich aktualisierten CVE Datenbank abgleichen.
Code Repository Kopiert!
Ein Code Repository ist ein (Git)-versionierter Ablageort für den Quellcodef eines Projektes. In der Praxis wird mit dem Begriff Code Repository häufig auch das Code Repository Management System gemeint [siehe Code Repository Management System (CRMS)]. Im Kontext der Plattform wird mit dem Begriff Code Repository das CRMS GitLab adressiert, sofern nicht explizit anders beschrieben.
Code Repository Management System (CRMS) Kopiert!
Ein Code Repository Management System (CRMS) ist die Gruppierung von mehreren Code Repositories mit Funktionalitäten zum Management dieser. Auf der openCode-Plattform stellt GitLab das Code Repository Management System (CRMS) dar.
Contributor Kopiert!
Die Rolle Contributor nehmen Nutzende wahr, die im Rahmen der kollaborativen Entwicklung Code bzw. Inhalte zu bestehenden Entwicklungsprojekten beitragen. Hierfür ist der Status „Registrierte Nutzende“ oder „Identifizierte Nutzende“ notwendig. Hierbei ist zu beachten, dass der Contributor nur die Nutzungsrechte an das Projekt abgibt, das Urheberrecht (engl. Copyright) jedoch weiterhin behält, sofern für die Urheberschaft keine gesonderten Regelungen getroffen wurden.
Contributor License Agreement (CLA) Kopiert!
Bei Contributor License Agreement (CLA) handelt es sich um rechtlich verbindliche Vereinbarungen, die die Konditionen bestimmen, zu denen Beiträge zu dem jeweiligen Projekt möglich sind. Weiterführende Informationen zu Contributor License Agreements und eine Gegenüberstellung zu Developers Certificate of Origin sind hier verfügbar.
Compliance Artefakte Kopiert!
Als Compliance Artefakte werden die Ergebnisse der Maßnahmen zur Erfüllung lizenzrechtlicher und Compliance Anforderungen bezeichnet, wie bspw. die SBOM [siehe Software Bill of Materials (SBOM)] oder ReadMe-Datei mit Angabe der Urheberrechte.
Copyleft Kopiert!
Als Copyleft wird eine Eigenschaft verschiedener Open Source Lizenzen bezeichnet. Copyleft Lizenzen erlauben abgeleitete Werke nur unter der Prämisse die gleiche Lizenz wie die des originären Werks zu nutzen.
Developers Certificate of Origin (DCO) Kopiert!
Das Developers Certificate of Origin (DCO) ist ein von der Linux Foundation 2004 eingeführter Sicherungsmechanismus, welcher in der Zielsetzung dem Contributor License Agreement (CLA) ähnelt und als Alternative dazu eingeführt wurde. Weiterführende Informationen zu Developers Certificate of Origin und eine Gegenüberstellung zu Contributor License Agreements sind hier verfügbar.
Discourse Kopiert!
Discourse ist die technische Umsetzung des Diskussionsforums auf der openCode-Plattform.
Weiterführende Informationen sind den Plattformguidelines zu entnehmen.
Distribution Kopiert!
Im Kontext von Open Source beschreibt Distribution im allgemeinen Sinne die Übertragung von Inhalten. Insbesondere aus lizenzrechtlicher Sicht ist Distribution beachtenswert, bspw. distribuiert ein Code Repository entsprechend Quellcode oder das Softwareverzeichnis distribuiert Kompilate.
Fork Kopiert!
Ein Fork ist die Erstellung einer Kopie für einen neuen Entwicklungszweig als eigenes Entwicklungsprojekt und kann von den Nutzenden mit entsprechender Berechtigung vorgenommen werden. Forks werden oft verwendet, um ein Projekt unter neue Verwaltung zu stellen (etwa wenn bestehende Maintainer ausscheiden) oder um ein Projekt in eine neue Richtung zu bewegen.
GitLab Kopiert!
GitLab ist ein Code Repository Management System (CRMS) und eine kollaborative Entwicklungsplattform
Inhalte Kopiert!
Als Inhalte werden alle Dateien (Quellcode, Bilder, Texte usw.) bezeichnet, welche auf der openCode-Plattform abgelegt werden. Die Plattform unterscheidet hierbei nicht zwischen urheberrechtlich „eigenen“ und Third-Party-Inhalten.
Kompilate Kopiert!
Kompilate wird als Sammelbegriff für alle komplexen Dateien und Artefakte verwendet, die aus in der Regel mehreren Quelldateien erzeugt bzw. kompiliert werden. Im Sinne der Plattform bezieht sich der Begriff nicht auf den technischen Kompilationsvorgang, sondern auf die Eigenschaft einer solchen Datei, viele Lizenz-behaftete Komponenten zu vereinen.
Komponente Kopiert!
Als Komponenten gelten individuelle, eindeutig identifizierbare Bestandteile, welche in eine Software, ein Softwareprodukt, ein Kompilat oder Ähnliches eingehen.
Lizenzliste Kopiert!
Die Lizenzliste ist die Liste der freigegebenen Open Source Lizenzen für die Verwendung auf der openCode-Plattform. Eine Freigabe erfolgt, wenn eine Lizenz nach fachlicher und juristischer Prüfung seitens openCode sowohl der Open-Source-Definition entspricht und darüber hinaus keine für die Öffentliche Verwaltung erkennbaren Schwierigkeiten birgt.
Maintainer Kopiert!
Die Rolle Maintainer nehmen Nutzende wahr, die wesentlich an der Entwicklung beteiligt sind und im Auftrag des Repository Owners entscheiden, ob Beiträge der Contributor in ein Entwicklungsprojekt einfließen und publiziert werden. Hierfür ist der Status „Identifizierte Nutzende“ notwendig.
Negativliste Kopiert!
Die Negativliste ist die Liste aller nicht freigegebenen Lizenzen, welche durch openCode als keine Open-Source-Lizenz angesehen werden. Die Verbreitung von Inhalten dieser Lizenzart ist auf openCode untersagt.
Nutzende, identifizierte Kopiert!
Den Status Identifizierte Nutzende erhalten Nutzende, welche sich mit einem Account auf der Plattform registriert haben und dabei sich eindeutig als Nutzende der Öffentliche Verwaltung oder als Auftragnehmende der öffentlichen Hand identifizieren können.
Nutzende, registrierte Kopiert!
Den Status Registrierte Nutzende erhalten Nutzende, welche sich mit einem Account auf der Plattform registriert haben.
Quellcode / Source Code Kopiert!
Quellcode (engl. Source Code) ist die Sammlung einer in einer Programmiersprache geschriebenen Abfolge von Programmanweisungen.
Im Kontext der Plattform werden Mediendateien wie bspw. Bilder innerhalb der Projekte mit eingeschlossen.
Open-Source-Projekt Kopiert!
Ein Open-Source-Projekt im Sinne von openCode ist jedes Projekt, dessen Bestandteile mit durch openCode freigegebenen Open-Source-Lizenzen lizenziert ist.
Open Source (Software) Kopiert!
Open Source (Software) wird als Sammelbegriff für Inhalte [siehe Inhalte] sowie Software mit offenem Quellcode verwendet, welche unter einer freigegebenen Open Source Lizenz [siehe Open Source (Software) Lizenz] stehen. Für openCode ist die Open Source Definition gemäß Open Source Initiative (OSI) anzuwenden. Die OSI Definition kann online eingesehen werden.
Open Source (Software) Lizenz Kopiert!
Als Open Source (Software) Lizenz gelten alle Lizenzen, dieder Open Source Definition gemäß der Open Source Initiative (OSI) entsprechen. Die OSI Definition kann online eingesehen werden. Für den Anwendungsfall der openCode-Plattform gilt es die Hilfestellung zur Lizenz Compliance sowie die Lizenzliste der freigegebenen Lizenzen zur berücksichtigen.
Open-Source-Obligation Kopiert!
Open-Source-Obligationen sind alle aus einer Open-Source-Lizenz entstehenden Verpflichtungen bei der Nutzung, Modifikation und Weiterverbreitung.
Gängige Beispiele sind hier:
- Nennung von Lizenztexten und Copyrights verwendeter Komponenten
- Weiterverbreitung von verwendeter Komponenten
- Ermöglichen von Austausch verwendeter Komponente
Patentleft Kopiert!
Als Patentleft wird eine Eigenschaft verschiedener Open-Source-Lizenzen bezeichnet, welche die Nutzung der Patente des originären Werks mit einschließt.
Permissiv Kopiert!
Als Permissiv wird eine Eigenschaft verschiedener Open-Source-Lizenzen bezeichnet. Permissive Lizenzen erheben keinerlei Anspruch über die auf ihnen Aufbauenden Lösungen (auch abgeleitete Werke) und sind oft von deutlich weniger Auflagen begleitet, als es bei CopyLeft der Fall ist
Project Artifact Repository Kopiert!
Ein Project Artifact Repository bezeichnet den Ablageort für die Artefakte eines Projektes und ist im Rahmen der Plattform Bestandteil des Code Repository Management System (CRMS) GitLab.
Project Repository Kopiert!
Ein Project Repository bezeichnet den (Git)-versionierten Ablageort für Quellcode eines Projektes und ist im Rahmen der Plattform Bestandteil des Code Repository Management System (CRMS) GitLab. Als alternative Bezeichnung kann Code Repository verwendet werden.
Proprietäre Produkte Kopiert!
Proprietäre Produkte wird als Sammelbegriff für jegliche Produkte oder Software verwendet, die nicht unter einer Open Source Lizenz gemäß OSI lizenziert sind.
publiccode.yml Kopiert!
Die publiccode.yml ist die standardisierte Beschreibung eines Projekts mit definierten Schlüsselwörtern. Die publiccode.yml ist notwendig zur Aufnahme in das Softwareverzeichnis. Weiterführende Informationen sind der Richtlinie zum Softwareverzeichnis zu entnehmen.
Repository Owner Kopiert!
Die Rolle Repository Owner nehmen Nutzende wahr, die auf openCode ein eigenes Entwicklungsprojekt betreiben, für das sie verantwortlich sind. Repository Owner dürfen in ihrer Rolle als projektverantwortliche Person keine wesentliche Dokumentation im jeweiligen Repository der Öffentlichkeit vorenthalten. Hierfür ist der Status „Identifizierte Nutzende“ notwendig.
Richtlinie zum Softwareverzeichnis Kopiert!
Die Richtlinie zum Softwareverzeichnis ist das Rahmenwerk für die Aufnahme und Darstellung von Projekten und Lösungen unterschiedlicher Stadien im Softwareverzeichnis [siehe Softwareverzeichnis]. Die in der Richtlinie definierten Anforderungen gilt es zu erfüllen, Verstöße werden geahndet. Weiterführende Informationen sind der Richtlinie zum Softwareverzeichnis zu entnehmen.
Software Bill of Materials (SBOM) Kopiert!
Die Software Bill of Materials (SBOM) ist die formelle Erfassung aller in einem Softwareprodukt verwendeten Komponenten. Sofern nicht abweichend benannt, bezieht sich die Plattform auf SPDX 2.2.1 als Spezifikation für das SBOM Format.
Softwareverzeichnis Kopiert!
Das Softwareverzeichnis ist ein durchsuchbarer Katalog an Open-Source-Projekten und Lösungen auf der openCode-Plattform. In dem Verzeichnis werden entsprechende Details und Gütekriterien zu dem jeweiligen Projekt oder Lösung gepflegt und transparent für alle Nutzenden ausgewiesen. Das Softwareverzeichnis beinhaltet Software unterschiedlicher Stadien. Weiterführende Informationen sind den Plattformguidelines zu entnehmen.