Gewachsene Anwendungslandschaften bereiten vielen IBM i-Anwendern heute Kopfzerbrechen: Wie ist es zu schaffen, im Umfeld monolithischer Kernsysteme und langer Release-Zyklen von den Vorteilen einer modularen Software-Entwicklung und kurzen Release-Zyklen zu profitieren? Schließlich hängt die Wettbewerbsfähigkeit der Unternehmen im Zeitalter der Digitalisierung mehr denn je von schnell verfügbaren und individuell anpassbaren Business-Applikationen ab. Die Modernisierung der IBM POWER i-Entwicklungslandschaft durch den Einsatz agiler Methoden und entsprechender Werkzeuge verspricht Know-how-Absicherung, Steigerung der Qualität und Kostenersparnis durch Hebung von Automatisierungspotenzialen. Ganz nebenher aktiviert und motiviert sie sogar junge Entwickler.

Doch wie geht man an die Sache heran? Software Modernisierung ist kein reines IT-Thema, sondern Chefsache. Die Herausforderung liegt dabei in der Definition einer Modernisierungsstrategie, die an der vorhandenen Anwendungslandschaft anknüpft, die Anwender der Systeme aktiv in den Prozess der Modernisierung mit aufnimmt sowie die Unternehmensstrategie im Fokus behält.

Seit vielen Jahren haben sich in diesem Szenario Verfahren zur Analyse und Bewertung von Individualsoftware entwickelt, die im Jahr 2010 zur Methodik des CLEAN.SOFTWARE.DEVELOPMENT.® (CSD) führten. CSD verfolgt einen ganzheitlichen Ansatz der Software-Entwicklung: Ziel ist es, von überholten, verkrusteten und unwartbaren Codestrukturen sowie unflexiblen Standardlösungen wegzukommen und möglichst moderne, effiziente und individuelle Anwendungen für die zentralen Unternehmensprozesse bereitzustellen. CSD bedeutet daher, sich dort auf die Individualentwicklung zu fokussieren, wo diese für das Unternehmer einen wettbewerblichen oder kostenseitigen Vorteil bringt. Dahinter steht keine neue Erfindung oder Ideologie, vielmehr verbindet sich damit eine langfristige Ausrichtung der Software-Unterstützung im Unternehmen, orientiert an den strategischen Zielvorgaben.

CLEAN.SOFTWARE.DEVELOPMENT.® wurde dafür konzipiert, Entwicklungsteams zu unterstützen, die Software nicht „einfach auf der grünen Wiese komplett neu schreiben“ können, sondern auf gewachsenen Anwendungslandschaften aufsetzen und diese kosteneffizient und zielorientiert fit für die Zukunft machen müssen. Um dies zu ermöglichen, liefert CSD fünf Grundregeln für eine effiziente Ausrichtung der Software-Entwicklung im Unternehmen:

1. Analysiere den Ist-Zustand – schnell und gründlich

Häufig wird über gewachsene und in die Jahre gekommene Softwaresysteme „aus dem hohlen Bauch heraus“ ein Urteil gefällt. Das kann der Wahrheit entsprechen; meist ist es jedoch von individuellen Ansichten oder punktuellen Erlebnissen geprägt. Professionelles Bewerten basiert jedoch auf Zahlen, Daten und Fakten. Ein Software-Assessment liefert die Grundlage dafür, die Kernsysteme anhand von soliden Kenngrößen zu vermessen und deren Zukunft differenziert zu gestalten.

2. Entwickle Deine Software-Roadmap – individuell und flexibel

Mit belastbarem Wissen über den Ist-Zustand können werthaltige IT-Assets weiter genutzt und IT-Kosten von bis zu 75 Prozent eingespart werden. Denn nichts ist teurer und risikobehafteter als Änderungen oder gar der Austausch eines geschäftskritischen Softwaresystems. Um dies zu verhindern, ist eine intelligente Software-Roadmap notwendig, die im Kostenverlauf an die Investitionsmöglichkeiten des Unternehmens angepasst ist und dem Business schnell funktionale Mehrwerte liefert. Dazu müssen die fachlichen Anforderungen aufgenommen und anhand der strategischen und operativen Ziele des Unternehmens priorisiert werden. Auf dieser Basis entstehen belastbare Aufwandsbewertungen für die einzelnen Projektabschnitte. Ebenso werden Risikoprofile und Mitigationsstrategien für die einzelnen Modernisierungsmaßnahmen erarbeitet. Eine solche Modernisierungsroadmap entsteht innerhalb von ein paar Wochen, liefert die Grundlage für eine effiziente Software-Modernisierung und initiiert die notwendigen Change-Prozesse im Unternehmen.

3. Verankere neue Konzepte und Verfahren im Team – nachhaltig

In vielen Teams scheitert die dauerhafte Einführung von nachhaltigen Entwicklungskonzepten (wie beispielsweise Scrum) oder von effizienten Werkzeugen (wie zum Beispiel RDi) am tagtäglichen Zeitmangel und Projektdruck. Mit dem Effekt, dass es keine Innovation oder Weiterentwicklung gibt und alles quasi „beim Alten bleibt“.

Genau hier setzen Chance-Management-Prozesse an, die den Wandel nicht nur initiieren, sondern aktiv gestalten. Dadurch gelingt es, alte Strukturen und Denkmuster zu durchbrechen und sowohl die individuellen Anwendungen als auch alle Beteiligten (Entwickler, Anwender etc.) auf die zukünftigen Businessanforderungen auszurichten.

Natürlich braucht es dazu ein klares Commitment der Unternehmensleitung zur strategischen Bedeutung der Individualsoftware. Hier ist auch die IT-Leitung gefordert, die Kommunikation zwischen IT, Fachbereich und Management zielgerichtet und wertschätzend zu gestalten.

4. Schaffe unternehmerische Mehrwerte – vielfältig und effektiv

Bei der schrittweisen Modernisierung kommt es darauf an, das Potenzial der Individualsoftware für das Unternehmen zu heben. Die Aufgabe des Projektleiters ist es hier, sowohl dem Führungsteam als auch jedem einzelnen beteiligten Mitarbeiter klarzumachen, welche unternehmerischen Vorteile sich durch die Neuaufstellung der Anwendungslandschaft für den Unternehmenserfolg ergeben.

5. Berücksichtige den Generationswechsel – und habe Spaß dabei

Die Zahlen des statistischen Bundesamts sind bekannt: Bereits im Jahr 2020 werden über die Hälfte der Arbeitnehmer und Arbeitnehmerinnen der Generation Y angehören – jener „Kohorte“, die wie keine zuvor, aber jede danach, mit einer sehr hohen technologischen Affinität aufgewachsen ist.

Für jedes Unternehmen mit gewachsener Individualsoftware ergibt sich daraus eine zentrale Herausforderung: die nachrückende Generation dafür zu begeistern und sie zu ermächtigen, jene Software weiterzuentwickeln, für die ihre Eltern den Grundstein gelegt haben. IT-Manager stehen daher in der Pflicht, einfache und nutzerorientierte Oberflächen für die geschäftskritischen Anwendungen bereitzustellen, um als Arbeitgeber für zukünftig neue Mitarbeiter in den Fachbereichen attraktiv zu sein. Entwicklungsleiter müssen dafür Sorge tragen, dass junge (Fach-)Informatiker oder Software-Ingenieure bei ihnen ein Arbeitsumfeld vorfinden, das sie begeistert und in dem sie ihre berufliche Zukunft sehen.

Software-Modernisierung ist kein reines IT-Thema, sondern betrifft das gesamte Unternehmen. Insbesondere ist ein kreativer Dialog zwischen IT-Management und Unternehmensführung notwendig, um einen gangbaren Weg zu finden zwischen wirtschaftlichem Höhenflug und existenzbedrohendem Absturz. Digitalisierung erfordert höchst flexible Software-Systeme, bei denen erstens die Trennung zwischen Entwicklern und Anwendern wenig Sinn ergibt und zweitens die bisherige Trennung zwischen erfahrenen IT-Experten und eher hilflosen Nutzern zu Gunsten einer Zusammenarbeit auf Augenhöhe entwickelt werden muss. Die Zeiten der klassischen Vorgehensweise, geprägt von Arbeitsteilung und linearen Reihenfolgen, sind endgültig vorbei. Die neuen Anforderungen bei extrem gestiegener Komplexität der technischen und sozialen Systeme können nur bewältigt werden, wenn im Rahmen eines simultanen Ansatzes alle Beteiligten integriert in kleinen Schritten gemeinsam agieren, lernen und vor allem mitgestalten können. Es geht bei der Software-Modernisierung um einen kooperativen, aktiven Aushandlungs- und Entscheidungsprozess vor dem Hintergrund der Erkenntnis, dass die vorhandenen IBM i POWER i-Anwendungen den zurückliegenden Erfolg des Unternehmens ermöglicht haben, nun aber ein tiefgreifender Veränderungsprozess für das gesamte Unternehmen bevorsteht.

Mit Sicherheit werden vor allem diejenigen Erfolg haben, die als erste die neuen Zeichen erkennen und den Modernisierungsprozess rasch einleiten.

www.pks.de