Samstag, 10. Dezember 2022

Archiv


Rettung aus der Wolke

Software.- Die Beliebtheit von Apps wächst und wächst. Ein Nebeneffekt: Codeschreiber können gar nicht so schnell programmieren, wie es eigentlich notwendig wäre. Und auch die Tests von Software – ob nun im Miniformat oder in großer Variante – müssen immer schneller vonstatten gehen. Dabei könnte Cloud-Computing helfen.

Von Achim Killer | 09.06.2012

    Eine Softwarekrise gab’s schon mal. In den 60er-Jahren war das. Die Rechner wurden billiger – und entsprechend mehr. Die Programmierer kamen mit dem Softwareschreiben nicht mehr nach. Und die Krise war da. In den vergangenen Jahren nun ist die verkaufte Rechenleistung wieder dramatisch gestiegen – so stark wie nie zuvor – wenn auch nicht unbedingt in Form von Servern und PCs, sondern eher in der Form von Steuerungs-Chips für Autos und Maschinen – und natürlich in Form von Tablets und Smartphones. Auch die wollen programmiert sein. Aber die Kapazitäten dafür sind knapp:

    "Ich denke, das macht durchaus Sinn, über eine zweite oder neue Softwarekrise zu reden. Jedes Mal, wenn Systeme, die Software enthielten, mächtiger, vernetzter im Wesentlichen wurden, gab es Probleme, den Software-Entwicklungsprozess nachzuziehen, wenn Sie so wollen",

    sagt Kristof Klöckner, der Chef von Rational, IBMs Werkzeughandel für Software-Entwickler. Nun könnte man einwenden, dass eine App fürs Smartphone zu programmieren, keine große Sache ist. Aber:

    "Die mobile Anwendung, die bei Ihnen auf dem iPhone oder dem Android-Phone sitzt, ist ja nur die Spitze des Eisbergs."

    Eine Banking-App etwa läuft nicht isoliert auf dem Handy, sondern sie greift auf den Großrechner der Bank zu. Und sie sollte dort tunlichst kein Chaos hinterlassen. Das sicherzustellen, kostet Arbeit, Arbeit, die die Software-Häuser beispielsweise in der Konzeptionsphase eines Programms einzusparen versuchen. "Agile Development" nennt sich das, übersetzt etwa: "bewegliche Software-Entwicklung":

    "Und das ist die Idee jetzt hinter der agilen Entwicklung, dem agile Development, dass wir am Anfang vielleicht die wesentlichen angestrebten Charakteristika kennen, aber nicht alle und dass wir iterativ die Lösung entwickeln müssen in enger Kommunikation mit den Teilhabern an diesem Entwicklungsprozess."

    So geht’s schneller. Ansonsten lässt sich der Entwicklungsprozess kaum noch beschleunigen. Das Rationalisierungspotenzial wurde in Folge der Softwarekrise der 60er-Jahre und der Entwicklung der Informatik zu einer anerkannten Wissenschaft ausgeschöpft. Arbeit sparen lässt sich hingegen noch, wenn ein Programm zwar fertig ist, aber noch nicht eingesetzt werden kann, weil es erst noch getestet werden muss, ob’s funktioniert, ob es sicher ist und ob so leistungsfähig wie nötig.

    "Das wird immer noch manuell von Menschen erledigt. Die müssen in die Arbeit gehen, den Rechner ins Rack stellen und die Software unter dem richtigen Betriebssystem installieren. Wenn man die Zeit zurückdrehen könnte, würde man feststellen, dass das genauso geschieht wie vor 10, 15 Jahren. Nichts hat sich geändert",

    sagt Charles Chu, Direktor für Software-Qualität bei Rational. Einfacher geht das, wenn zu diesem Zweck keine richtigen Testrechner konfiguriert werden, sondern virtuelle, also wenn das benötigte System in der Cloud simuliert wird. Mit wenigen Mausklicks lässt sich so eine virtuelle Maschine bauen. Steve Abrams ist bei Rational für die Rechenwolke zuständig.

    "Man kann die Plattform spezifizieren, auf der die Software laufen soll. Daraus wird dann eine virtuelle Maschine mit einer so und so hohen Prozessorleistung, mit so und so vielen Festplatten und so und so viel Arbeitsspeicher oder auch mehrere solcher Maschinen. Und wenn man die hat, kann man den Entwicklern davon so viele Exemplare zu Verfügung stellen, wie sie benötigen."

    Agile Development und Anwendungstests in der Cloud – die neue Krise zwingt die Softwarehäuser dazu, die letzten Produktivitätsreserven zu mobilisieren.