© S&SMedia/Bianca Röder
Das Spiel mit dem Komplexitätsfeuer

KISS of Death by Complexity?


KISS ist das Motto dieser Ausgabe des Java Magazins: Keep it simple, stupid! Auf Deutsch: Mach es nicht unnötig kompliziert. Das klingt gut und erstrebenswert. Aber machen wir in der Praxis nicht eher das Gegenteil davon? Wenn man sich umschaut, dann steht uns die Komplexität bis zum Hals. Und anstatt etwas dagegen zu tun, häufen wir jeden Tag fleißig neue Konzepte, Tools und Technologien obendrauf, getrieben von immer neuen Hypes und Hoffnungen auf Patentrezepte. Zeit für eine kritische Betrachtung.

Das mit der Komplexität glauben Sie mir nicht (Kasten: „Komplexität“)? Schauen wir doch einmal auf die Zutatenliste für eine relativ überschaubare internetfähige Anwendung. Die liest sich häufig in etwa so: Java/Kotlin, JavaScript, SPA, Angular/React/Vue, npm/Yarn, webpack, Grunt, React Native/Swift/Kotlin, PWA, Microservices, Maven/Gradle, Spring Boot/Micronaut/Quarkus, BFF, API Gateway, REST/GraphQL, IAM (Identity and Access Management), OAuth 2.0, JWT, Keycloak, Docker, Kubernetes, Rancher, Helm, Operators, Service Mesh (Istio/Linkerd), Consul/ZooKeeper/etcd, Prometheus/Graphite, ELK, RDBMS, NoSQL/NewSQL (MongoDB/Cassandra), Event Sourcing, CQRS, Kafka/RabbitMQ, Jenkins/CircleCI, Unit Testing (JUnit/MochaJS), Integration/Contract Testing (FitNesse/Jasmine/Pact), Security Testing (ZAB), Load Testing (JMeter/Gatling/Locust), Chaos Engineering, User Acceptance Testing, Git, Artifactory/Nexus, IaC (Terraform/AWS CloudFormation/Puppet/Ansible), OpenAPI, ...

Da fehlt noch eine dreistellige Anzahl an Bibliotheken und Frameworks, die typischerweise zum Einsatz kommt (keine Übertreibung!). Es fehlt noch eine Menge weiterer Tools und Technologien, die ich hier nicht erwähnt habe. Es fehlen Hunderte an Alternativen zu den Lösungen, die hier aufgezählt sind, die aber häufig alle in der IT eines größeren Unternehmens zum Einsatz kommen, weil jedes Projekt und jeder Software-Engineer andere Präferenzen hat.

Komplexität

In diesem Artikel verwende ich den Begriff „Komplexität“ eher umgangssprachlich, also im Sinne von „nicht einfach“. In anderen Zusammenhängen werden die Begriffe „kompliziert“ und „komplex“ (auch von mir) strikt unterschieden. In diesem Artikel hingegen werden sie synonym verwendet.

Mit IAM und Security Testing wird das hochkritische und hochkomplexe Thema Security hier auch nur angedeutet. Nicht zuletzt fehlen all die anderen Konzepte, Tools und Technologien, die man benötigt, um eine zuverlässig funktionierende Betriebsinfrastruktur aufzubauen und zu ...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang