Die im Konferenzprogramm der OOP 2022 Digital angegebenen Uhrzeiten entsprechen der Central European Time (CET).
Unser Programm gibt es auch als praktische PDF-Datei >>Zum Download
Micro-Frontends eigenen sich nicht in allen Szenarien! Diese Session stellt einen alternativen Ansatz vor: Frontend-Modulithen. Wir besprechen das Abbilden fachlicher Domänen, die Kategorisierung von Bibliotheken sowie Zugriffseinschränkungen zum Erzwingen entkoppelter Teilsysteme. Außerdem nutzen wir inkrementelle Builds und einen Build Cache zur drastischen Beschleunigung des CI-Prozesses. Am Ende wissen Sie, ob Frontend-Modulithen für Sie der richtige Ansatz sind und wie Sie Ihre Anwendungen damit aufbauen.
Zielpublikum: Architekt:innen, Entwickler:innen
Voraussetzungen: Grundlagenwissen zu JavaScript von Vorteil
Schwierigkeitsgrad: Fortgeschritten
Manfred Steyer ist Trainer, Berater und programmierender Architekt mit Fokus auf Angular, Google Developer Expert (GDE) für Angular und Trusted Collaborator im Angular-Team. Er unterstützt Firmen im gesamten deutschen Sprachraum, schreibt für O'Reilly, Heise und das Java-Magazin, spricht regelmäßig auf Konferenzen.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/autor/manfred.steyer
Imagine you have an enterprise frontend monolith. Due to explosive growth, around 30 teams work on it, with about 100 different use cases. How do you keep this system scalable and consistent?
That's the question we faced inside Partner Home at Wayfair. I'm going to share our experience implementing a micro frontend architecture based on React to distribute shared concerns as long-lived applications. We used module federation, a new feature in Webpack 5.
I'll talk about the general architecture, plus an overview of our technical solution.
Target Audience: Architects, Developers
Prerequisites: English, Frontend Architecture, React
Level: Expert
Vortrag Teilen
Vortrag Teilen
Im Zeitalter der Smartphone-Apps sehen sich viele Entwickler:innen dem immer wieder gleichen Problem ausgesetzt: Wie synchronisiert man Daten zwischen den verschiedenen Clients? Vom Telefon, was zeitweilig offline sein kann, zum Tablet, was überhaupt nur im WLAN hängt, zur Weboberfläche. Auf keinen Fall darf man dem User Konflikte anzeigen, die verwirren nur! “Konfliktfreie verteilte Datentypen” sind die Lösung; eine recht junge Technologie, die verspricht, alle diese Probleme anzugehen
Zielpublikum: Architekt:innen, Entwickler:innen
Voraussetzungen: Grundkenntnisse Web-Entwicklung
Schwierigkeitsgrad: Fortgeschritten
Extended Abstract:
Im Zeitalter der Smartphone-Apps sehen sich viele Entwickler*innen dem immer wieder gleichen Problem ausgesetzt: Wie synchronisiert man Daten zwischen den verschiedenen Clients? Vom Telefon, was zeitweilig offline sein kann, zum Tablet, was überhaupt nur im WLAN hängt, zur Weboberfläche. Auf keinen Fall darf man dem User Konflikte anzeigen, die verwirren nur! Und das alles bitte auch mit Historie und effizient, um Bandbreite zu sparen. Können wir das schaffen? “Konfliktfreie verteilte Datentypen” sind die Lösung; eine recht junge Technologie, die verspricht, alle diese Probleme anzugehen. Dieser Vortrag soll ein Rundgang durch die Forschung & Praxis geben und die (wenigen) Haken aufzeigen.
Lars Hupel ist Senior Consultant bei INNOQ in München und ist bekannt als einer der Gründer der Typelevel-Initiative, die sich der Entwicklung von typgetriebenen Scala-Bibliotheken in einer einsteigerfreundlichen Umgebung verschrieben hat. Er spricht oft auf Konferenzen und ist im Open-Source-Umfeld in Scala unterwegs. Außerdem programmiert und redet er gern über Haskell, Prolog und Rust.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/autor/lars.hupel
Lucas Dohmen ist Senior Consultant bei INNOQ und beschäftigt sich mit der Architektur, Konzeption und Umsetzung von Web-Anwendungen in Front- und Backend. Er programmiert in Ruby und JavaScript und hilft bei der Entscheidung und Einführung verschiedener NoSQL-Lösungen. Lucas ist Autor des Buchs „The Rails 6 Way“. Seine Stimme ist regelmäßig im INNOQ Podcast zu hören. Außerhalb seiner Arbeit beschäftigt er sich mit Open-Source- und Community-Arbeit (wie die Organisation und das Coaching beim lokalen CoderDojo).
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/autor/lucas.dohmen
Vortrag Teilen
Software is often resistant to modernization efforts, no matter if it's about phasing out obsolete technologies, migration to the cloud, or establishing modern architecture. The culprit is usually a dependency or obsolete assumption that's too closely coupled to the codebase. But what's the underlying root cause of all that coupling? Often, it's shared, mutable, synchronous state. We will look at a real-world project, and we'll dig ourselves out of the hole it's dug itself into using refactoring, event sourcing, and functional programming.
Target Audience: Architects, Developers
Prerequisites: Some programming
Level: Basic
Extended Abstract:
As shared mutable state is the core paradigm of object-oriented programming, it tends to be ubiquitous in OO projects. How to avoid it then? The example has followed a familiar path: Convenient tooling allowed the project to get off the ground fast, but tied it to its underlying technologies. By the time support for those technologies has expired, coupling has gotten so strong that huge resources are expended on keeping things going "just one more day". If you've seen projects like this hit a wall, this talk is for you.
Michael Sperber is CEO of Active Group in Tübingen, Germany. Mike specializes in functional programming and has been an internationally recognized expert in the field: He has spoken at the top conferences in programming languages, authored many papers on the subject as well as several books. Moreover, he is an expert on teaching programming.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/autor/michael.sperber
The purpose of Serverless is to focus on writing the code that delivers business value and offload undifferentiated heavy lifting to the Cloud providers or SaaS vendors. Today’s code quickly becomes tomorrow’s technical debt. The less you own, the better it is from the maintainability point of view. In this talk I will go through examples of the various Serverless architectures on AWS where you glue together different Serverless managed services, significantly reducing the amount of the code written to perform the task. Own less, build more!
Target Audience: Developers, Architects, Decision Makers
Prerequisites: Basic understanding of AWS Serverless Services
Level: Advanced
Eine auf Microservices basierende Architektur umzusetzen, bedeutet, dass auch die Datenhaltung auf die verschiedenen Services verteilt werden muss. Was aber bedeutet das in der Praxis? Was ist, wenn Daten einer Entität - vollständig oder in Teilen - in mehreren Services benötigt werden? Wie wird referenzielle Integrität über mehrere Services hinweg realisiert? Wie lassen sich serviceübergreifende Transaktionen realisieren? Dies sind nur einige von vielen Fragen, die im Rahmen der Session beantwortet werden. So viel vorab: Umdenken ist gefragt!
Zielpublikum: Architekt:innen, Entwickler:innen, Projektleiter:innen, Manager, Entscheider
Voraussetzungen: Kenntnisse Microservices
Schwierigkeitsgrad: Fortgeschritten
Extended Abstract
Nur wenn die Auftrennung der Fachlichkeit in verschiedenen Microservices auch konsequent bis hin zur Ebene der Datenhaltung vollzogen wird, kann die angestrebte Unabhängigkeit der Services zur Entwicklungs- und Laufzeit erreicht werden. Ohne diesen Schritt dagegen würde sich das Problem der starren Kopplung und der damit einhergehenden Abhängigkeiten einer monolithischen Architektur lediglich um eine Schicht nach unten, in die Datenbank, verlagern. Was aber bedeutet das konsequente Einhalten des Database-per-Service-Patterns und einer damit einhergehenden Verteilung der Datenhaltung in der Praxis? Die Session zeigt die wesentlichen Herausforderungen auf und liefert passende Lösungsansätze.
Lars Röwekamp, Gründer des IT-Beratungs- und Entwicklungsunternehmens open knowledge GmbH, beschäftigt sich im Rahmen seiner Tätigkeit als „CIO New Technologies“ mit der eingehenden Analyse und Bewertung neuer Software- und Technologietrends. Ein besonderer Schwerpunkt seiner Arbeit liegt derzeit in den Bereichen Enterprise und Cloud Computing sowie ML/AI, wobei neben Design- und Architekturfragen insbesondere die Real-Life-Aspekte im Fokus seiner Betrachtung stehen.
Vortrag Teilen
The idea of looking at your organization as a single coherent system is tempting, but is it realistic? If it isn't, what does that mean for software developers, and how can we make discoverable what we are developing? This talk looks at organizations as ecosystems rather than as systems, and asks what that difference means for software development. It all boils down to focusing on software as components implementing business capabilities, and how to best capture these capabilities and make them findable and useful as reusable components.
Target Audience: Developers, Architects, Project Leaders, API Strategists
Prerequisites: API Basics, Large-scale information systems
Level: Advanced
Erik Wilde works in the Catalyst team at Axway. The team's mission is to help customers do the right things in the API and digital transformation space. Erik has been working in a variety of software companies, always focusing on questions of architecture and strategy. Erik's background is in computer science and he holds a Ph.D. from ETH Zurich, but over the course of his career it has become increasingly clear to him that technology rarely is the factor holding back organizations. So now he is helping organizations with their strategy to make sure that they are successful on their journeys.
Vortrag Teilen
Oft wird Software immer schlechter wartbar, je länger Entwicklungsteams an ihr arbeiten. Dazu hat sich die Metapher “technische Schulden” etabliert. Aber es ist nicht immer sinnvoll, technische Schulden zu beseitigen und sie können auch “einfach so” entstehen. Darum geht es in diesem Vortrag - und über die Grundlagen der Metapher, wie sie bei der Kommunikation mit Managern hilft, warum die Metapher eigentlich nicht besonders gut gewählt ist und natürlich wie man mit technischen Schulden sinnvoll umgehen kann.
Zielpublikum: Technische Projektleiter:innen, Architekt:innen, Entwickler:innen
Voraussetzungen: Grundlegendes Verständnis über Softwareentwickung
Schwierigkeitsgrad: Anfänger
Eberhard Wolff ist Head of Architecture bei SWAGLab und arbeitet seit mehr als zwanzig Jahren als Architekt und Berater, oft an der Schnittstelle zwischen Business und Technologie. Er ist Autor zahlreicher Artikel und Bücher, u.a. zu Microservices und trägt regelmäßig als Sprecher auf internationalen Konferenzen vor. Sein technologischer Schwerpunkt sind moderne Architektur- und Entwicklungsansätze wie Cloud, Domain-driven Design und Microservices.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/autor/eberhard.wolff
In den letzten 30 Jahren habe ich viel Software selbst oder mit Teams entwickelt und viele Softwaresysteme analysiert, um die darin angesammelten technischen Schulden zu analysieren und Lösungen zu erarbeiten. Dabei bin ich immer wieder ähnlichen Missverständnissen rund um das Thema Software-Architektur begegnet. Dieser Vortrag wird klären, welche Missverständnisse das sind und warum sie anders gedacht werden müssen, damit wir mit unseren Software-Architekturen kleine und große Probleme lösen können.
Zielpublikum: Software-Architekt:innen, Softwareentwickler:innen, Projektleiter:innen, Manager:innen
Voraussetzungen: Projekterfahrung
Schwierigkeitsgrad: Fortgeschritten
Extended Abstract
Als Missverständnisse werde ich ansprechen:
1) Microservices bilden eine SOA
2) Überall Events
3) Jedes Team wie es will
4) Wiederverwendung
5) Gegen Zyklen helfen Interfaces
6) Sourcecode = Dokumentation
7) Neubau ist besser als Refactoring
Dabei erkläre ich das Missverständnis und biete jeweils eine oder mehrere entgegengesetzte Sichtweisen an. Beispiele benutze ich, um die Argumentation zu verdeutlichen, und schließlich gebe ich jeweils meine Empfehlung dazu.
Dr. Carola Lilienthal ist Geschäftsführerin bei der WPS - Workplace Solutions GmbH und Mitglied der Geschäftsleitung. Seit 1998 entwickelt sie qualitativ hochwertige Softwaresysteme mit ihren Teams. Carola hält regelmäßig Vorträge auf Konferenzen, schreibt Artikel und hat ein Buch zum Thema „Langlebige Software-Architekturen“ veröffentlicht.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/autor/carola.lilienthal
Vortrag Teilen
Architektonische Konzepte in Code abzubilden, bleibt in Java-Applikationen meist eine Herausforderung, ebenso wie die Trennung von fachlichem Code und Applikationsframework. Der Vortrag gibt einen Überblick über das jMolecules API und zeigt, wie Entwickler:innen die bereitgestellten Abstraktionen nutzen können, um Architektur-Konzepte auszudrücken. Darüber hinaus wird konkrete Integration mit Technologien sowie die Generierung von Dokumentation am praktischen Beispiel beschrieben.
Zielpublikum: Software-Architekt:innen, Seniorentwickler:innen
Voraussetzungen: Grundlegende Java- und Software-Architekturkenntnisse
Schwierigkeitsgrad: Fortgeschritten
Extended Abstract
Java-Applikationen basieren gewöhnlicherweise auf einem Framework oder einer Entwicklungsplattform. Einige davon erlauben es, einige architektonische Konzepte auszudrücken. Diese jedoch direkt in Code abzubilden, bleibt meist eine Herausforderung, ebenso wie die Trennung von fachlichem Code und Applikationsframework.
jMolecules ist eine Framework-unabhängige Bibliothek, die es erlaubt, verbreitete, architektonische Konzepte direkt in Code abzubilden, zu überprüfen, ob Regeln bezüglich der Implementierung dieser Konzepte eingehalten werden, und sowohl die nötige technische Integration als auch entsprechende Dokumentation daraus abzuleiten.
Der Vortrag gibt einen Überblick über den grundsätzlich Ansatz und zeigt, wie Entwickler:innen die bereitgestellten Abstraktionen nutzen können. Darüber hinaus wird konkrete Integration mit Spring, Jackson und JPA sowie die Generierung von Dokumentation am praktischen Beispiel gezeigt.
Oliver Drotbohm ist Teil des Spring Engineering Teams bei VMware. Seine Arbeitsschwerpunkte liegen im Bereich Softwarearchitektur, Domain-Driven Design, REST, Spring und Persistenztechnologien. Sein neues Buch "Modulithic Applications with Spring" erscheint 2022.
Stephan Pirnbaum ist Consultant bei der BUSCHMAIS GbR. Er beschäftigt sich leidenschaftlich gern mit der Analyse und strukturellen Verbesserung von Softwaresystemen im Java-Umfeld. In Vorträgen und Workshops präsentiert er seine gesammelten Erfahrungen und genutzten Methodiken.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/autor/stephan.pirnbaum
Vortrag Teilen
Klassisches EAM ist gut verstanden und hat in sich nur langsam oder voraussehbar verändernden Umgebungen erhebliche Verbesserungen bewirkt. Aufgrund steigender Komplexität und Dynamik nimmt die Verbreitung Agiler Methoden immer weiter zu. Außerdem werden im Zuge der digitalen Transformation Veränderungen auf der Business-Seite zunehmend zum wesentlichen Treiber strategischer Veränderungen in der IT. Darauf muss sich die IT insgesamt und die Unternehmens-Architektur im Besonderen mit ganz neuen Vorgehensweisen einstellen.
Zielpublikum: Unternehmensarchitekt:innen, IT-Manager, Architekt:innen, Projektleiter:innen, Change-Manager
Voraussetzungen: Grundkenntnisse EAM, Agile Methoden, Projekterfahrungen
Schwierigkeitsgrad: Fortgeschritten
Extended Abstract
Klassisches EAM ist gut verstanden und hat in sich nur langsam oder voraussehbar verändernden Umgebungen erhebliche Verbesserungen in der IT von Unternehmen bewirkt. Aufgrund steigender Komplexität und Dynamik nimmt die Verbreitung Agiler Methoden immer weiter zu. In der Folge sind Ansätze einer "Agilen Unternehmens-Architektur" in ersten Ansätzen erkennbar. In Zukunft wird in heterogenen Unternehmen allerdings die Herausforderung bestehen, dass innerhalb eines Unternehmens Organisationsbereiche mit ganz unterschiedlichen Umfeldern und Kulturen (tayloristisch, synergistisch und chaordisch) parallel zueinander existieren. Außerdem werden im Zuge der digitalen Transformation Veränderungen auf der Business-Seite zunehmend zum wesentlichen Treiber strategischer Veränderungen in der IT. Darauf muss sich die IT insgesamt und die Unternehmens-Architektur im Besonderen mit ganz neuen Vorgehensweisen einstellen. Klassische, auf die IT-beschränkte "Agile Transformationen" greifen dabei zu kurz.
Vortrag Teilen
Der Beitrag diskutiert, wie man event-getriebene Architekturen als eine Form der reaktiven Architekturen in einer Beratungssoftware einsetzen kann. Warum wurde für diese Beratungssoftware der event-getriebene Ansatz gewählt? Es werden sowohl die geschäftlichen als auch die technischen Anforderungen diskutiert, die zur Wahl dieses Architektur-Ansatzes geführt haben. Der event-getriebene Ansatz erwies sich als der richtige, um eine Entkopplung der Systeme und ein gesamthaftes Bild der einzelnen Aktivitäten für den Benutzer sicherzustellen.
Zielpublikum: Architekt:innen, Entwickler:innen, Entscheider
Voraussetzungen: Prinzipielles Verständnis von Software-Architektur
Schwierigkeitsgrad: Anfänger
Extended Abstract
1. Vorstellung Beratungssoftware
2. Vorstellung Beratungsprozess
3. Variante als steuernder Prozess (klassische Architektur)
4. Variante als event-getriebener Prozess (reaktive Architektur)
5. Vorstellung der technischen Architektur
6. Vor- und Nachteile des gewählten Ansatzes
7. Weitere Arbeiten
Detail:
Die Beratungssoftware der Allianz Gruppe wird in den Agenturen eingesetzt, um Kunden gezielt und individuell beraten zu können. Dabei ist es wichtig, dem Berater auf der einen Seite Hilfe und Richtung in den teilweisen komplizierten Produkten anzubieten und auf der anderen Seite die notwendige Flexibilität des Verkaufsprozesses nicht einzuschränken.
Technisch erlauben Events, die Informationen von sehr unterschiedlichen Systemen ohne eine enge Kopplung dem Agenten zur Verfügung zu stellen. Der Gesamtprozess muss nicht den Einzelsystemen bekannt sein, sondern wird vielmehr aus den verschiedenen Informationen erst gebildet.
Dadurch erreicht man eine hoch flexible und entkoppelte Architektur, ohne auf Gesamtüberblick und strukturierte Darstellungen verzichten zu müssen.
Annegret Junker ist Lead Architect bei Allianz Deutschland. Sie arbeitet seit mehr als 30 Jahren in der Software-Entwicklung in unterschiedlichen Rollen und unterschiedlichen Domänen wie Automotive, Versicherungen und Finanzdienstleistungen. Besonders interessiert sie sich für DDD, Microservices und alles, was damit zusammenhängt. Derzeit arbeitet sie in einem großen Versicherungs-Projekt als übergreifende Architektin.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/autor/Annegret.Junker
Vortrag Teilen
10 Jahre nach CAP wurde das CALM-Theorem formuliert, das beweist, was wir immer alle geahnt haben: Im Fall von Netzwerkpartitionen sind Konsistenz UND Verfügbarkeit unter bestimmten Bedingungen möglich! Im Vortrag gehen wir auf eine Journey vom CAP-Theorem hin zum CALM-Theorem. Ich räume mit gängigen Mythen auf und zeige euch, wie ihr das CALM-Theorem praktisch anwenden könnt. Der Vortrag vereint neueste Forschungsergebnisse und Lessons Learned aus mehreren Studien mit konkreten Entwurfsmustern und Code-Beispielen für Architekt:innen.
Zielpublikum: Architekt:innen
Voraussetzungen: Fachkenntnisse verteilte Systeme, Basiswissen DDD, Entwurfsmuster, Java
Schwierigkeitsgrad: Fortgeschritten
Extended Abstract
Zehn Jahre nach Eric Brewers CAP-Theorem formuliert Joseph Hellerstein das CALM-Theorem und beweist das, was wir schon immer geahnt haben: Im Fall von Netzwerkpartitionen sind Konsistenz UND Verfügbarkeit unter bestimmten Bedingungen möglich! Wie das geht, zeige ich euch in diesem Vortrag und nehme euch mit auf eine Journey vom CAP-Theorem hin zum CALM-Theorem. Ich räume mit gängigen Mythen auf und zeige euch, wie ihr das CALM-Theorem praktisch anwenden könnt. Basierend auf unseren empirischen Erfahrungen aus verschiedenen Studien (Case Studies und Action Research Studies) und unserer laufenden Forschung entwickeln wir Architektur-Empfehlungen und Entwurfsmuster für das Design von daten-intensiven, verteilten Anwendungen. Der Vortrag gibt konkrete Hilfestellungen für Architekt:innen, demonstriert Entwurfsmuster mit laufendem Code und teilt mit den Teilnehmern unsere frei verfügbaren, open access Architektur-Guidelines.
Susanne ist Entwicklerin, Software-Architektin und Forscherin am Fraunhofer IESE. Sie hat mehr als 12 Jahre professionelle Erfahrung und war zunächst für Capgmeini sd&m und die Accso GmbH tätig, bevor sie zu Fraunhofer wechselte. In ihrer PhD erforscht sie wie man zu besseren Software-Architektur-Konzepten für moderne, verteilte Systeme kommt. Sie spricht regelmäßig auf Konferenzen, ist aktives Mitglied der Java User Group Community, Mitglied im Programm-Komitee der JavaLand, Co-Organisatorin der CyberLand Events.