Software Package Data Exchange (SPDX)
Wie SPDX bei der Compliance-Prüfung von OSS-Lizenzen hilft
Die Etablierung eines professionellen OSS-Lizenz- und Compliance-Management (kurz OSS-LCM) ist für Unternehmen, deren Geschäftsmodell auf Erstellung und/oder Vertrieb von Software (-komponenten) basiert, mittlerweile unerlässlich geworden (zu den rechtlichen Risiken siehe etwa "Open-Source-Einsatz und die rechtlichen Risiken"). Das gilt auch für Systemhäuser, die "nur" Software etablierter Hersteller anpassen, oder für Konzerne, in denen Software intern verteilt wird.
Das OSS-LCM erfordert technische und rechtliche Expertise bei den zuständigen Personen verbunden mit einer spezifischen technischen und organisatorischen Infrastruktur im Unternehmen. Andernfalls können infolge möglicher Lizenzverstöße, etwa bei Missachtung einer sogenannten Copyleft-Klausel, aber auch bei sonstigen Verletzungen von zum Beispiel rein formellen Wiedergabepflichten, erhebliche Haftungsfolgen (unter anderem Unterlassungs- und Schadensersatzansprüche) auf den unberechtigten Verwender von OSS-Komponenten zukommen. Auch der weithin unterschätzten Problematik um etwaige Lizenzinkompatibilitätenim Falle der Verwendung verschiedener OSS-Komponenten kann durch entsprechende Compliance-Maßnahmen begegnet werden.
Der 3-Stufen-Test
Ein großes Risiko sind unerkannte OSS-Komponenten. Daher ist es auf der ersten Stufe wichtig, überhaupt identifizieren zu können, wo OSS enthalten ist und welche Komponenten dies betrifft.
Auf der zweiten Stufe sollte verifizierbar zugeordnet werden (können), unter welchen konkreten Lizenzbedingungen die jeweiligen OSS-Komponenten stehen.
Sodann ist auf der dritten Stufe zu prüfen, ob und wie die Lizenzbedingungen der in Betracht kommenden OSS-Komponenten bei der geplanten Nutzung eingehalten werden können. Besonders hervorzuheben sind hier die Offenlegungs- und Hinweispflichten, aber auch die sogenannte Lizenzkompatibilität. Das kann unter anderem davon abhängen, wie die OSS-Komponenten zum Beispiel mit proprietärem Code oder mit anderen OSS-Komponenten verbunden (verlinkt) sind oder wie sie weitergegeben beziehungsweise vertrieben werden (zum Beispiel in getrennten Dateien et cetera).