DevOps im Mainframe-Umfeld Modernisierung macht auch heterogene IT-Umgebungen agil
Die Heterogenität der IT-Landschaften erschwert die Umsetzung von DevOps-Konzepten. Um auch im Mainframe-Umfeld von schneller Software-Entwicklung und kurzen Release-Zyklen zu profitieren, ist zunächst eine Modernisierung erforderlich.
Anbieter zum Thema

Wettbewerbsfähige Unternehmen zeichnen sich durch schnell verfügbare Applikationen aus. Herkömmliche Release-Zyklen von sechs oder zwölf Monaten, wie sie nicht nur in der Mainframe-Entwicklung üblich waren, sind im Web und bei mobilen Anwendungen nicht mehr akzeptabel.
Die so genannten digitalen Unternehmen, die hier die Maßstäbe setzen, bringen durchaus einmal bis zu zehn neue Releases am Tag heraus. Zum Teil beruhen deren Geschäftsmodelle sogar auf dem Konzept des Continuous Delivery, also auf der laufenden Bereitstellung neuer Software-Versionen, um Anforderungen quasi in Echtzeit umzusetzen. Mit den herkömmlichen Verfahren der Software-Entwicklung ist dergleichen nicht zu realisieren.
Agile Methoden treiben die Entwicklung an
Zur Beschleunigung der Entwicklungsprozesse haben sich besonders die agilen Methoden etabliert. Kleine Teams – so genannte Sprints – erstellen kurzfristig lauffähige Versionen ohne aufwändige Spezifikation oder Regelwerke. Die Praxis zeigte, dass die Qualität dieser Anwendungen der von klassisch erzeugten Programmen in nichts nachstand. Allerdings haperte es bei der Umsetzung, denn für die Bereitstellung der Software für den Produktivbetrieb, der Software Delivery, hatte niemand agile Prozesse vorgesehen. Somit war der Weg für Continuous Delivery versperrt.
Mit DevOps wird nun eine Integration von Software-Entwicklung und -Betrieb angestrebt: beide bislang getrennten Teams sollen eng zusammenarbeiten. Kurze Wege in der Abstimmung, gegenseitiges Vertrauen der Beteiligten und intensiver Know-how-Austausch sind die wichtigsten Faktoren. DevOps wendet die agilen Methoden der Software-Entwicklung damit also auch auf den IT-Betrieb an. So wird die Anwendungsbereitstellung flexibler und kosteneffizienter.
Dazu benötigen die Teams jedoch Werkzeuge, die die agile Zusammenarbeit fördern. Diese Tools, beispielsweise Puppet, Chef oder Rational Teamconcert, müssen dann auch eine weitgehende Automatisierung der Prozesse ermöglichen, um die Herstellung von Software insgesamt so effizient wie möglich zu gestalten; sie müssen also auch Release Automation umfassen.
Das erhöht nicht nur die Software-Qualität, da sich bis zu 25 Prozent der Entwicklungsfehler vermeiden lassen, sondern sorgt auch dafür, dass 80 Prozent der Fehler in der Produktion gar nicht erst passieren. Die Bereitstellung kann so von Monaten auf Tage beschleunigt werden und ermöglicht ein Continuous Delivery. Damit das reibungslos gelingt, ist aber meist eine Modernisierung erforderlich.
Modernisierung schafft Flexibilität
Die Unternehmens-IT muss heute neben Software-Entwicklung und -Betrieb auch unterschiedliche Arten von IT-Welten unter einen Hut bringen. Dies betrifft vor allem Unternehmen, die noch klassische Mainframes oder AS/400-Systeme betreiben und diese nicht einfach aufgeben können oder wollen.
Die Modernisierung der Mainframe-Entwicklungslandschaft durch den Einsatz agiler Methoden und entsprechender Werkzeuge sichert vorhandenes Know-how, steigert die Qualität, ermöglicht Kostenersparnis durch Automatisierung sowie Einsparung von Rechenleistung. Ganz nebenher kann sie sogar junge Entwickler aktivieren und motivieren. Wenn Unternehmen etwa Entwicklungs-Vorgänge und Tests ganz in offene Systeme verlagern, sparen sie dadurch bis zu zehn Prozent ihrer MIPS.
Die Ausgangssituation ist bei der Modernisierung der herkömmlichen Entwicklungslandschaft vergleichbar mit der des DevOps-Konzepts: Die einzelnen Bereiche – in diesem Fall etablierte und agile Entwickler – kommunizieren nur unzureichend miteinander. Meistens stehen sich hier unterschiedliche Kulturen gegenüber: die Open-System- und die Mainframe-Fraktion.
Auch auf der technischen Seite unterscheiden sich die beiden Bereiche durch unterschiedliche Werkzeuge und Methoden: mit Java wird grundsätzlich anders gearbeitet als mit Cobol, dem Wasserfallmodell stehen agile Methoden wie Scrum gegenüber. Doch viele moderne Werkzeuge sind mittlerweile auch für Mainframe-Anwendungen verfügbar, so etwa Eclipse. Mit ihnen lassen sich nicht nur die Entwicklungszyklen verkürzen, sondern auch die Entwicklung selbst beschleunigt sich um bis zu 20 Prozent.
Damit die in DevOps realisierte Angleichung von Entwicklung und Betrieb reibungslos verläuft, muss sie sich quer über die zentralen Mainframes und die verteilten Plattformen erstrecken. Die Vereinheitlichung der Prozesse vermeidet Brüche und reduziert die Deployment-Kosten um bis zu 20 Prozent.
Auch Mainframe-Umgebungen profitieren von DevOps
Im Mainframe-Umfeld zeigt sich, dass ohne modernisierte IDEs, Entwicklungs- und Test-Tools eine konsequente Umsetzung von DevOps nicht möglich ist. Sie erleichtern nicht nur die Abstimmung von Entwicklung und Betrieb, sondern ermöglichen sie vielfach erst. Die Modernisierungsmaßnahmen führen außerdem dazu, dass ein Return on Investment wesentlich eher erreicht wird, weil beispielsweise Rechnerkapazitäten gespart werden.
Ein weiterer Aspekt gewinnt in letzter Zeit durch das Cloud Computing an Bedeutung: Auch DevOps-Aktivitäten lassen sich durch Managed Services abdecken. Darunter fallen insbesondere der Betrieb und die Weiterentwicklung der SCM-Systeme, der Entwickler IDEs oder sonstiger anwenderspezifischer Tools.
Um kurze Release-Zyklen auch in heterogenen IT-Landschaften zu gewährleisten, führt kein Weg am DevOps-Ansatz vorbei. Die Umsetzung ist aber nur möglich, wenn das integrative Konzept auch die Modernisierung beinhaltet.
* Bernd Koschinski ist Vice President Consulting Services bei CGI in München.
(ID:44511099)