Digitalisierung beugt IT-Kompetenzverlust vor

Business-Lösungen

Digitalisierung beugt IT-Kompetenzverlust vor

Planungssicherheit dank agiler Methoden

Laut einer Studie der KFW Bankengruppe, die am 18.08.2016 in Frankfurt vorgestellt wurde, befindet sich der deutsche Mittelstand noch in einer frühen Phase der Digitalisierung. Auch eine aktuelle Studie, die federführend von Lünendonk und der TU Darmstadt erstellt wurde, kam zu dem Schluss, dass Firmen bei der digitalen Transformation noch in der Experimentierphase stecken. Es droht ein Wettbewerbsnachteil.

Verstärkt wird dieser Aspekt dadurch, dass viele Unternehmen in den nächsten Jahren einen relevanten Anteil ihrer internen Kompetenzen, die ihre Legacy-Systeme wie IBM System i, RPG oder DB2 betreffen, aufgrund von Ruhestandsabgängen verlieren werden. Diese jahrelangen, fundierten Erfahrungen sind in der heutigen Zeit kaum zu kompensieren.

In dieser Phase müssen Unternehmen reagieren. Es geht um die nachhaltige und sichere Gestaltung von Bestandssystemen, um die Umsetzung neuer Anforderungen aus den Bereichen Big Data, Analytics, Cloud-Systeme, Mobility sowie IoT und es geht um die Flexibilisierung von Geschäftsprozessen.

In dieser Situation treffen wir in der letzten Zeit auf Unternehmen, die verstanden haben, dass diese Herausforderungen nicht alleine durch technische Entscheidungen zu lösen sind. Entscheidend ist der methodische Lösungsansatz und an dieser Stelle kommen agile Vorgehensmodelle ins Spiel.

Agiles Projekt-Controlling

Warum sind agile Methoden ein wichtiger Erfolgsfaktor?

Risikominimierung, Planungssicherheit, Qualitätsmaximierung! Natürlich sind das immer noch entscheidende Aspekte bei der Umsetzung von IT-Projekten. Aber es kommen Kriterien hinzu, die den Einsatz moderner, agiler Vorgehensweisen verlangen.

Geschwindigkeit, Flexibilität, Aktualität, Nachhaltigkeit und Innovation sind Aspekte, die sich aus konkreten Anforderungen ableiten lassen. Wie schnell können neue Anwendungen in Produktion gehen und wie schnell können Geschäftsprozessänderungen oder neue, innovative Prozesse in Betrieb genommen werden? Wie oft können Releases und Updates live gestellt werden? Diese Fragen resultieren alle aus der Notwendigkeit, dass die IT-Anwendungen eines Unternehmens heute sehr viel häufiger und schneller den Marktbedingungen angepasst und erneuert werden müssen. Als Konsequenz daraus folgt die Bedingung einer deutlichen Verkürzung der Deployment-Zyklen und einer entsprechenden Beschleunigung des Software-Entwicklungsprozesses.

Die Verkürzung der Entwicklungszyklen bedeutet, dass Software in kleinere Teile getrennt sein muss und führt in Konsequenz zu einer Verdichtung der Kompetenzen. Heute wartet niemand mehr darauf, dass ein Pflichtenheft und eine Spezifikation über Monate oder Jahre definiert, was zum Zeitpunkt der Implementierung bereits veraltet ist. Agile Entwicklung heißt, Software in kurzen, agilen Iterationen definieren, implementieren, testen und liefern zu können. In vielen Unternehmen wird an dieser Stelle bereits in Zeiteinheiten von Wochen oder Tagen gedacht.

Die Verdichtung der Kompetenzen verlangt eine interdisziplinäre Zusammenarbeit in einem „Cross-Functional-Team“. Um Software in so kurzer Zeit qualitativ hochwertig und passgenau umsetzen zu können, müssen alle notwendigen Kompetenzen – und das bedeutet, die dafür erforderlichen Personen – zielgerichtet zusammenarbeiten. Damit sind Menschen aus Management, Fachbereichen, Software-Entwicklung, Operations und Infrastruktur gemeint. Die agile Methodik Scrum bietet für diese Zusammenarbeit ein ideales Rahmenwerk.

Agile Rahmenwerke wie Scrum oder Kanban sind bekannt und werden bereits in der Praxis eingesetzt. Damit lässt sich die notwendige Transparenz schaffen, die eine Grundvoraussetzung für das erfolgreiche Miteinander der unterschiedlichen Menschen ist. Dadurch ist auch eine Basis vorhanden, die in kurzen Iterationen, den sogenannten Sprints, Ergebnisse produziert. In Kombination mit einem hohen Automatisierungsgrad im Bereich Testen und im Bereich des Deployments lassen sich die Lieferprozesse für Anwendungen beschleunigen (Continuous Delivery) und teilweise auf wenige Tage verkürzen. Mit Hilfe agiler Methoden lassen sich Erfolgs­kriterien wie Geschwindigkeit, Flexibilität und Innovation optimal realisieren.

Agiles Projekt-Controlling

Wie verhält es sich mit traditionellen Aspekten wie Planungssicherheit oder Risikominimierung und wie sieht es mit der Projektkontrolle aus? Agile Projektkontrolle ist in der Praxis bisher wenig verbreitet und wird häufig aus Unkenntnis heraus nicht angewendet. Die Lösung besteht in der konsequenten Ausnutzung agiler Rahmenwerke. Auf der Basis von Scrum lassen sich explizit Erfahrungswerte messen, wie beispielsweise die Team-Performance und die Team-Geschwindigkeit, und daraus können genaue Prognosen abgeleitet werden. Innerhalb von Minuten können die Konsequenzen in puncto Aufwand und Kosten neuer funktionaler Anforderungen bestimmt werden. Im Verlauf eines agilen Projektes wird die Genauigkeit dieser Prognosen immer besser.

Agiles Controlling basiert auf dem Aufbau einer empirischen Datenbasis, die beispielsweise durch das „Sprint-Burndown-Chart“ oder das „Release-Burndown-Chart“ visualisiert werden kann. Im Ergebnis bieten agile Methoden eine deutlich bessere und aussagekräftigere Planungssicherheit als klassische Methoden.

Eine weitere Grundeigenschaft der Agilität ist die Risikominimierung, denn durch die kurzen Lieferzyklen in Verbindung mit maximaler Transparenz und guter Projektkontrolle kann der aktuelle Status immer sehr scharf definiert werden. Der Qualitätsaspekt ist ein wichtiges Merkmal agiler Vorgehensweisen. In jedem Sprint muss jede noch so kleine Aufgabe die „Definition of Done“ (DoD) erfüllen. Diese fungiert als Quality Gate und bietet auf kleinster Ebene bereits eine Qualitätskontrolle, wie sie in klassischen Projekten nicht zu finden ist.

Fazit

Die Herausforderungen der Zukunft sind durch die Anwendung agiler Methoden nachhaltig und effektiv zu erfüllen, wobei sich die genaue Ausrichtung dieser Methoden nach den Rahmenbedingungen in den Unternehmen richtet. Grundsätzlich sind agile Ansätze in jedem Unternehmen umsetzbar. Hinzu kommt, dass agile Methoden effektiv in Kombination mit modernen Lösungsansätzen eingesetzt werden können, speziell im Bereich der Automatisierung von Tests und des Deployments.

Agile Methoden sind absolut technikneutral. Aufgrund der intensiven und effektiven Zusammenarbeit in einem interdisziplinären Team sind Aufgabenstellungen besonders gut geeignet, die sich in einem heterogenen Technologieumfeld abspielen.

Um nachhaltige Lösungen aufzusetzen, lohnt es sich, einen strategischen Plan zu entwerfen, der im Kern agile Rahmenwerke und den CI- / CD-Prozess betrachtet. Auch wenn einige Themen Neuland sind, darf es für eine zukunftsgerichtete Strategie keine Tabuthemen zum Beispiel im Kontext Scrum, Open Source, Java Enterprise (JEE), Continuous Integration (CI), Continuous Delivery (CD) oder bei Tools wie Docker etc. geben.

Frank Joecks,
Geschäftsfeldleiter Software-Lösungen der PROFI AG