IT-Betrieb
Technische Schulden in der IT: Wie jahrelange Provisorien erkannt und schrittweise beseitigt werden
Aus einer schnellen Lösung wird irgendwann der Dauerzustand
Ein Mitarbeiter braucht kurzfristig einen zusätzlichen Netzwerkanschluss, also wird ein kleiner Switch unter den Schreibtisch gestellt. Eine alte Anwendung funktioniert nach einem Serverwechsel nur noch mit einer besonderen Freigabe, weshalb sie zunächst bestehen bleibt. Für eine Maschine wird ein zusätzlicher Benutzer angelegt, weil die saubere Umstellung der Berechtigungen am Tag der Inbetriebnahme zu viel Zeit kosten würde.
Jede einzelne dieser Entscheidungen kann zum jeweiligen Zeitpunkt vollkommen vernünftig sein, denn im laufenden Betrieb muss eine Lösung manchmal vor allem schnell funktionieren. Problematisch wird es erst dann, wenn aus der Übergangslösung ein Dauerzustand wird und sich über Jahre immer weitere Ausnahmen, Abhängigkeiten und Sonderwege darum herum aufbauen.
In der Softwareentwicklung wird dafür häufig der Begriff „technische Schulden“ verwendet. Dasselbe Prinzip gibt es auch in der Unternehmens-IT: Eine schnelle oder pragmatische Lösung spart heute Zeit, erzeugt aber später zusätzlichen Aufwand, weil sie gepflegt, berücksichtigt oder irgendwann sauber ersetzt werden muss.
Technische Schulden sind deshalb nicht automatisch ein Zeichen schlechter Arbeit. Fast jede gewachsene Infrastruktur enthält sie. Entscheidend ist, ob sie bekannt sind und ob das Unternehmen noch selbst bestimmt, wann sie zurückgezahlt werden.
Provisorien werden gefährlich, wenn niemand mehr weiß, dass sie welche sind
Eine Übergangslösung ist zunächst unproblematisch, solange klar ist, warum sie existiert und wann sie wieder überprüft werden soll. Schwierig wird es, wenn dieser Zusammenhang verloren geht.
Dann steht beispielsweise ein alter Rechner weiterhin im Netzwerk, weil eine Anwendung darauf läuft, obwohl niemand mehr weiß, welche Anwendung das genau ist. Eine Firewallregel erlaubt seit Jahren weitreichenden Zugriff zwischen zwei Bereichen, weil sie irgendwann für ein Projekt eingerichtet wurde. Ein gemeinsames Administratorkonto bleibt bestehen, weil die Umstellung auf persönliche Konten damals verschoben wurde.
Solche Lösungen können lange funktionieren, wodurch der ursprüngliche Ausnahmecharakter immer weiter in Vergessenheit gerät.
Später behandelt jeder die vorhandene Struktur wie eine feste technische Voraussetzung, obwohl sie möglicherweise nur aus einer früheren Notlösung entstanden ist.
Eine Bereinigung gewachsener Netzwerke sollte deshalb nicht nur nach offensichtlich alten Geräten suchen, sondern auch nach Konfigurationen und Abläufen, deren ursprünglicher Zweck nicht mehr klar ist.
Technische Schulden entstehen häufig aus guten Gründen
Es wäre zu einfach, jede ältere Sonderlösung rückblickend als Fehler zu betrachten.
Eine Maschine musste an einem bestimmten Montag produktiv gehen, eine Software konnte kurzfristig nicht ersetzt werden oder ein Mitarbeiter brauchte eine funktionierende Lösung, während für den vollständigen Umbau weder Zeit noch Budget vorhanden waren.
In solchen Situationen ist eine pragmatische Lösung oft die richtige Entscheidung.
Technische Schulden entstehen also häufig dadurch, dass Geschwindigkeit, Kosten oder Betriebssicherheit zu einem bestimmten Zeitpunkt wichtiger sind als eine perfekte technische Struktur.
Problematisch wird es erst, wenn später niemand mehr überprüft, ob der damalige Grund weiterhin besteht.
Ein alter Maschinenrechner kann beispielsweise noch immer notwendig sein und damit bewusst weiterbetrieben werden. Eine kontrolliert betriebene alte Windows-Installation ist etwas anderes als ein längst vergessenes Altsystem, das nur deshalb noch Zugriff auf das gesamte Netzwerk besitzt, weil sich nie jemand darum gekümmert hat.
Die Auswirkungen zeigen sich oft erst bei Änderungen
Technische Schulden fallen im normalen Betrieb häufig kaum auf. Sie werden besonders dann sichtbar, wenn etwas verändert werden soll.
Ein Server soll ersetzt werden und plötzlich zeigt sich, dass mehrere alte Anwendungen fest auf seinen Namen eingestellt sind. Das Netzwerk soll segmentiert werden, aber niemand kann erklären, welche Produktionssysteme miteinander kommunizieren müssen. Ein Mitarbeiter verlässt das Unternehmen und es stellt sich heraus, dass mehrere gemeinsam genutzte Kennwörter geändert werden müssen.
Je mehr solche versteckten Abhängigkeiten vorhanden sind, desto aufwendiger wird jede spätere Veränderung.
Das führt irgendwann dazu, dass technische Systeme nicht mehr angefasst werden, weil niemand genau weiß, welche Nebenwirkungen eine Änderung hätte. Ein alter Server bleibt dann nicht deshalb im Betrieb, weil er technisch noch die beste Lösung ist, sondern weil sein Austausch als zu riskant empfunden wird.
Spätestens an diesem Punkt haben technische Schulden begonnen, Entscheidungen des Unternehmens zu bestimmen.
Dokumentation verhindert nicht jede Schuld, macht sie aber sichtbar
Eine brauchbare IT-Dokumentation kann technische Schulden nicht automatisch beseitigen, sorgt aber dafür, dass ihre Existenz nicht vergessen wird.
Wenn beispielsweise dokumentiert ist, dass eine alte Maschine aufgrund einer besonderen Schnittstelle weiterhin einen bestimmten Rechner benötigt, lässt sich dieser Zustand später bewusst erneut bewerten.
Fehlt diese Information, wird aus der Besonderheit schnell eine scheinbar unveränderbare Voraussetzung.
Auch bei Firewallregeln, temporären Freigaben und Sonderkonten hilft eine kurze Begründung. Schon die Information, warum etwas eingerichtet wurde und welcher Geschäftsprozess davon abhängt, kann Jahre später erheblichen Aufwand sparen.
Dabei muss nicht jede kleine Abweichung in einem umfangreichen Bericht festgehalten werden. Wichtig sind vor allem die Dinge, die bei einer späteren Änderung überraschende Auswirkungen haben könnten.
Eine Bestandsaufnahme zeigt, wo sich Schulden angesammelt haben
Technische Schulden lassen sich selten vollständig aus einer einzelnen Geräteliste erkennen. Sie zeigen sich vielmehr in der Kombination aus Technik, Dokumentation und den tatsächlichen Abläufen im Unternehmen.
Bei einer IT-Infrastrukturanalyse können beispielsweise Geräte auftauchen, deren Aufgabe nicht mehr eindeutig bekannt ist, alte Betriebssysteme identifiziert oder ungewöhnliche Netzwerkfreigaben festgestellt werden.
Auch Gespräche mit Mitarbeitern sind hilfreich. Aussagen wie „Das darf man auf keinen Fall neu starten“, „Das hat damals nur der alte Techniker eingerichtet“ oder „Wir wissen nicht genau, warum das so angeschlossen ist“ sind häufig Hinweise auf Bereiche, die genauer betrachtet werden sollten.
Nicht jede ungewöhnliche Lösung ist automatisch problematisch. Sie verdient aber eine Erklärung.
Gerade dort, wo niemand mehr erklären kann, warum ein bestimmter Zustand notwendig ist, lohnt sich die Untersuchung.
Nicht alles muss sofort bereinigt werden
Wenn bei einer Analyse zahlreiche technische Schulden sichtbar werden, wäre es meist falsch, daraus sofort ein großes Modernisierungsprojekt zu machen.
Ein seit Jahren funktionierendes System sollte nicht allein deshalb verändert werden, weil sich heute eine elegantere Lösung bauen ließe.
Zuerst muss bewertet werden, welche Auswirkungen die jeweilige Altlast tatsächlich hat.
Eine nicht mehr benötigte Firewallfreigabe kann mit wenig Aufwand geschlossen werden und reduziert unmittelbar ein Risiko. Ein gemeinsames Administratorkonto lässt sich vielleicht ebenfalls relativ einfach ablösen. Der Austausch einer alten Produktionssteuerung kann dagegen erhebliche Kosten verursachen und monatelange Planung benötigen.
Deshalb sollte eine Priorisierung der Maßnahmen zwischen kurzfristig sinnvoller Bereinigung, geplanten Verbesserungen und bewusst akzeptierten Altlasten unterscheiden.
Technische Schulden werden damit nicht ignoriert, aber auch nicht zum Selbstzweck beseitigt.
Kleine Verbesserungen können erstaunlich viel bewirken
Viele technische Schulden lassen sich schrittweise reduzieren.
Ein unbekannter Switch wird identifiziert und dokumentiert. Eine alte Firewallregel wird überprüft und entfernt, weil die zugehörige Anwendung längst nicht mehr existiert. Für ein gemeinsam genutztes Administratorkonto werden persönliche Benutzer eingerichtet. Ein nicht dokumentierter Produktionsrechner bekommt ein vollständiges Systemabbild und wird einem eigenen Netzwerkbereich zugeordnet.
Keine dieser Maßnahmen modernisiert die gesamte IT.
Zusammen sorgen sie aber dafür, dass die Infrastruktur mit der Zeit verständlicher, wartbarer und besser beherrschbar wird.
Gerade bei kleinen Unternehmen ist dieses Vorgehen oft wirtschaftlicher als ein großer Neuaufbau, denn die vorhandene Technik kann weiter genutzt werden, während die problematischen Stellen gezielt verbessert werden.
Manche technischen Schulden sollten bewusst bestehen bleiben
Eine gute IT muss nicht frei von Altlasten sein.
Eine zwanzig Jahre alte Maschine kann weiterhin einen alten Rechner benötigen, obwohl eine moderne Lösung technisch schöner wäre. Wenn die Maschine zuverlässig arbeitet, eine Ablösung hohe Kosten verursachen würde und der vorhandene Zustand ausreichend abgesichert ist, kann der weitere Betrieb die vernünftigste Entscheidung sein.
Entscheidend ist, dass dieser Zustand bewusst gewählt wurde.
Das System sollte dokumentiert, gesichert und möglichst vom restlichen Netzwerk getrennt sein. Außerdem muss bekannt sein, welche Folgen ein Ausfall hätte und welche Möglichkeiten für eine Wiederherstellung bestehen.
Damit wird aus einer unkontrollierten Altlast ein bewusst akzeptiertes technisches Risiko.
Diese Unterscheidung ist wichtig, weil das Ziel einer guten IT nicht darin bestehen kann, jede alte Komponente zu entfernen. Das Ziel ist eine Infrastruktur, deren Besonderheiten bekannt und deren Risiken nachvollziehbar sind.
Neue Schulden lassen sich bei Änderungen begrenzen
Technische Schulden entstehen immer wieder, weil auch zukünftig Situationen auftreten werden, in denen eine schnelle Lösung notwendig ist.
Deshalb ist es sinnvoll, Übergangslösungen ausdrücklich als solche zu behandeln.
Wenn beispielsweise für eine Maschineninbetriebnahme vorübergehend eine weitreichende Netzwerkfreigabe erforderlich ist, kann bereits bei der Einrichtung festgehalten werden, dass sie nach Abschluss überprüft werden muss.
Wird ein temporäres Administratorkonto angelegt, bekommt es ein geplantes Ablaufdatum oder wird zumindest in der Dokumentation als zeitlich begrenzte Lösung vermerkt.
Auf diese Weise wird verhindert, dass jede provisorische Maßnahme automatisch zum Dauerzustand wird.
Ein IT-Dienstleister, der regelmäßig vor Ort und in der Infrastruktur nach dem Rechten schaut, kann solche Punkte später wieder aufgreifen und prüfen, ob der ursprüngliche Grund weiterhin besteht.
Der problematischste Satz lautet oft: Das war schon immer so
Eine gewachsene IT muss nicht modern aussehen, um zuverlässig zu funktionieren, und es gibt gute Gründe, ältere Systeme weiterzubetreiben oder an einzelnen Stellen pragmatische Sonderlösungen einzusetzen.
Schwierig wird es dort, wo niemand mehr sagen kann, warum ein bestimmter Zustand existiert.
Wenn eine Änderung nicht vorgenommen wird, weil „das schon immer so war“, sollte zumindest geklärt werden, was tatsächlich dahintersteckt. Vielleicht gibt es einen wichtigen technischen Grund, vielleicht eine alte Abhängigkeit oder vielleicht gar keinen aktuellen Grund mehr.
Technische Schulden lassen sich deshalb am besten nicht durch einen großen Aufräumtag beseitigen, sondern durch regelmäßiges Hinterfragen, Dokumentieren und Priorisieren.
Eine gewachsene Infrastruktur darf ihre Geschichte behalten. Sie sollte nur nicht irgendwann so viele unbekannte Altlasten enthalten, dass jede notwendige Veränderung zum Risiko für den laufenden Betrieb wird.