Die Übersicht behalten

Neu im Eclipse-Universum: SW360 – das Katalogisierungsprogramm für Software-Komponenten

Dominik Mohilo

©Shutterstock.com / Omelchenko

Für die Verwaltung von Software-Komponenten wurde ein neues Eclipse-Projekt vorgeschlagen: Eclipse SW360. Das Katalogisierungsprogramm soll in Unternehmen zukünftig eine zentrale Position einnehmen und das Management von Lizenzen, Abhängigkeiten und Sicherheitsaspekten erleichtern. SW360 soll sich dafür nahtlos in bestehende Infrastrukturen integrieren lassen und bietet eine komplette Deployment-Einheit.

Hintergrund

Software wird heutzutage meist nicht von Grund auf neu geschrieben, sondern zumindest teilweise aus verschiedenen Komponenten zusammengestellt. Diese Softwarekomponenten stammen oft aus den Programmpaketen von Drittanbietern, sodass Unternehmen vor einige Herausforderungen gestellt werden: Zum einen ist da natürlich die Frage nach der Erlaubnis der Nutzung dieser Komponenten in der eigenen Software-Suite. Die Lizenzen und die Existenz eines Environmental Compliance Certificate (ECC) müssen überprüft und die Frage nach dem Copyright muss beantwortet werden. Nur wenn im rechtlichen Bereich alles klar ist, kann eine Softwarekomponente auch wirklich problemlos in das eigene Produkt übernommen werden.

Vor dieser Frage müssen sich Unternehmen und Softwareschmieden natürlich erst einmal intern darüber einig werden, welche Komponenten sich überhaupt für eine Übernahme eignen und von welchen man besser die Finger lässt. Dieses Wissen zu teilen, stellt für viele Firmen bereits an sich eine Herausforderung dar.

Hat man sich schließlich auf die zu übernehmenden Komponenten geeinigt und die rechtlichen Fragen beantwortet, kommt ein weiteres Problem auf die Entwickler zu: die Übersicht zu behalten. Es ist für Unternehmen und dessen Versorgungskettenmanagement unabdingbar zu wissen, welche Erweiterungen in welche Produkte oder Lösungen integriert wurden.

Natürlich werden diese Themen üblicherweise nicht von einer einzigen Person behandelt, sondern von den unterschiedlichen Abteilungen innerhalb der Organisation. Anhand der Komplexität dieses Verwaltungsmolochs lässt sich erkennen, dass ein zentrales System notwendig ist, das Einblick in sämtliche Aspekte der Verwendung von Softwarekomponenten bietet.

Exakt hierfür wurde SW360 entwickelt, das seit kurzem als Eclipse-Technologieprojekt auf die Aufnahme in den Inkubator wartet. Vorangetrieben wird das Projekt von der Siemens AG und der Bosch Bosch Software Innovations GmbH, Mentor ist Pascal Rapicault.

Features

SW360 ist ein sogenanntes Software-Katalogsystem und dient der Verwaltung von Softwarekomponenten in Unternehmen und Organisationen. Dabei spielt keine Rolle, ob diese Softwarekomponenten quelloffen (FOSS), kommerzieller oder interner Natur sind. Die Verwaltungssoftware ist dabei selbst quelloffen, steht unter der EPL-1.0 und bietet neben einer Web-Anwendung auch ein Repository zum Sammeln, Organisieren und Verfügbarmachen sämtlicher Informationen von Softwarekomponenten.

Neben dem Web-basierten UI ist es möglich, auf sämtliche Funktionen von SW360 über das API zuzugreifen, welches eine Integration in bereits existierende DevOps-Tools erlaubt. In Zukunft soll es auch ganze Zusammenschlüsse von SW360-Instanzen geben, die die jeweils gespeicherten Informationen untereinander zur Verfügung stellen.

SW360 wurde designt, um sich nahtlos in existierende Infrastrukturen integrieren zu lassen, die im Zusammenhang mit der Verwaltung von Software-Artefakten und –projekten stehen. Hierfür werden verschiedene Backend-Services für unterschiedliche Aufgaben und ein Set von sogenannten Portlets zur Verfügung gestellt, um auf diese Services zuzugreifen. Zudem existiert eine komplette Deployment-Einheit (Vagrant Box oder Docker-Container), die die vollständige Konfiguration sämtlicher Services und Portlets beinhaltet.

Um eine konsistente Identifizierung von Lizenzen, Komponenten und Anfälligkeiten zu gewährleisten, nutzt SW360 Standards. Zu den unterstützten Standards gehören Software Package Data Exchange (SPDX), Common Platform Enumeration (CPE) und Common Vulnerability and Exposure (CVE).

Die Features von SW360 lassen sich in unterschiedliche Bereiche einteilen, die durch den Funktionsumfang definiert werden:

1. Informationsverwaltung

Sämtliche Informationen über Softwarelizenzen und deren Inhalt sind über SW360 verfügbar und lassen sich jederzeit abrufen. Für die einzelnen verwendeten quelloffenen Softwarekomponenten werden Experten im System ausgezeichnet, um die Koordination mit anderen Open-Source-Projekten zu erleichtern. Diese Experten können etwa Mitarbeiter am jeweiligen Projekt sein, aus dem die Komponente stammt.

Über SW360 ist es zudem innerhalb des Unternehmens möglich, in Form eines Community Efforts nützliche und eher unnütze adaptierbare Komponenten zu identifizieren. Es stehen hierfür Informationen zu den jeweiligen Softwarekomponenten zur Verfügung, die von anderen Tools generiert wurden oder in diesen hinterlegt sind.

2. Wissensaustausch

Neben der reinen Informationsverwaltung bietet SW360 auch die Möglichkeit, Wissen mit anderen Mitarbeitern zu teilen. Während im Bereich der Informationen lediglich harte Fakten transportiert werden, können Nutzer somit ihre Kollegen auch an ihrem Wissen über die Usability oder die Annahme von Softwarekomponenten teilhaben lassen oder dieses Wissen kontrapunktieren.

Auch Erfahrungen mit der Integration oder der Zertifizierung von Software können über SW360 mit anderen Nutzern geteilt werden.

3. Prozessunterstüzung

Das Software-Katalogisierungssystem wurde auch für die Unterstützung von gewissen Prozessen entwickelt. Die Verwaltung von Softwarekomponenten dient dabei dazu, einen sogenannten Clearing Process zu erleichtern. Das heißt, der Funktionsumfang von SW360 soll die Beantwortung der Frage, ob, und wenn ja welche, Softwarekomponente übernommen werden soll, für das Unternehmen vereinfachen.

Zudem bietet das System unter anderem die Möglichkeit zur Verwaltung von Sicherheitsproblemen in quelloffenen Softwarekomponenten sowie das Handling von Schadensanfälligkeit in Projekten nachzuverfolgen. Auch Lizenzen lassen sich mit SW360 verwalten, zudem ist das Software-Asset-Management auf Höhe der aktuellen Technik.

Ausblick

Bis Ende dieses Jahres soll das Deployment via Docker verbessert werden und auch das Datenmodell soll anhand des bisher gesammelten Feedbacks überarbeitet werden. Für die Datenpflege sind ebenfalls weitere Features und die Unterstützung der CPE ID suggestion für neue Komponenteneinträge geplant.

Die wichtigste Neuerung für das kommende Jahr ist wohl die Integration einer Funktion, um Komponenten automatisch zu identifizieren. Dies soll es SW360 ermöglichen, automatisch Informationen über die jeweiligen Komponenten zu erhalten.

Eine umfangreiche Liste mit Features und Funktionen, sowie sämtliche Informationen zum aktuellen Stand des Projektes gibt es auf der Proposal-Seite bei der Eclipse Foundation.

Geschrieben von
Dominik Mohilo
Dominik Mohilo
Dominik Mohilo studierte Germanistik und Soziologie an der Goethe-Universität in Frankfurt. Seit 2015 ist er Redakteur bei S&S-Media.
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu: