software-wartung24.de

Dependency / Abhängigkeit

Entwicklung

Eine Dependency, deutsch Abhängigkeit, ist ein vorgefertigtes Stück Software – meist eine Bibliothek oder ein Paket – das Ihre Anwendung nutzt, statt jede einzelne Funktion selbst zu programmieren.

Ausführliche Erklärung

Kaum eine moderne Software wird komplett von Grund auf entwickelt. Das wäre wie ein Auto, bei dem jede Schraube selbst geschmiedet wird. Stattdessen greifen Entwickler auf bestehende Bausteine zurück: eine Bibliothek für die Benutzerverwaltung, eine für PDF-Erstellung, eine für das Verschicken von E-Mails, eine für die Bildbearbeitung. Diese Bausteine sind die Dependencies.

Verwaltet werden sie über sogenannte Paketmanager. In der PHP-Welt heißt das wichtigste Werkzeug Composer, im JavaScript-Bereich npm (oder yarn, pnpm), in Java Maven oder Gradle, in Python pip. Diese Werkzeuge laden die richtigen Pakete in der richtigen Version automatisch herunter und halten sie aktuell – sofern jemand das aktiv tut.

Ein Beispiel: Eine typische Webanwendung in Symfony hat schnell 80 bis 150 direkte Abhängigkeiten. Jede davon kann selbst weitere Pakete nutzen – am Ende stehen oft 300 bis 500 Komponenten in einem Projekt. Sie alle stammen von unabhängigen Herstellern und Open-Source-Projekten.

Warum das für Ihr Unternehmen relevant ist

Jede Dependency ist Code, der in Ihrer Anwendung läuft. Wenn eine davon ein Sicherheitsproblem hat, hat Ihre Anwendung ein Sicherheitsproblem. Wenn eine davon nicht mehr gepflegt wird, ist sie eine Altlast in Ihrem System.

Die unangenehme Wahrheit: Viele Anwendungen, die seit drei oder mehr Jahren ohne strukturierte Pflege laufen, haben hunderte veralteter Komponenten – darunter regelmäßig welche mit bekannten Sicherheitslücken. Die Anwendung läuft trotzdem, weil die Lücken in Funktionen stecken, die niemand sieht. Aber sie sind da. Und sie werden gefunden.

Beispiel aus der Praxis

Ein Software-Hersteller liefert eine Branchenlösung an mittelständische Kunden aus. Bei einem Sicherheits-Audit wird der Bestand an Dependencies geprüft. Ergebnis: 67 Abhängigkeiten sind veraltet, 12 haben dokumentierte kritische Sicherheitslücken, 4 werden vom Hersteller seit über zwei Jahren nicht mehr gepflegt. Die Anwendung selbst läuft seit Jahren ohne Probleme. Nach drei Wochen strukturierter Pflege – Aktualisierungen, Tests, in zwei Fällen ein Wechsel auf eine alternative Bibliothek – ist der Bestand wieder aktuell. Eine spätere Sicherheitsprüfung beim Endkunden wird ohne Befund bestanden.

Das bedeutet das für Sie

Sie müssen nicht jede Dependency Ihrer Software kennen. Aber jemand sollte sie überwachen. Ein laufender Wartungsprozess prüft regelmäßig: Welche Pakete sind veraltet? Welche haben neue Sicherheitslücken? Welche Aktualisierungen sind unkritisch, welche brauchen Tests?

In unserer Software-Wartung gehört das systematische Aktuell-Halten Ihrer Dependencies zum Standardumfang. Im unverbindlichen Erstgespräch zeigen wir Ihnen, wie viele Komponenten in Ihrer Anwendung stecken – und welche Sie zuerst angehen sollten.

Haben Sie Fragen zu „Dependency / Abhängigkeit" in Ihrer Software?

Im kostenlosen Erstgespräch schauen wir uns konkret an, was das für Sie bedeutet.

Kostenlose Erstberatung anfragen →