Wenn fehlgeleitete Softwareupdates Millionenschäden verursachen: Warum gerade bei IT-Risiken automatisierte Prozesse für Unternehmen überlebenswichtig geworden sind.
Der Ausbau und Betrieb der IT-Systeme birgt heute Konfliktpotential bis auf die Vorstandsebene. Während CIOs und CTOs agile Leistungserbringung als Muss betrachten, verlangen die für die Einhaltung von Vorschriften (Compliance) zuständigen Manager Nachvollziehbarkeit, Prozesse respektive Workflows und Steuerungsmöglichkeiten, um Behörden zufrieden zu stellen und hohe Strafen zu vermeiden. Mittlerweile werden rund 80 Prozent des IT-Budgets aufgewendet, um den Betrieb am Laufen zu halten. Für die Verbesserung des Geschäfts und Innovation bleiben da kaum noch Zeit und Ressourcen übrig.
Es gibt einen echten Bedarf an IT, mit der sich intelligenter arbeiten und die Unternehmensleistung verbessern lässt. In der Realität werden aber hochbezahlte Spezialisten mit Wartungsaufgaben überfrachtet und dies erzeugt „Flaschenhälse“, die die IT-Abteilung daran hindern, schnell genug einen Wert für das Geschäft zu schaffen. Die IT-Infrastrukturen entwickeln sich kontinuierlich weiter. Das Risiko, dem CIOs ausgesetzt sind, wird infolge unverbundener, geschäftskritischer Prozesse immer größer, die Verantwortung für das Wohlergehen der Firma wächst und wird exponentiell größer als die für die Wartung abgestellten Ressourcen.
Die vielerorts übliche Prozessautomatisierung mit unterschiedlichen Werkzeugen über mehrere Abteilungen und Schichten (Infrastruktur, Anwendungen und Geschäftsprozesse) hinweg ist kein Ausweg. Sie erzeugt Tausende von potentiellen Bruchstellen, die sich auf ein Unternehmen verheerend auswirken können. Hinzu kommt: Wenn zahlreiche Inselwerkzeuge verschiedene Prozesse automatisieren, haben CIOs keine Transparenz, was ihr Risiko nochmals erhöht.
Die Lösung für die Anwendungsverteilung
Heute erfordert die geschäftliche Dynamik einen regelmäßigen Fluss an Updates für Services und Anwendungen und agile Entwicklungsmethoden beschleunigen die Softwarelieferung. Trotz der rasanten Veränderungen muss der IT-Betrieb immer noch sicherstellen, dass alle Updates und Packages interne Vorgaben ebenso erfüllen wie branchenspezifische und behördlichen Vorschriften, beispielsweise HIPAA, SSAE 16, SAS 70, PCI, SOX oder Basel II.
Mit Hilfe von Automatisierung und ganz speziell Application Release Automation (kurz ARA, also die automatische Verteilung von Software-Paketen und Updates) können Unternehmen aus allen Branchen nicht nur die Einhaltung von branchenspezifischen und behördlichen Vorschriften gewährleisten, sondern gleichzeitig auch Innovationen voran treiben, ohne sich länger den Kopf über Kleinigkeiten zerbrechen zu müssen.
Die höhere Frequenz der Anwendungs-Updates, die benötigt werden, um agil und wettbewerbsfähig zu bleiben, plus die Notwendigkeit, eine wachsende Zahl an Vorschriften einhalten zu müssen, erfordert die Automatisierung der Anwendungsverteilung. Anwendungsverteilung darf als Funktion nicht unterschätzt werden. Betrachtet man eine einzelne Anwendung, sind in diesen Prozess nicht selten sechs oder sieben Leute involviert – ein oder zwei Entwickler sowie Verantwortliche für Qualitätssicherung, Release Management, Netzwerk-, Middleware- und Datenbankadministration. Das Setup für das Installieren und Anpassen einer Anwendung – egal ob für QA oder Produktion – kann je nach Größe und Komplexität zwischen 30 Minuten und mehreren Stunden dauern. Und dieser mühsame, zeitraubende und fehlerträchtige Prozess kann im Laufe einiger Tage mehrfach wiederholt werden, bis die Anwendung für den produktiven Einsatz vorbereitet ist.
Wenn so viele Menschen in der Organisation an Anwendungsaktualisierungen arbeiten und jede Gruppe ihre Informationen typischerweise in eigenen Tabellen und Systemen ablegt, haben Organisationen keinen zuverlässigen Weg, Wissen über Anwendungen im Unternehmen vernünftig zu verwalten. Wenn etwas schief geht, lässt es sich nicht nachvollziehen – es ist unmöglich, herauszufinden, wer für diesen Teil der Applikation zuständig war. Das passt nicht wirklich zu der Nachvollziehbarkeit, die benötigt wird, um die wachsende Liste an Vorschriften zu erfüllen.
Der Riss geht durch die IT-Abteilung: Entwickler werden von der geschäftlichen Seite der Organisation unter Druck gesetzt, Aktualisierungen schnell in die Produktionssysteme zu bringen, damit Anwender auf neue Funktionen zugreifen können. Der IT-Betrieb wiederum konzentriert sich auf Faktoren wie Kontrolle, Sicherheit und Verwaltung. Und das Problem verschärft sich, denn immer noch geht der Trend in Richtung mehr Updates. In einigen Fällen können Updates für Live-Systeme täglich anfallen – insbesondere bei dynamischen Web-Anwendungen. In anderen Fällen kommen sie wöchentlich, monatlich oder noch seltener, etwa vierteljährlich.
Ein reibungsloser und kontrollierter Prozess
Automatisierung von Anfang bis Ende eliminiert Skripte und fehlerträchtige manuelle Schritte. Sie gibt Firmen die komplette Kontrolle über alle Aspekte der Anwendungsverteilung und verbessert sowohl die Sicherheit als auch die Compliance. Darüber hinaus lassen sich Aufgaben trennen (bspw. Entwickler von Produktionsumgebungen fernhalten) und alle Aspekte des Release-Prozesses detailreich dokumentieren – dies spielt eine wichtige Rolle bei der Einhaltung behördlicher Anforderungen.
Ein gutes Beispiel, wie ernst die Folgen sein können, wenn die IT-Abteilung es nicht hinbekommt, ist Knight Capital. Bei dem Finanzdienstleister führte ein Prozessfehler zu einem fehlerhaften Deployment einer Anwendung. Dies hatte einen Verlust von 440 Mio. US-Dollar sowie einen drastischen Absturz der Marktbewertung des Unternehmens zur Folge. Ganz ähnlich verlief der Ausfall bei France Telecom im Juli 2012, kurz nach einem Softwareupdate, der 26 Millionen Menschen vom mobilen Netzwerk abschnitt, komplett ohne jede Möglichkeit, Anrufe oder Textnachrichten zu senden oder empfangen. Dieser Ausfall kostete den Serviceprovider rund 20 Mio. Euro für Reparaturen und Schadenersatz.
Bislang ist Softwarekomplexität noch nicht die Hauptursache von Ausfällen. Tatsache ist, dass enorm komplexe Telekommunikations- und andere Anwendungen allesamt zuverlässig arbeiten, solange man sie nicht anfasst. Konfigurations- und Deployment-Prozesse sind die Hauptfehlerquellen. Die wichtigsten Gründe hängen alle mit dem Fehlen einer extra zu diesem Zweck gebauten Automatisierungslösung für das Deployment und die Konfiguration von Anwendungen zusammen. Es fehlen Paketierung, wiederverwendbare Deployment-Modelle und Möglichkeiten, Snapshots zu validieren und jeden Deployment-Prozess automatisch rückgängig machen zu können. Darin liegen die größten Fehler in der Serviceprovider-Branche und im Unternehmensmarkt allgemein begründet.
Nur durch die Automatisierung der Anwendungsverteilung und Automatisierung ganz allgemein können IT-Organisationen die wachsende Zahl von Branchen- und behördlichen Vorschriften einhalten, die diese Anwendungen betreffen – und ebenso das zunehmende Tempo von Veränderungen in den Griff bekommen. ARA ermöglicht die nötige Trennung von Aufgaben, verhindert, dass Entwickler Zugriff auf Produktionssysteme bekommen, und stellt sicher, dass jede Anwendergruppe nur auf die Funktionen, Anwendungen und Umgebungen zugreifen kann, die sie für ihren Job benötigt. Sie bietet detaillierte Dokumentation und fasst Protokolle in Berichten zusammen, jede Veränderung im gesamten Lebenszyklus einer Anwendung wird automatisch notiert. Zugleich gibt ARA vollständige Transparenz und Kontrolle über alle Prozesse – vor, während und nach der Ausführung. Was auch immer dann noch die IT-Abteilung von Innovationen abhält: Die Komplexität und die daraus resultierenden Fehler können nicht mehr länger als Ausrede dienen.
Über den Autor
Stefan Zeitzen ist Senior Vice President Sales & Services Europe bei Automic Software (vormals UC4 Software)