Das war die JavaLand 2019

Die 6. JavaLand fand vom 19. – 21. März 2019 im Phantasialand in Brühl statt. Wir, das sind mein Kollege Dirk Mahler und ich, waren diesmal als Schulungspartner mit unserem Workshop „Lasst uns einen Monolithen (z)erlegen!“ dabei. Das Thema hat einen Schmerzpunkt getroffen – in kürzester Zeit war der Workshop ausgebucht.

Unseren Teilnehmern zeigten wir anhand eines realen, in Java implementierten E-Commerce-Systems, wie es gelingt, einen unstrukturierten Monolithen zielsicher und risikoarm zu einem strukturierten Modulithen zu refaktorisieren und anschließend Fachlichkeiten als eigenständige Microservices bereitzustellen. Dabei deckten wir interaktiv typische Probleme auf und zeigten Lösungsansätze und deren Anwendbarkeit. Die zahlreichen Herausforderungen, die es auf diesem Weg zu meistern gilt, und die verschiedenen Lösungsmöglichkeiten sorgten für angeregten Austausch während des Workshops.

Wir waren bereits an beiden Konferenztagen vor dem Schulungstag vor Ort. Die Location, das Phantasialand in Brühl bei Köln, kombinierte wieder auf einzigartige Art und Weise den Konferenzalltag mit zahlreichen Fahrgeschäften und Communityveranstaltungen. Über 2.000 Teilnehmer sorgten stets für gut gefüllte Räume und, besonders wichtig bei einer Konferenz, für viele interessante Gespräche zu aktuellen Themen.

Das Konferenzprogramm offerierte eine breite Palette an Themen. Angefangen bei Container-Technologien, Cloud- und Infrastrukturthemen bis hin zur Softwarearchitektur und der Analyse von Softwareanwendungen gab es für jeden Geschmack etwas Passendes. Besonders auffällig war dabei das vielfältige Angebot an Vorträgen über die Modernisierung und fachliche Zerlegung von Monolithen – Themen, die wir auch mit unserem Workshop bedienen konnten. Als Beispiel seien hier der Vortrag von Carola Lilienthal „Von modularen Architekturen zu Microservices“ sowie der Vortrag „Applying (D)DDD and CQ(R)S to Cloud Architectures“ von Benjamin Nothdurft genannt. In diesen stellten die Vortragenden Erfahrungen und Tipps, aber auch praktische Umsetzungen vor, um einen unstrukturierten Monolithen fit für die Zukunft zu machen. Die zahlreichen Diskussionen nach den Vorträgen zeigten, dass ein hohes Interesse daran besteht, aus der „Big Ball of Mud“-Hölle auszubrechen und Anwendungen besser zu strukturieren.

Allen, die ähnliche Schmerzpunkte in eigenen Projekten kennen und wissen möchten, wie Softwaresysteme strukturiert zerlegt werden können und welche Fallstricke existieren, empfehlen wir unseren 2-Tages-Workshop „Lasst uns einen Monolithen (z)erlegen!“. Inhalte, Termine und Preise finden Sie auf der Seite zum Workshop.

Agilität heißt permanente Modernisierung

Artikel als PDF herunterladen:
Download Agilität heißt permanente Modernisierung (2 MB)

Geschäftliche Anforderungen ändern sich kontinuierlich und Softwaresysteme müssen dem Rechnung tragen. Während neue Features oft noch mit vertretbarem Aufwand hinzugefügt werden können, wird es zur Herausforderung, wenn Eigenschaften wie fehlende Wartbarkeit oder mangelnde Skalierbarkeit den wirtschaftlichen Nutzen zunehmend relativieren und die bestehende Systemarchitektur in Frage stellen.

Die Verwendung des Begriffs „Legacy-System“ löst zum gleichen Zeitpunkt zwei gegenläufige Reaktionen aus: Bewunderung sowie Mitleid mit dem Betroffenen. Wartung und Erweiterung von Anwendungen, die über Jahre, vielleicht schon Jahrzehnte gewachsen sind, die Generationen von Entwicklern gesehen haben, gelten als schwierig und aufwändig. Auf der anderen Seite steht aber die Tatsache, dass genau diese Systeme oft das unentbehrliche Rückgrat betrieblicher Abläufe darstellen, in denen wertvolles Wissen über die fachliche Domäne und den damit verbundenen Prozessen kodiert ist.

weiterlesen

Dein System: Das unbekannte Wesen?

Artikel als PDF herunterladen:
Download Dein System: Das unbekannte Wesen

Wir haben täglich mit über Jahre gewachsenen Softwaresystemen zu tun, welche so komplex und undurchdringlich sind, dass sie die Bezeichnung „Unbekanntes Wesen“ verdienen, das Stichwort ist hier oft Monolith. Das Hauptproblem: ein Großteil unserer Arbeitszeit fließt in das reine Verstehen solcher Monster, ohne dass wir produktiv etwas an der Anwendung ändern. Klar, es ist an der Zeit der Refaktorisierung, also wieder Struktur in das System zu bringen. Was sich so einfach anhört, birgt aber viele Gefahren. Diese sind zum einen technischer Natur: Wie soll die Zielstruktur aussehen? Stimmt meine gedachte Architektur mit der realen überein? Welche Komponenten gibt es und wie sollen sich die einzelnen Klassen diesen zuordnen? Welche Auswirkungen hat das Herauslösen von einer identifizierten Komponente? Aber auch wirtschaftliche Aspekte sind wichtig zu betrachten: Wie weise ich nach, dass eine Refaktorisierung für die zukünftige Arbeit wirtschaftliche Vorteile bringt? Wie kann der Aufwand und damit die Kosten möglichst geringgehalten werden? Was kann ich tun, um weiterhin lieferfähig zu bleiben? Beide Listen lassen sich vermutlich endlos weiterführen. Deswegen soll dieser Artikel einen Weg aufzeigen, wie mit dem SAR-Framework, einem Tool im jQAssistant-Universum, die bestehenden Strukturen analysiert und die Ergebnisse zur Beantwortung zahlreicher Fragen genutzt werden können.

weiterlesen

Architekturmanagement mit jQAssistant und Asciidoc

Artikel als PDF herunterladen:
Download Architekturmanagement mit jQAssistant und Asciidoc

Welchen Nutzen hat eine aufwändig zu pflegende Architekturdokumentation, wenn deren Inhalt sich weit vom realen Geschehen im Code entfernt hat? Keinen, aber in der Realität ist dieser Zustand sehr oft anzutreffen. Im Folgenden soll an einem realen Beispiel ein leichtgewichtiger Ansatz beschrieben werden, der relevante Informationen direkt im Quellcode vorhält und nach Wunsch in jedem Build die Ist-Architektur mit dem gewünschten Soll-Zustand abgleicht.

weiterlesen

Neuer Workshop:
jQAssistant – Getting Started!

logo_jqa_lang_dunkel_rgbNeben unseren Consulting-Leistungen zu jQAssistant bieten wir ab sofort einen Einsteiger-Workshop an, für alle, die jQAssistant als Werkzeug kennen lernen möchten. Dirk Mahler – Trainer und Initiator von jQAssistant – zeigt Ihnen, wie das Kommandozeilen-Werkzeug bzw. das Maven-Plugin zum Einlesen von Artefakten und Projekten eingesetzt werden kann, Abfragen auf den Datenstrukturen interaktiv ausgeführt und Design- und Architektur-Konzepten validiert werden können. Der Workshop findet vom 22. – 23. August in Dresden statt und richtet sich an Entwickler und QA-Ingenieure mit fortgeschrittenen Kenntnissen in Java und grundlegendem Know-how in Apache Maven.

Aktuell können Sie den Workshop zum Starterpreis buchen. Detaillierte Informationen und das Anmeldeformular finden Sie auf unserer Seminarseite:
jQAssistant – Getting Started!

Wenn Sie regelmäßig über jQAssistant informiert werden möchten, können Sie den Newsletter abonnieren oder uns per Twitter folgen:
Anmeldung jQAssistant Newsletter
@jqassistant

Dev-Blog:
https://jqassistant.org

Architekturberatung:
http://jqassistant.de

Fragen rund um jQAssistant:
Dirk Mahler (info@jqassistant.de)

 1 2 3 Vor