Die Komplexitätsfalle

In Pocket speichern vorlesen Druckansicht 2 Kommentare lesen
Lesezeit: 3 Min.
Von
  • Jürgen Diercks

Wer in der IT-Welt zu Hause ist, weiß, dass sich sein Beschäftigungsfeld nicht gerade durch besondere Übersichtlichkeit auszeichnet. Zahllose sogenannte Standards, Frameworks, Vorgehensweisen und Architekturkonzepte beispielsweise in der Enterprise-Java-Disziplin sollen dem Entwickler zwar eigentlich die Arbeit erleichtern, steigern aber allein durch ihre schiere Menge die Verwirrung. Und einige als Revolutionen angekündigte Erscheinungen wie Enterprise Java Beans gelten unter Kennern sogar als mittlere Katastrophe. Jede Release verspricht, einfacher zu sein als die letzte, kann sich mit ihrem Vorgänger jedoch nicht mehr unterhalten. Für den Unbedarften riecht das Ganze nach dem Spaghetti-Code von morgen.

Auffällig häufig benutzen Keynote-Redner, Referenten und Autoren den Terminus „Problem“. Knifflige Aufgaben gibt es in der Systementwicklung tatsächlich zuhauf: Komplexität entsteht nicht nur durch neue Anforderungen, sondern auch durch die rasant steigende Anzahl von Beziehungen zwischen den beteiligten Menschen und Maschinen. Zusätzliche Schwierigkeiten verursacht der Effekt der Emergenz: Mannigfaltig gekoppelte natürliche oder künstliche Systeme entwickeln regelmäßig neue und nicht vorhersehbare Eigenschaften.

Trotz der in den letzten Jahren enorm verfeinerten Werkzeuge und Techniken verhalten sich etwa Enterprise-Anwendungen immer noch ziemlich dumm. Der Aufwand steht hier oft in keinem gesunden Verhältnis zum Ergebnis. Frustrierte Anwender, hoher Schulungsaufwand, Inkonsistenzen, wucherndes Schnittstellengestrüpp, Altlasten, Bürokratie – alles wie gehabt. IT und Geschäft fremdeln immer noch, obwohl Hersteller von Werkzeugen für das Managen von Geschäftsprozessen gern darauf hinweisen, dass sogar der Anwender aus der Fachabteilung ihre Produkte bedienen können soll.

Der IT-Markt scheint nicht nach drögen kaufmännischen Regeln zu ticken, sondern orientiert sich eher an irrationalen Veranstaltungen wie dem Pop-Business. Skurrile, manchmal quasireligiöse Berufsbezeichnungen deuten darauf hin, dass hier nicht der nüchterne Techniker die Szene beherrscht. Die Java-Gurus, BPM-Päpste und Open-Source-Evangelisten haben klar die Deutungshoheit.

Prof. Nikolaus Wulff von der FH Münster lieferte auf der diesjährigen JAX („Die Grenzen der Komplexität“) zwar auch keine Lösung, aber zumindest eine Erklärung für das Dilemma. In allen Systemen gibt es Phasen des Übergangs, geprägt von Instabilität, Chaos und evolutionären Sackgassen. All diese Systeme streben jedoch eifrig danach, wieder ein stabiles Gleichgewicht zu erreichen. Insgesamt ist der Druck im Kessel enorm hoch, die Grenzen der Skalierbarkeit sind bald erreicht. Fundamentale Änderungen erwartet Wulff allerdings erst in den nächsten 10 bis 15 Jahren. Etwas Dampf entweicht zurzeit nur über Ausweichstrategien wie schnellere Rechner, Grid Computing und Virtualisierung.

Miko Matsumura, Vice President und Deputy CTO (sic!) der Software AG schlug auf derselben Veranstaltung vor, aus Gründen der Komplexitätsreduzierung alle Beziehungen zwischen Maschinen und Menschen in einem Repository auszulagern. Zufällig verkauft sein Arbeitgeber dafür ein geeignetes Werkzeug. Ansonsten solle man sich auf gemeinsame Standards und Vorgehensweisen einigen („let’s agree“, hat nachweislich noch nie richtig funktioniert). Dafür bietet die IT-Industrie selbstverständlich die notwendigen Softwareprodukte. Die firmieren unter den Begriffen Governance und Compliance und sollen endlich für Ordnung sorgen. Aber auch dafür gibt es Tools, Standards und Frameworks. Und so bleibt die IT vorerst das, was sie schon immer war: Die größte Arbeitsbeschaffungsmaßnahme aller Zeiten. (ole)