FACHARTIKEL 2013 Software Programmierung, Testing und Implementierung zum Stichtag mithilfe von PERM-Domänen von Herbert Mittelbach
Stichtage Von Herbert Mittelbach Stichtage haben stets eine besondere Bedeutung. Sie bezeichnen bestimmte Tage im Jahresverlauf oder Tage, an denen etwas beginnt oder endet, bzw. sich auf andere Weise verändert. Stichtag, ein Tag an dem etwas beginnt: - der 1. Januar, ein neues Jahr beginnt - der 18. Geburtstag, ein neues Lebensjahr, endlich Volljährig, volle Verantwortung für das eigene Tun, Wahlrecht, mitbestimmen dürfen - Stichtag, ein Tag an dem etwas endet: - der 31. Mai, die Steuererklärung muss abgegeben sein - der 31. Dezember, wieder ein Jahr vorbei - Stichtag, ein Tag an dem sich etwas ändert: - der 1. Januar, die Beitragsbemessunggrenze für die Sozialversicherungen wird angepasst - der 1. Juli, der Rentenwert ändert sich - der 1. eines Monats, ein neues Gesetz wird gültig - Auswirkungen auf die IT Eine besondere Bedeutung haben Stichtage für die IT. In der Regel bedeuten sie Arbeit, mitunter viel Arbeit. Software muss angepasst, oder neu geschrieben werden, getestet und implementiert. Herbert Mittelbach Seite 1 Stichtage
Und Alles muss bis zum Stichtag fertig sein. Punktgenau, denn da ist die Deadline. Wie schafft man es nun ein Programm bis zum Stichtag fertig zu stellen? Durch vorausschauende Planung, den rechtzeitigen Beginn der Arbeiten, die Bereitstellung von genügend Ressourcen, straffe Kontrolle der Fertigstellungstermine, Und wie geht es mit 10 Programmen, oder 50, oder 200? Die kommen in einer Behörde schnell zusammen, wenn ein Gesetz verabschiedet, oder geändert wird. Zunächst natürlich mit denselben Maßnahmen wie vorher genannt. Aber hier gewinnt ein Faktor stark an Gewicht, nämlich die Überführung der neuen Software in die Produktion. Wenn hunderte von Software-Komponenten in einer komplexen Client-Server-Architektur installiert werden müssen, entsteht schnell ein erheblicher Aufwand. Häufig ist ja nicht nur die Software neu, auch Datenbanken müssen migriert werden, Steuertabellen mit neuen Werten versehen werden, Darüber hinaus muss die bisherige Version der Software bis zum Stichtag funktionsfähig sein und ab dem Stichtag soll die neue Version laufen. Es ist kaum vorstellbar, dass eine solche Vielzahl von neuen, oder geänderten Softwareprodukten an einem einzigen Termin in die Produktion gebracht werden können. Die zwei Welten Um diese Herausforderung bewältigen zu können, hat sich das IT-Systemhaus einer großen Bundesbehörde etwas Besonderes einfallen lassen: Herbert Mittelbach Seite 2 Stichtage
Die IT-Welt existiert zum großen Teil zweimal! Im Umfeld der Oracle WebLogicServer-Anwendungen gibt es zwei Welten. Dabei handelt es sich um identisch aufgebaute beständige Middleware-Domänen, kurz PERMs genannt, die sich nur durch den Port unterscheiden. Während in der einen PERM die gerade gültigen Produktivversionen der Softwareanwendungen und der Services enthalten sind und zum Einsatz kommen, kann in der anderen PERM bereits die nächste Version vorbereitet werden. Über die im Loadbalancing hinterlegte IP-Adress/Port- Kombination ist sichergestellt, dass der Zugriff nur auf eine der PERM-Domänen erfolgen kann. Ein paralleler Zugriff auf beide PERM-Domänen ist auf diese Weise nicht möglich. Load- Balancer PERM1 Aktuelle Domäne PERM 2 Zukünftige Domäne Abb 1: Loadbalancer verweist auf die aktuelle Domäne. Herbert Mittelbach Seite 3 Stichtage
Grundsätzlich wird für alle produktiven Softwareversionen dieselbe PERM eingesetzt. Der Wechsel von einer PERM auf die andere, kann nur durch die Änderung der IP-Adress/Port-Kombination im Loadbalancing erreicht werden. Software-Releases Damit dies in geregelten Bahnen abläuft, gibt es jedes Jahr drei Termine (Stichtage), zu denen umfangreiche Umstellungen der Softwareanwendungen durchgeführt werden. Im Vorfeld dieser Releasetermine werden die neuen Versionen der Software-Komponenten in der neuen Welt bereitgestellt und die verschiedenen Teststufen durchlaufen. Über mehrere Testumgebungen (Vorintegration, Integration, ) gelangt die neue Software schließlich in die zukünftige Produktionsumgebung. Durch dieses,»stufenweise Abnahme«, genannte Vorgehen entspannt sich der zeitliche Druck zum Umstellungstermin. Nicht erst nach dem letzten Tag der Gültigkeit der bisherigen Version können die neuen Software-Versionen bereitgestellt werden, sondern bereits längere Zeit vorher. Der PERM-Wechsel Sind alle Schritte der stufenweisen Abnahme durchlaufen und die entsprechenden Freigaben erteilt, kann der Wechsel von der bisherigen Welt in die neue Welt durchgeführt werden. Der PERM-Wechsel steht an. Herbert Mittelbach Seite 4 Stichtage
P1 V Release 1 V Release 3 V Release 5 P2 V Release 2 V Release 4 Abb 2: PERM-Wechsel, Vorbereitungsphase und Release-Wechsel. Üblicherweise findet ein Releasewechsel, und damit verbunden der Wechsel auf die andere PERM-Domäne, immer an einem Wochenende statt. Beginnend am Freitagabend bleibt übers Wochenende genug Zeit die Maßnahmen durchzuführen, die tatsächlich erst zum Stichtag ausführbar sind, z. B. Anpassung von Strukturen und Inhalten der Datenbanken. Anders als bei der Applikationssoftware stehen die Datenbanken nur einmal zur Verfügung. Es wird ja bis zum letzten Tag damit gearbeitet. Eine Modifikation kann deshalb nach wie vor erst zum Releasetermin durchgeführt werden. Nach dem PERM-Wechsel werden also die erforderlichen Skripte ausgeführt und die Datenbanken aktualisiert. Noch ein abschließender Kurztest durch die Produktverantwortlichen, die offizielle Freigabe, und den Nutzern stehen die neuen Programversionen fristgerecht zur Verfügung. Herbert Mittelbach Seite 5 Stichtage