Mein Logo und was es ausdrückt

Günther Meinhold

 

Web Design

IT-Komplexität    Button-Komplexitätsframework-1Irrtümer über IT-Komplexität

Man soll die Dinge so einfach wie möglich machen, aber nicht einfacher.

Albert Einstein

 

Das Gegenteil von „einfach“ ist „schwierig“, „kompliziert“ oder „komplex“.  Beide Extrema sollte man gemäß dem obigen Zitat vermeiden. Doch wo genau der Goldene Schnitt  liegt, bleibt uns selbst überlassen. Deshalb fehlt den Ankündigungen, Appellen und Versprechen, die Komplexität von Prozessen, Produkten und Organisationen zu reduzieren oder wenigsten einzudämmen, häufig die Messlatte, an der sich Erfolg oder Misserfolg ablesen lassen.
   Die Schwierigkeiten beginnen bereits bei der Definition des Begriffs „Komplexität“, wovon man sich leicht in der freien Enzyklopädie „Wikipedia“ überzeugen kann. Da ich mich nicht nur, aber hauptsächlich mit IT-Systemen und deren Komplexität beschäftige, wähle ich folgende, für den beabsichtigten Zweck geeignete Begriffserklärung (nach R.Kliegl & G.Fanselow, in: Strube, G. et al. 1996: Wörterbuch der Kognitionswissenschaft, Stuttgart:Klett-Cotta, S.323):

Komplexität bestimmt sich aus der Anzahl und Unterschiedlichkeit der Elemente eines Systems und aus den Relationen zwischen diesen Elementen.

Die Komplexität eines Systems ist  gemäß dieser Definition eine Funktion seiner Größe (Anzahl der Elemente), seiner Heterogenität (Unterschiedlichkeit der Elemente) und  seinen Wechselwirkungen (Relationen zwischen den Elementen). Obwohl sich die drei Aspekte der Komplexität nicht gänzlich entkoppeln lassen, legen sie doch drei Arten von Komplexitätskennzahlen oder –maßen nahe:

   • Größenkomplexität
   • Wechselwirkungskomplexität
   • Heterogenität
 
Diese drei Komplexitätsarten bilden in Summe die strukturelle Komplexität eines Systems. Der Vorteil einer für beliebige Systeme gültigen Definition ist allerdings auch ihr „Schönheitsfehler“, denn sie lässt offen, aus welchen Elementen „unser“ System besteht oder besser welche  Elemente und Verbindungen wir betrachten müssen. 
   
So besitzt ein IT-System zuhauf Bestandteile, die seine Komplexität beeinflussen können. Hier eine Auswahl:

   • Anwendungen
   • Anwendungsversionen
   • Programmbibliotheken
   • Ausführbare Programme
   • Quelltextdateien
   • Klassen
   • Methoden
   • Unterprogramme
   • Quelltextzeilen
   • Architekturstufen und –schichten
   • Frameworks
   • Use Cases
   • Geschäftsfunktionen und –prozesse
   • Betriebssysteme
   • Applicationserver
   • Datenbanksysteme
   • Middleware
   • Messages
   • Daten und Datenmodelle
   • Metadaten und Metadatenmodelle
   • Fachliche und technische Schnittstellen
   • Komponenten und Services
   • Server
   • Netzwerke
   • Peripheriegeräte
   •  ….

In Anbetracht dieser langen, aber keinesfalls vollständigen Liste, verwundert es nicht, dass IT-Systeme häufig komplex sind und ebenso wenig, dass es nicht ganz einfach ist, ihre Komplexität zu berechnen oder zu messen. Das ist die schlechte Nachricht. Eine gute gibt es jedoch auch! Genau genommen, gibt es sogar zwei gute Nachrichten:

1. Nicht alle Bestandteile und Eigenschaften  des IT-Systems sind für jeden gleich interessant und wichtig. Denn nur das, was wir nutzen, konfigurieren, verteilen, installieren oder wofür wir auf irgendeine Weise verantwortlich sind, bewegt und berührt uns direkt, während der Rest und dessen Komplexität aus unserem Blickfeld verschwindet oder sich nie darin befand -  zumindest solange nicht, wie eine Anwendung, eine Komponente oder ein Service ihren Dienst zuverlässig erfüllen.

2. Die Komplexität eines Systems als Funktion der Anzahl, der Heterogenität und der Beziehungen seiner Elemente stellt eine abstrakte Größe dar, da sie nichts über die Art der Elemente und Verbindungen aussagt, was für die Ableitung von Komplexitätsmaßen von Vorteil ist. Denn man kann auf Basis eines Systemmodells wesentliche Zusammenhänge und Methoden entwickeln, die sich auf alle realen Systeme, die dem Modell genügen, übertragen lassen.

Ich habe in meinem Komplexitätsframework die Gesamtkomplexität eines IT-Systems  in einzelne Komplexitätsarten und –kennzahlen  unterteilt, deren Komplexitätsmaße sich separat definieren lassen.
   Die Definition selbst erfolgt auf der Basis von Systemmodellen und generischen Formeln und Verfahren, aus denen für möglichst viele der definierten Komplexitätskennzahlen konkrete Vorgaben zur Komplexitätsberechnung und –messung abgeleitet werden können.