Summary:
Thema: Migration eines Schedulings
Herausforderung: Ablösung der historisch gewachsenen Lösung ohne Know-How Träger
Vorgehen: Evaluation alternativer Lösungen, Analyse des bestehenden Systems, Migrationskonzept, Big Bang
Dauer: ca. 20 Personentage
Eingesetzte Tools: VisualCron, Teradata, Shell Skripte
Eine klassische Ausgangssituation für eine notwendige Migration: ein engagierter Mitarbeiter verlässt das Unternehmen und nimmt das Know-How für eine Kernsoftware mit. So geschehen bei unserem Kunden, einem großen Online Händler. Dabei geht es um eine umfangreiche Software zur Steuerung von Programmabläufen (Automatisierung) auf Unix Servern. Nicht UC4 (inzwischen: Automic) oder Control^M haben hier den Ablauf bestimmt, eine eigens entwickelte Skriptsprache steuert eine Sammlung von SQL Abfragen und Shell Skripten. Die Oberfläche liefert MS-ACCESS. Wohin migriert man so eine Spezialanfertigung?
Oftmals verlässt mit einem Mitarbeiter viel Know-How das Haus. Kopfmonopole lassen sich selten gänzlich vermeiden.
Die Entscheidung nach einem Review verschiedener Anbieter fiel auf VisualCron. Eine Windows basierte Scheduling Software mit einer ausgereiften Oberfläche. Für die etwas ungewöhnliche Entscheidung für eine windows-basierte Anwendung in einer durch Server und Linux dominierten Umgebung war der Wunsch ausschlaggebend, den Fachanwendern in der Abteilung eigene Planungsmöglichkeiten für Jobketten an die Hand zu geben. Zwar wird in der Kern IT des Hauses mit Control^M gearbeitet, der betroffene Bereich kann seine Prozesse allerdings sehr unabhängig steuern. Die zu steuernden Prozesse bestehen im Wesentlichen aus SQL Skripten, Unix-Shell Skripten und Skripte für analytische Software. Die Jobketten sind daher auch von niedriger bis mittlerer Komplexität. Dieser Hintergrund ließ die Entscheidung für das Tool sinnvoll erscheinen.
Im ersten Schritt war ein Konzept zu erarbeiten, mit dem die Migration vom Altsystem gelöst werden konnte. Das Altsystem basierte im Wesentlichen auf Skripten, die in einer eigens entwickelten und gut dokumentierten Steuersprache geschrieben waren. Diese Skripte mussten auf ihre Einzelschritte hin analysiert werden. Diese einzelnen Schritte mussten dann auf die Möglichkeiten von VisualCron übertragen werden.
Systematisierung der Analyse vorhandener Prozesse mit Hilfe von Python Skripten
Um die alten Skripte zu analysieren wurden die wichtigen Bestandteile mit Hilfe eines Python Skriptes extrahiert. So konnte eine Übersicht aller verwendeten Umgebungsvariablen, der angesprochenen Shell und SQL Skripte und der Jobreihenfolge erstellt werden.
Nach ausführlicher Analyse aller vorhandenen Steuerungsmechnismen und der angesteuerten Programme konnten die Zielprogramme in drei Cluster eingeteilt werden. Für jedes dieser Cluster wurde ein Umsetzungszenario entwickelt. Dabei konnte ein Cluster vollkommen mit dem Know-How der Abteilungsmitarbeiter umgesetzt werden, nachdem diese in der neuen Software von uns geschult wurden. Ein weiteres Cluster enthielt Problemfälle bei denen oftmals auch Qualitätsmängel festgestellt wurden, die sich über die Jahre eingeschlichen hatten. Diese erzeugten trotz geringem Umfang den höchsten Aufwand in der Migration.
Letzten Endes konnte die Steuersoftware erfolgreich umgesetzt werden und das VisualCron als neues Frontend für den Fachbereich etabliert werden.