Wenn Sie mehr zu OpenChain erfahren wollen, lesen Sie zunächst unseren Beitrag „OpenChain in a nutshell“.

Die OpenChain-Spezifikation definiert sechs Ziele. Inhaltlich stellen fünf Ziele den nachhaltigen Umgang mit Open Source Software sicher. Dabei fokussieren vier auf die hausinterne Organisation und das fünfte auf die Unterstützungsleistung von Open Source Projekten. Das sechste Ziel betrifft die Bereitschaft, nach außen zu erklären, dass man sich an den inhaltlichen Zielen messen lassen will, also die Bereitschaft zu einer Zertifizierung hat.

Dieser Beitrag stellt die Ziele kurz vor und erläutert, wie TrustSource dabei hilft, die Ziele zu erreichen

Ziel 1: Klären und Bewusstsein der Verantwortung

In einem ersten Schritt geht es darum, die Aufgaben und Verpflichtungen innerhalb der Organisation zu klären. Dies findet üblicherweise seinen Niederschlag in einer Regelung (Policy), einer Gebrauchsanweisung für den Umgang mit Open Source Software. Diese beschreibt die Rollen sowie deren Verantwortung, klärt, wie mit einzelnen Fällen umzugehen ist und beschreibt die Prozesse, welche zu befolgen sind.

TrustSource stellt eine Standard-Policy zu Verfügung. Sie kann als Ausgangslage für die Definition Ihrer eigenen Policy dienen.

OpenChain fordert weiterhin, dass nicht nur eine Policy existiert, sondern dass diese auch dem Personal bekannt ist, sie also gelebt werden kann. Hierzu ist sicherzustellen, dass ein Großteil (min 85%) der Entwicklung nachweislich von dieser Policy Kenntnis haben.

TrustSource integriert ab Version 1.7 eine Learning-Plattform mit einem Satz an Kursen, welche den Ansprüchen eines OpenChain-konformen Kurstrainings gerecht werden und Lernkontrollen ermöglichen.

Ergänzend wird gefordert, dass Prozeduren für die Erhebung und Identifikation der genutzten Open Source Komponenten sowie die Ermittlung der damit einhergehenden Rechte, Pflichten als auch Verbindlichkeiten existieren.

TrustSource stellt einen Mechanismus bereit, der den Projektkontext erhebt und die Pflichten sowie Verbindlichkeiten aus dem Einsatz vor diesem Hintergrund auflöst. Änderungen sowohl an Bestand als auch den Zielen werden automatisch dokumentiert.

Ziel 2: Zuweisen von Verantwortlichkeiten

Da die gegenwärtige Dokumentationslage im Bereich der Open Source Komponenten stark zu wünschen übrig lässt, ist mit Rückfragen und Klärungsbedarf seitens der Downstream-Nutzer zu rechnen. Das kann Rückfragen zur Nutzung bzw. den Einsatzmöglichkeiten aber auch die Bestandteile selbst betreffen. Um den Anfragen zu begegnen, bzw. diese auf einfache Art qualifiziert entgegenzunehmen, fordert die Spezifikation die Definition und Kommunikation eines benannten Kontaktes, den „FOSS-Liaison“ oder im Deutschen eher passend: „FOSS-Kontakt“.

Weiterhin fordert die Spezifikation, dass die Kommunikation nach zuvor definierten Regeln zu erfolgen hat und hinreichend dokumentiert sein sollte. Dies ist insbesondere für später ggf. anhängige Gerichtsverfahren ausgesprochen wertvoll.

Mit Hilfe von TrustSource können Sie diese Aufgabe nach außen delegieren. Sie richten eine Mail-Adresse ein und alle Incoming-Requests werden vom TrustSource HelpDesk strukturiert bzw. nach den mit Ihnen erarbeiteten Verfahren abgearbeitet.

Um den Anforderungen dabei gerecht zu werden, ist es als erheblich für den Prozess anzusehen, dass eine hinreichende rechtliche Expertise auf dem einschlägigen Gebiet vorhanden ist. Diese darf gemäß Spezifikation sowohl durch interne als auch externe Ressourcen gestellt werden.

Ziel 3: Wahrnehmen der FOSS-Aufgaben

Das dritte Ziel widmet sich der Dokumentation der erzeugten Software, bzw. der eingesetzten Artefakte. Der Prozess, um eine Stückliste (Bill of Materials, kurz BoM) zu erzeugen, sollte hinreichend qualifiziert und dokumentiert sein. Qualifiziert bedeutet, dass der Prozess sich dazu eignet, die tatsächlich eingesetzten Komponenten aufzuzeigen und sicherzustellen, dass diese Information auch im BoM auftaucht.

Das soll jedoch nicht nur einmalig zu einem Zeitpunkt passieren, sondern muss kontinuierlich für jedes Release erfolgen. Insbesondere im Zuge von Continuous Deployment entsteht hieraus eine erhebliche Verpflichtung für die Aktualität und die Archivierung der Dokumentation, bzw. der BoMs. Eine manuelle Durchführung ist im hier nicht mehr denkbar.

TrustSource kann hier optimal unterstützen. Durch die Integration mit den Entwicklungswerkzeugen lässt sich zu jedem Zeitpunkt ein BoM erzeugen. Die einzelnen Versionen lassen sich speichern und archivieren. Durch den „Freeze Release“ Mechanismus können bestimmte Versionen gezielt via API exponiert bzw. als SPDX exportiert werden. Ein aktuelles BoM ist somit stets gegeben.

Die Spezifikation macht keine Vorgaben bezüglich der Inhalte eines BoM. Jedoch hat im Kontext der Linux-Foundation die Arbeitsgruppe SPDX – Software Package Data Exchange – Vorgaben für die Lizenzdokumentation einer Anwendung erarbeitet. Diese lösen das Problem nicht abschließend, bilden jedoch eine gute Grundlage für eine technische Dokumentation.

Das Erstellen des BoM allein reicht jedoch nicht aus, um einen sicheren Umgang mit FOSS zu gewährleisten. Je nach Anwendungsfall können die Bestimmungen der inzwischen gut 396 bekannten Lizenzen unterschiedliche Verpflichtungen auslösen. So spielen der Einsatzzweck, die Art der Kommerzialisierung oder auch die Form der Distribution eine erhebliche Rolle bei der Identifikation der zu erfüllenden Verbindlichkeiten oder der ausgelösten Pflichten.

Das ist insbesondere deshalb wichtig, weil einige Lizenzen bei Nichterfüllung der Verbindlichkeiten oder Pflichten das Nutzungsrecht entziehen. In anderen Worten: Das Recht zur Nutzung der Komponente erlischt, wenn die Verpflichtungen nicht erfüllt werden. Und der Einsatz ohne Nutzungsrecht im kommerziellen Kontext, ist kein Kavaliersdelikt mehr.

OpenChain fordert daher, dass eine rechtliche Prüfung stattfindet, welche Verbindlichkeiten und Verpflichtungen in dem jeweiligen Einsatzszenario zu erfüllen sind, um eine rechtskonforme Anwendung im jeweiligen Szenario sicherzustellen.

Hier spielt TrustSource seine besondere Stärke aus. Durch Kenntnis der Bedingungen und Verpflichtungen aus mehreren hundert Lizenzen und einer strukturierten Erfassung des rechtlichen Kontextes kann die TrustSource Regel-Engine die Bedingungen für die Nutzung automatisiert fallspezifisch ableiten und somit als List of Obligations für eine Abarbeitung zur Verfügung stellen.

Ziel 4: FOSS Compliance Artefakte bereitstellen

In dem vierten Ziel geht es darum, dass die Compliance Artefakte nicht nur erzeugt, sondern auch mit der erzeugten Software ausgeliefert werden. Es ist also sicherzustellen, dass die Artefakte vollständig und Teil der Software sind.

TrustSource unterstützt dies durch die Bereitstellung eines SPDX Dokuments des entsprechenden Moduls oder Projektes. Zukünftig wird neben dem SPDX auch ein komplettes Notice-File kompiliert und bereitgestellt.

Um rechtlich konform zu agieren, ist es erforderlich, Revisionssicherheit herzustellen. Das bedeutet, alte Versionen sind zumindest solange aufzuheben, bis sichergestellt ist, dass keine alte Version mehr im Umlauf ist. Das ist erforderlich, damit sich Fragen zu einem älteren Versionsstand auch auf einer gesicherten Dokumentenlage beantworten lassen.

TrustSource kann die Information zu allen in TrustSource erzeugten Version jederzeit wieder bereitstellen.

Auf dieser Basis ist es stets möglich, zu identifizieren, welche Komponenten wo eingesetzt wurden und unter welchen Bedingungen. Einerseits macht Dokumentation angreifbar, da auch dokumentiert ist, was nicht getan wurde. Andererseits führt es aber auch zu der Sicherheit, tatsächlich alles Erforderliche unternommen zu haben, um Rechtssicherheit herzustellen. Fehler sollten bei einem solchen Vorgehen rechtzeitig aufgedeckt werden können.

Ziel 5: Verstehen der Community-Verpflichtungen

Open Source ist keine Einbahnstraße. Man sollte nicht nur nehmen, alle Nutzer von Open Source sind eigeladen, auch mitzugestalten. Dies geschieht über Mitarbeit in den open Source Projekten, sogenannten Contributions.

Hierzu werden üblicherweise für ein Engagement hausinterne Ressourcen für das Open Source Projekt abgestellt, die entweder ganz oder teilweise an dem Projekt mitarbeiten. Je nach Intensität kann dies auf gelegentlicher Basis in Form von Bugfixes oder freiwilligen Ergänzungen oder aber als definierte Abordnung zum Kern des Projektes erfolgen. Je nach Intensität eröffnet es dem beitragenden Unternehmen Einfluss auf die Gestaltung des Produktes. Es ist auch denkbar, dass das Unternehmen ein eigenes Open Source Projekt ins Leben ruft.

Ob gelegentlich oder gezielt und strukturiert, welche Form auch immer gewählt wird, die Beiträge sind klar zu regeln. Dabei geht es um rechtliche Fragen wie Trennung von Arbeitszeit und Freizeit, Ansprüchen und Rechten aus den Beteiligungen sowie dem Prozess, zur Bereitstellung von Beteiligungen.

Das fünfte Ziel nimmt sich dem Thema des Rückspielens in die Open Source Community an und verlangt, dass es eine Policy gibt, welche den Umgang bzw. die Beiträge zu Open Source Projekten regelt. Analog zur Regelung für den Einsatz von Open Source im Unternehmen, ist auch hier auch für die hinreichende Verbreitung und Bekanntheit der Regelungen zu sorgen.

Auch die Regelung zur Beteiligung an Open Source Initiativen kann mit Hilfe der gleichen Mechanismen wie die Unterstützung zu G1 genutzt werden. Auch für die Gestaltung von Beiträgen bietet TrustSource eine Sample-Policy als Grundlage.

Es kann sein, dass die Regelung eine Beteiligung an Open Source Projekten verbietet. Für diesen Fall ist nur die Bekanntheit des Verbotes zu propagieren. Aus unserer Erfahrung bietet sich ein Verbot jedoch nicht an. Sobald ernsthaft Open Source eingesetzt wird, ist mit Fehlern in der eingesetzten Software zu rechnen. Diese aufgrund eines Verbotes für Beiträge nicht beheben zu können, wäre fahrlässig.

Es ist demnach ein Governance Prozess für die Beiträge zu definieren. Im Idealfall unterscheidet sich dieser nicht wesentlich von dem für eigene Produkte, um es für alle Beteiligten einfach in der Handhabung zu machen.

TrustSource stelle eine für beide Einsatzformen einheitliche Plattform mit umfangreichen Werkzeugen für die Prozessunterstützung zur Verfügung.

Ziel 6: Bestreben, die Konformität zu zertifizieren

Das sechste Ziel fordert die Bereitschaft der Organisation die Umsetzung der Anforderungen aus den Zielen 1-5 zu bestätigen. Dies ist derzeit mit Hilfe eines Self-Audits möglich. Die Webseite der OpenChain bietet hierzu einen Fragebogen und entsprechende OpenChain-Partner unterstützen die Umsetzung.

TrustSource bietet eine geeignete Plattform, um die Prozesse sicherzustellen. Dies ist bei den einschlägigen Parteien bekannt und vereinfacht die Klärung der Prüfungen.

Zusammenfassung

Zusammenfassend lässt sich erkennen, dass der unternehmensweite Einsatz von TrustSource einen Großteil der Komplexität einer OpenChain-konformen Ausrichtung einer auch größeren Organisation erheblich reduzieren kann. Es bleibt aber auch festzuhalten, dass OpenChain die Einführung von Prozessen und die Veränderung von Abläufen erfordert. Dies ist immer ein aufwändiges Unterfangen, das Zeit und Fokus erfordert.

Wir empfehlen daher, den Scope gezielt zu wählen. Es mag durchaus sinnvoll sein, nicht gleich auf Konzernebene mit der Einführung anzufangen, sondern sich zunächst auf einen einzelnen Entity zu konzentrieren. Mit den Erfahrungen und Erfolgsgeschichten lässt sich die Einführung in einem zweiten Bereich wesentlich schneller erreichen.

Auch hier kann TrustSource in der Enterprise-Version mit der Multi-Entiy-Option helfen. Diese ermöglicht es, einzelne Einheiten/Bereiche in einem Konto zusammenzufassen und übergreifend zu administrieren, jedoch mit bereichsspezifischen Policies oder Black- und White-listen zu versehen.

Auch für Unternehmen, die bereits in eineigen Bereichen andere Scanning-Werkzeuge nutzen, kann TrustSource zur Vereinheitlichung der Ergebnisse dienen. Durch die Möglichkeit, Scan-Ergebnisse an das TrustSource-API zu übermitteln bzw. SPDX-Dokumente zu importieren, kann TrustSource das Bindeglied über mehrere, ggf. bereits existierende, bereichsspezifische Werkzeuge dienen. Somit lässt sich die Prozesskonformität und somit eine einheitliche Governance unternehmensweit sicherstellen.