Vom 10. bis 12. Juni 2024 findet in München der Modularisierung, API Design und Domain-Driven Design (kurz MAD) Summit statt. Während des dreitägigen Summits wähle und mixe dir deinen eigenen Lernplan aus vier Themenschwerpunkten: Fundamentals für Einsteigende, Architektur, Domain-driven Design und Cloudnative & Devops. Lars Röwekamp, Arne Limburg und Ina Einemann haben als Program Chairs ein buntes Programm zusammengestellt.
Jetzt Ticket sichern und dabei sein. Zur Event-Website.
MAD-Summit bedeutet Interaktion. Und genau damit wollen wir bereits in der Keynote starten!
Der MAD-Summit vereint die Themenschwerpunkte Domain-driven Design, API-Design und Modularisierung in einer Veranstaltung - und das nicht ohne Grund. Im Rahmen der interaktiven Keynote wollen wir uns der Fragestellung widmen, welchen Einfluss Modul- und Deployment-Grenzen auf den Projekterfolg haben. Dazu werden wir gemeinsam folgende Fragestellungen diskutieren:
Wir werden zunächst eure Sicht der Dinge via digitalem Fragebogen ermitteln, um diese dann im Anschluss moderiert zur Diskussion zu stellen.
Die gute Nachricht vorweg: Einen einzelnen Microservice zu implementieren ist dank Bounded Context, loser Kopplung und klar definierter Kommunikationsschnittstellen denkbar einfach. Nur leider ergibt ein einzelner Microservice noch lange keine sinnvolle Anwendung! Und mit zunehmender Anzahl an Services steigt die Komplexität exponentiell. Um am Ende nicht im Chaos zu versinken, benötigt auch eine Microservices-basierte Anwendung eine Architektur und die Verwendung von Patterns. Wie zum Beispiel sollen Microservices kommunizieren? Synchron oder asynchron? Oder gar beides? Wie wird die Sicherheit in einem verteilten System garantiert? Welche Aufgaben übernimmt ein API Gateway und wird es überhaupt benötigt? Wie bildet man die Dynamik des Systems inkl. automatischem Up- und Downscaling ab. Fragen über Fragen, deren Klärung über Erfolg oder Misserfolg der eigenen Anwendung entscheiden.
Lars Röwekamp gibt in diesem Workshop einen Einblick in fast 10 Jahre Praxiserfahrung mit (Micro)Service-basierten Anwendung und diskutiert verschiedene Lösungsansätze, Patterns und Best Practices. Ein optimaler Einstieg in den MAD-Summit.
Event Storming ist eine Methode aus dem Domain-Driven Design, die es ermöglicht, sich gemeinsam die Fachlichkeit einer Anwendung zu erarbeiten.
In diesem Workshop werden wir uns mit den Grundlagen des Event Stormings und den Einflussfaktoren für eine effektive Durchführung beschäftigen. Wer sind die Teilnehmer? Wie viel Zeit sollte ich einplanen? Was ist eine gute Ausgangsbasis? Welche Flughöhe ist die richtige für eine wertstiftende Diskussion, bei der am Ende alle mit einem gemeinsamen Verständnis über die Fachdomäne rausgehen.
Durch eine korrekte Anwendung bis zum Ende bietet Event Storming eine Fülle von Möglichkeiten. Die resultierenden Erkenntnisse können sowohl für die Gestaltung der User Experience als auch für einen guten Softwareschnitt in Form von Bounded Contexte verwendet werden. Auf diese Aspekte werden wir anhand eines Praxisbeispiels genauer eingehen.
Auf der grünen Wiese lässt sich leicht eine modulare Anwendung schreiben. Was aber, wenn es – wie leider so häufig in der Praxis – einen bestehenden, historisch gewachsenen Monolithen gibt, der schon einmal bessere Tage gesehen hat? Wie kann ein möglicher Migrationspfad aussehen und mit welchen Stolperfallen muss dabei gerechnet werden?
Die Transformation von einem monolithischen Softwarearchitekturansatz zu einer modularen Struktur stellt eine entscheidende Herausforderung dar, die viele Organisationen bewältigen müssen, um mit den sich ständig wandelnden Anforderungen der heutigen IT-Landschaft Schritt zu halten. Dieser Workshop bietet eine praxisnahe Einführung in bewährte Methoden und Strategien, um eine erfolgreiche Migration von einem Monolithen zu modularer Software zu gestalten. Dabei werden nicht nur die Herausforderungen im Code betrachtet, sondern auch die Auswirkungen auf Infrastruktur und Organisation beleuchtet.
Die ersten Erfolge in der Cloud zu erzielen, ist gar nicht so schwer. Anbieter wie AWS, Azure oder Google ermöglichen es auf einfachem Wege, mal eben mit ein paar Klicks eine Anwendung in die Cloud zu bringen. Diese Art die Cloud zu nutzen – oft auch scherzhaft als *ClickOps* bezeichnet – ist jedoch selten nachhaltig. Gerade bei einer aufwändigen Cloud-Migration gerät dieser Ansatz schnell an Grenzen.
In diesem Workshop wollen wir uns anschauen, wie wir das Ganze durchaus besser machen können. Dazu schauen wir uns zunächst einmal in der Theorie an, was es ganz allgemein bei einer Migration in die Cloud zu beachten gilt. Danach lassen wir die trockene Theorie hinter uns und stürzen uns in die direkt in die AWS-Cloud von Amazon.Wir werden gemeinsam schrittweise eine Anwendung in die Cloud bringen und mit Vorgehen wie Infrastructure as Code und CI/CD einen produktionsreifen Prozess für die Provisonierung von Infrastruktur und dem Deployment unserer Anwendung schaffen.
Wir werden zudem einen genauen Blick auf verschiedene Cloud-Service werfen, die uns helfen, unsere Anwendung Cloud-Native zu machen.Ganz konkret werden wir uns im Workshop neben der Cloud selbst mit Werkzeugen wie Terraform/OpenTofu und GitLab beschäftigen. Der Workshop ist außerdem darauf ausgelegt, dass die Teilnehmer ebenfalls Hand anlegen dürfen. Wir stellen dazu einen AWS-Account bereit, sodass jeder direkt mitmachen kann, ohne die eigene Kreditkarte zücken zu müssen. Diskussionen während des Workshops sind zudem ausdrücklich erwünscht!
Am Ende des Workshops sollte jeder Teilnehmer einen gutes Verständnis dafür haben, wie sich eine Migration in die Cloud nachhaltig gestalten lässt. Auch wenn im Workshop AWS zum Einsatz kommt, lässt sich das gewonnen Wissen zu großen Teilen auch auf Cloud-Anbieter wie Microsoft Azure oder die Google Cloud Platform übertragen.
API-Gateways dienen als Einstiegspunkt in die verschiedenen Microservices. Sie kümmern sich dabei um Aspekte wie Security, Routing und Traffic Management. Unsere Experten stellen Ihnen vor, wie Service Meshes eingesetzt werden. Sie dienen dabei als Layer zur Inter-Service-Kommunikation. Dieser Layer kümmert sich etwa um Fault Tolerance und Verschlüsselung. Ob die Services stabil laufen und falls nicht, an welcher Stelle die Probleme auftreten, lässt sich mittels Observability Tools tracken. Hier lernen Sie das gängige Vorgehen anhand eines Graphana-Stacks und OpenTelemetry.
Damit Sie als Entwickler sinnvoll in einer Microservice-Umgebung arbeiten können, sollten Sie wissen, welche Services es gibt, welche APIs diese haben und bei welchem Team die jeweilige Verantwortung liegt. Unsere Experten stellen Ihnen daher backstage.io vor, das mittels openAPI oder asyncAPI die Dokumentation erleichtert. In dem Zusammenhang geht es auch darum, wie man APIs weiterentwickeln kann und wie sich Clients verhalten müssen, damit sie die APIs auch nach der Weiterentwicklung reibungslos verwenden können.
Jetzt Ticket sichern und dabei sein. Zur Event-Website.