Insides des Open-Source-Ökosystems

State of the Software Supply Chain Report 2019: Best Practices für Open-Source-Entwickler

Katharina Degenmann

© Shutterstock / Duncan Andison

Zum fünften Mal in Folge führte Sonatype seinen jährlichen Bericht State of the Software Supply Chain durch. Insgesamt 12.000 kommerzielle Entwicklungsteams und über 6.200 Entwickler enthüllen darin ihre Best Practices aus Open-Source-Softwareprojekten und kommerziellen Anwendungsentwicklungsteams. Wir haben die wichtigsten Ergebnisse zusammengefasst.

Neben Best Practices rund um Open-Source-Projekte wurden ebenso diverse Open-Source-Komponenten untersucht. Die Ergebnisse des Berichts stammen aus der Analyse von 36.000 Open-Source-Projektteams und 3,7 Millionen Open-Source-Releases.

Angebot und Nachfrage von Open Source

Open Source liegt im Trend und das Angebot an Open-Source-Source wird zunehmend größer. Wie der Bericht offenlegt, wurde in den Jahren 2017 bis 2019 ein Zuwachs von 75 Prozent generiert. Dabei sind mit den meisten Open-Source-Komponenten-Releases Java sowie .NET Vorreiter.

Quelle: State of the Software Supply Chain Report 2019

Inzwischen gibt es mehr als 3,7 Millionen Releases von Java-Open-Source-Softwarekomponenten im Central Repository, 1,6 Millionen .NET-Komponenten-Releases in der NuGet, 1,2 Millionen Python-Komponenten-Releases im PyPI-Repository und 800.000 JavaScript-Packages in npm.

Neben dem Angebot an Open Source lohnt sich ein Blick auf die Nachfrage an Open-Source-Komponenten. Und der Markt scheint nicht übersättigt: Laut den Ergebnissen gibt es eine verstärkte Nachfrage nach Open Source. So steigen beispielsweise die Downloads für Java-Komponenten-Releases aus dem Central Repository gegenüber dem Vorjahr um 68% auf 146 Milliarden an. Bei JavaScript stiegen die durchschnittlichen wöchentlichen npm-Paketdownloads sogar von 3,5 Mrd. (2018) auf 10 Mrd. (2019) an – ein Anstieg um 185%.

Das Open-Source-Ökosystem

Um besser zu verstehen, wie das Open-Source-Ökosystem funktioniert bzw. welche Open-Source-Komponenten Softwareentwickler in ihren eigenen Projekten verwenden, wurden sämtliche Java-Artefakte, die im Central Repository (oft als „Maven Central“ bezeichnet) gespeichert sind, untersucht. Das Central Repository verfügte zum Zeitpunkt der Untersuchung über mehr als 266.000 Komponenten mit über 3,7 Millionen Releases.

Best Practices der Projekt-Teams

Der diesjährige Bericht enthält insgesamt 295 ausgewählte Open-Source-Projekte. Die absolute Best Practice der besten bzw. erfolgreichen Projekt-Teams ist hierbei die Schnelligkeit. Wie sich herauskristallisiert, werden in den erfolgreichsten Projekt-Teams Abhängigkeiten, um das 18-fache schneller aktualisiert. Auch die Freigabe der Komponenten, bei denen alle Abhängigkeiten auf dem neuesten Stand sind, geht deutlich schneller vonstatten (6,8-mal so schnell). Und auch im Bezug auf Schwachstellen findet die Behebung 3,4-mal schneller statt, als bei weniger erfolgreichen Teams.

Quelle: State of the Software Supply Chain Report 2019

Überdies sind in erfolgreichen Projekt-Teams die Komponenten-Releases häufiger, die Projekt-Teams größer und es besteht eine höhere Wahrscheinlichkeit, dass sie von Open-Source-Foundations verwaltet werden als von kommerziellen Betreuern.

Best Practices der Dev-Teams

Doch die Erkenntnisse über das Open-Source-Ökosystem wurde nicht nur aus Projekt-Teams, sondern auch aus den Vorgehensweisen der Entwicklungsteams gewonnen – aus 12.000 kommerziellen Entwicklungsteams, um genau zu sein.

Quelle: State of the Software Supply Chain Report 2019

Hierbei lässt sich erkennen, dass es bei erfolgreichen Entwicklungsteams 11-mal wahrscheinlicher ist, dass ein Prozess verwendet wird, um eine neue Abhängigkeit hinzuzufügen (z. B. bewerten, genehmigen, standardisieren, etc.). Ebenso sind verhältnismäßig mehr automatisierte Tools im Einsatz, um Richtlinienkonformität von Abhängigkeiten zu verfolgen, verwalten und/oder sicherzustellen. Beispielsweise wird auch die neueste Version (oder die neueste Version – N) aller Abhängigkeiten im Schnitt häufiger verwendet.

Weitere Ergebnisse

Wenn es um den Einsatz von Open-Source-Technologien geht, ist meist der Sicherheits-Aspekt entscheidend. Wie der Survey jedoch zeigt, muss Open-Source nicht auf Kosten der Sicherheit gehen.

Das große Angebot an Releases wird durch regelmäßige Versionierung realtiv schnell und häufig erweitert. Das führt dazu, dass die neuen Versionen nicht nur über erweiterte Funktionen, sondern auch eine verbesserte Leistung, Fehlerbehebungen und Sicherheitspatches verfügen. Beispielsweise wurde der Einsatz von anfälligen Komponenten um 55% reduziert.

Alle weiteren Ergebnisse des State of the Software Supply Chain Report 2019 stehen zum Nachlesen bereit.

Geschrieben von
Katharina Degenmann
Katharina Degenmann
Katharina Degenmann hat Politikwissenschaft und Philosophie studiert. Seit Februar 2018 arbeitet sie in der Redaktion der Software & Support Media GmbH und ist nebenbei als freie Journalistin tätig.
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
4000
  Subscribe  
Benachrichtige mich zu: