Thema: Softwarearchitektur-Kernthema
- Dienstag
22.10. - Mittwoch
23.10. - Donnerstag
24.10.
Eine auf (Micro-)Services 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 dieser Session beantwortet werden. So viel vorab: Umdenken ist gefragt!
Im Rahmen der Session beschäftigen wir uns mit den Auswirkungen des Datasource-per-Service Pattern und wie man diesen sinnvoll begegnet. Die aufgezeigten Lösungsansätze sind das Resultat aus mehr als fünf Jahren praktischer Erfahrung in Microservices-Projekten.
Lars Roewekamp, Gründer und Geschäftsführer bei der open knowledge GmbH in Oldenburg, beschäftigt sich als „CIO New Technologies“ mit der Analyse und Bewertung neuer Software- und Technologietrends.
Ein besonderer Schwerpunkt seiner Arbeit liegt derzeit auf Enterprise- und Cloud-Computing, Big Data und KI, wobei neben Design- und Architekturfragen insbesondere die Real-Life-Aspekte im Fokus seiner Betrachtung stehen.
Er ist Autor vieler Fachartikel und -bücher und beschäftigt sich seit der Geburtsstunde von Java mit dieser Programmiersprache.
Mit Architekturbewertungen ist es möglich, Schwächen und Potenziale von Softwarelösungen herauszuarbeiten, Entscheidungen abzusichern und Verbesserungsmaßnahmen zu bewerten. Klassische Analyseansätze aus diesem Umfeld wie ATAM sind fundiert, kommen aber gerade in beweglichen Softwarevorhaben etwas schwergewichtig, mitunter fast zeremoniell daher. In diesem Vortrag lernt ihr mit LASR (Lightweight Approach for Software Reviews) eine leichtgewichtige Herangehensweise kennen. Ihr könnt diese mit eurem Team unmittelbar anwenden, euer Softwaresystem beleuchten und zügig zu ersten Erkenntnissen kommen. Wir greifen auf die Essenzen etablierter Bewertungsmethoden zurück. Und erarbeiten uns einen roten Faden durch ein Review, inkl. möglicher Vertiefungspunkte für eine höhere Konfidenz im Bewertungsergebnis.
Stefan Zörner ist Softwareentwickler und -architekt bei embarc in Hamburg. Er wirkt bei Entwurfs- und Umsetzungsfragen mit, unterstützt beim Festhalten von Architektur und beleuchtet Lösungsansätze in Bewertungen. Sein Wissen und seine Erfahrung teilt er regelmäßig in Vorträgen, Artikeln und Workshops. Stefan ist aktives Board-Mitglied im iSAQB und Autor des Buchs „Softwarearchitekturen dokumentieren und kommunizieren“.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/experten/stefan-zoerner/
Vortrag Teilen
Was bedeutet es eigentlich, Domain-driven Design (DDD) umzusetzen? Dieser Vortrag führt durch ein vollständiges Beispiel und zeigt, wie verschiedene Techniken wie Event Storming, strategisches Design und taktisches Design zusammenwirken, um den Aufbau von Anwendungen zu unterstützen. Auf diese Weise bekommen die Teilnehmer praktische Hinweise, wie sie mit einem einfachen, aber vollständigen Ansatz mit DDD beginnen können.
Eberhard Wolff ist Head of Architecture bei SWAGLab und arbeitet seit mehr als zwanzig Jahren als Architekt und Berater, oft an der Schnittstelle zwischen Geschäft und Technologie. Er ist Autor zahlreicher Artikel und Bücher, u. a. zu Microservices, trägt regelmäßig als Sprecher auf internationalen Konferenzen vor und streamt wöchentlich zum Thema Softwarearchitektur. 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/experten/eberhard-wolff/
Vortrag Teilen
Auch wenn ihr Microservices bereits umgesetzt habt, hängt ein wirklich erfolgreiches Produkt von technisch weiterführenden, methodischen und organisatorischen Themen ab. Wie stark ist die vertikale Idee ausgeprägt? Gibt es eine "Thinnest Viable Platform" und einen Pfad des geringsten Widerstands? Wie gut sind empirische Prozesse ausgeprägt und wie dezentral sind eure Entscheidungswege? In diesem Talk stelle ich ein Self-Assessment vor und biete damit Impulse, Microservices besser zu leben.
Alexander Kaserbacher ist Berater für Software-Architektur bei embarc. Mehrjährige Erfahrungen aus der agilen Software-Entwicklung helfen ihm dabei, den Mehrwert von Software-Architektur zu vermitteln und diese effektiv umzusetzen. Neben Cloud-Anwendungen, verteilten Systemen und evolutionärer Architektur umfasst seine Leidenschaft für Technologie auch die verschiedensten Auswirkungen von Software auf Unternehmen und gesellschaftliche Faktoren.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/experten/alexander-kaserbacher/
Vortrag Teilen
Wahrscheinlich liegt es am einprägsamen Bild der Testpyramide: Projekte strotzen nur so von tausenden winziger Tests mit zweifelhafter Bedeutung, und die Software funktioniert trotzdem nicht. Das ist nicht verwunderlich, denn diese Minitests vernachlässigen die Kollaboration der Bestandteile, auf die es genauso ankommt. Wir werden nicht für einzelne Klassen bezahlt, sondern für Features und Usecases, und die gilt es primär zu testen. Also mal Umdenken: Testunits nicht so klein, sondern so groß wie möglich, Mockito und Selenium raus, Datenbank rein und konsequentes "Design for Test", wo es in der Architektur knifflig wird. Die Session zeigt Beispiele und Architekturmuster aus der Praxis, um das Konzept der "sociable Unittests" zu fördern, die auf ganze Usecases abzielen und eine andere Größenordnung von Absicherung schaffen.
Jan Leßner ist Software-Entwickler, Architekt und System-Analyst bei S&N Invent. Er ist Buchautor und Java-Programmierer der ersten Stunde und engagiert sich in verschiedenen Open-Source-Frameworks. Seit über 10 Jahren ist er in Enterprise-Projekten mit den Schwerpunkten Bilanzanalyse, Loyalty-Programme und Telekommunikation tätig. Dort beschäftigt er sich nicht nur mit der eigentlichen Entwicklung, sondern auch mit dem Aufbau eines eleganten Software-Engineerings.
Vortrag Teilen
Immer mehr Softwareprojekte setzen auf eventgetriebene Architekturen, da sie einfache Erweiterbarkeit, Robustheit und Skalierbarkeit sowie lose Kopplung versprechen. Oft wird dabei jedoch die Komplexität der Implementierung unterschätzt. Diese ergibt sich nicht nur aus technischen Herausforderungen, die gelöst werden müssen, sondern auch daraus, dass viele unterschiedliche Vorstellungen davon existieren, was eine eventgetriebene Architektur eigentlich ist und wie sie zu funktionieren hat.
Diese unterschiedlichen Auffassungen können einerseits zu Problemen im Betrieb führen, andererseits kann ein wachsendes System neue Herausforderungen mit sich bringen, die man anfangs nicht berücksichtigt hat. Basierend auf unseren eigenen leidvollen Erfahrungen in Projekten und teils ähnlichen Erlebnissen unserer Kollegen haben wir eine Liste von Anti-Patterns identifiziert, die entweder aus unterschiedlichen Auffassungen und deren Umsetzung resultieren oder die durch Evolution des Systems die Entwicklung und den Betrieb eines solchen Systems erheblich erschweren können. In diesem Vortrag stellen wir diese Anti-Patterns vor, zeigen, welche Probleme sie verursachen und wie man sie vermeiden kann.
Florian Pfleiderer beschäftigt sich als Senior Consultant bei Digital Frontiers mit agiler Softwareentwicklung. Seine Kunden berät er in den Bereichen Architektur, Microservices und Craftsmanship.
Frank Steimle ist Senior Consultant bei Digital Frontiers. Er beschäftigt sich mit agiler Softwareentwicklung, Domain-Driven Design und der Architektur leichtgewichtiger verteilter Systeme.
Vortrag Teilen
Architektur-Reviews finden zunehmend mehr Verbreitung und ergänzen die schon länger etablierten Code-Reviews. Das finden wir super, denn wir sind überzeugt davon, dass damit alle Entwicklungsprojekte ein sehr mächtiges Werkzeug an der Hand haben, um sich bei wichtigen Entscheidungen abzusichern oder um Probleme früh zu erkennen. Von ATAM über RATE bis zu LASR sind zahlreiche Methoden entstanden, um Architekturreviews strukturiert durchführen zu können. Aber die Methoden kennenzulernen ist nur ein erster Schritt, denn ein wesentlicher Erfolgsfaktor ist die Erfahrung aus anderen Architektur-Reviews.
Mit unserem Vortrag möchten wir euch den Start erleichtern. Wir berichten von unseren Erfahrungen aus mehr als 15 Jahren und über 75 Architektur-Reviews und machen diese auch für eure Reviews zugänglich. Wir zeigen, welches Vorgehen sich für welche Projektsituation und Aufgabestellung eignet, von leichtgewichtiger Absicherung bis Vorbereitung einer Systemmodernisierung. Wir greifen konkrete, wiederkehrende und herausfordernde Fragestellungen heraus und zeigen, wie ihr damit umgehen könnt und worauf ihr besser verzichtet.
Außerdem plaudern wir aus dem Nähkästchen, denn bei Reviews mit Bewertungscharakter geht es auch mal kritischer zur Sache. Umso mehr heißt es dann einen kühlen Kopf zu bewahren, um mit dem Architektur-Review bleibenden Nutzen zu erzeugen.
Matthias Naab ist Software-Architekt, Berater und Co-Founder des Unternehmens „Full Flamingo“. Er hilft Unternehmen pragmatisch, die wichtigen Entscheidungen in der Softwareentwicklung zu treffen und abzusichern. Sein Fokus liegt auf dem Big Picture Engineering, das heißt der gezielten Analyse und Gestaltung komplexer Zusammenhänge in software-intensiven Systemen, insbesondere Digitaler Plattformen und bei der Systemmodernisierung. Er berät mit Leidenschaft Unternehmen zum Thema Softwarearchitektur, Softwareentwicklung und Plattformökonomie und möchte diese Leidenschaft auch bei anderen Menschen entfachen.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/experten/matthias-naab/
Dominik Rost ist Softwarearchitekt und Co-Founder von Full Flamingo. Er hilft Unternehmen pragmatisch, die wichtigen Entscheidungen in der Softwareentwicklung zu gestalten und abzusichern. Besonders gerne kümmert er sich um die Dokumentation von Softwarearchitekturen, macht Architektur-Reviews und unterstützt bei der Modernisierung von Legacy Systemen. Außerdem schreibt er gerne Code, wann immer es möglich ist.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/experten/dominik-rost/
Vortrag Teilen
Resilience is an important issue these days. Many companies claim to have a resilient IT, very few have one.
What does it mean to be resilient? How do I get there? How can I figure out where I currently am? How can I improve?
We will look at several gradations of becoming resilient. We will examine their properties and tradeoffs and how to get there. We will discuss what we can achieve at an IT system level and when we need to address the whole socio-technical system.
At the end of the session, we will have drawn a map from here to resilience you can use as a travel guide towards your resilient IT.
Uwe Friedrichsen is a longtime traveler in the world of IT. Dot Connector. Cartographer of uncharted territory. Keeper of timeless wisdom. Translator between floors. System design. Resilience. Sustainability. Dislikes long bios. Tries to make IT a (bit) better place.
More content from this speaker? Have a look at sigs.de: https://www.sigs.de/experten/uwe-friedrichsen/
Single-Page-Anwendungen (SPA) sind einerseits weit verbreitet, andererseits aber auch umstritten. Sie bieten ein hohes Maß an Interaktivität und Komfort für Benutzer:innen, aber nicht für jede Anforderung ist eine SPA deswegen automatisch die richtige Wahl. Auf der anderen Seite wiederum sind "klassische" auf dem Server gerenderte Anwendungen oftmals nicht ausreichend, wenn es um Webanwendungen mit viel Interaktivität geht. Diese Lücke möchte die Bibliothek HTMX schließen, die serverseitiges Rendering mit einem beliebigen Backend ermöglicht. Im Frontend verspricht sie sowohl eine nahezu JavaScript-freie Entwicklung als auch feingranulare Aktualisierungen der Oberfläche, ähnlich wie von SPAs gewohnt. Ist HTMX also die perfekte Allzwecklösung fürs Frontend?
Anhand praktischer Beispiele möchte ich Single-Page-Anwendungen und HTMX gegenüberstellen. So werden wir sehen, wo die Stärken und Schwächen der beiden Ansätze liegen und für welche Anwendungen sie jeweils geeignet sind.
Neben Beispielen mit Java und Spring werde ich ein paar React-Beispiele zeigen, die du aber auch ohne React-Vorkenntnisse verstehen wirst. Wenn du dich also für moderne Webentwicklung interessierst, bist du in diesem Vortrag genau richtig!
Nils Hartmann ist freiberuflicher Software-Entwickler und -Architekt. Seine Schwerpunkte sind die Entwicklung von Backends mit Java und Spring sowie Frontends mit React und Next.js. Er gibt Schulungen und Workshops zu diesen Themen und hat ein Buch über React geschrieben und Videokurse zu GraphQL veröffentlich (u.a. heise academy). Kontakt: https://nilshartmann.net.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/experten/nils-hartmann/
Vor zehn Jahren habe ich zum ersten Mal einen Vortrag über Event-driven Architecture gehalten. Kafka war gerade seit zwei Jahren Open Source und bei Version 0.8, und nur ein paar Wochen vorher war Java 8 erschienen, und die erste Version von Spring Boot. Damals war gerade das Label "reactive" populär, und so hieß er "From Enterprise To Reactive". Unter anderem habe ich das Saga-Pattern propagiert.
In den zehn Jahren habe ich einiges dazugelernt - musste aber vor allem auch vieles erst einmal verlernen. In diesem Vortrag ziehe ich eine kleine Bilanz: Welche Ansätze haben sich in den zehn Jahren bewährt, und welche waren für mich enttäuschend? (In welcher Kategorie wird wohl das Saga-Pattern wieder auftauchen?)
Nicht alles wird sich übertragen lassen, aber manche Einsicht kann vielleicht hilfreich sein.
Lutz is the Head of Engineering for Investment & Custody Solutions at Upvest, a FinTech start-up that aims to democratize investment.
Previously, taking on the roles of architect or head of engineering, he led the development of software for container shipping, online retailers, financial institutions, cruise ships, and others. His focus is on event-driven architecture, highly available and scalable systems, domain-driven design, and the intersection of architecture and organization.
Softwaresysteme bestehen aus Bausteinen. Aber kann ein Softwaresystem Baustein eines anderen sein? Andersherum: Besteht ein System aus "Bausteinen all the way down"? Das wäre gut, weil beim Zusammensetzen die Details verschwinden und so konsequent abstrahiert wird – wir komponieren dann, anstatt einfach nur zu basteln. Das gleiche gilt für Domänenmodelle – sogennante Kombinatormodelle sind flexible Baukästen statt starrer Formulare.
Die Realität der meisten Systeme sieht leider anders aus: Softwaresysteme und ihre Bausteine werden mehr schlecht als recht miteinander verschaltet, bedingt auch durch gängige Architekturmuster wie die hexagonale Architektur, die einfach nicht komponieren. Bei den Domänenmodellen ist es ähnlich: Elemente typischer OO-Modelle lassen sich oft nur begrenzt zusammensetzen – in der obersten Schicht ist Schluss. Entsprechend groß ist der Refaktorisierungs- und Modernisierungsaufwand, wenn sich die Anforderungen ändern.
Im Talk gehen wir auf eine Reise der Kompositionalität auf verschiedenen Ebenen: Wir besuchen Projekte aus der Praxis, bei denen Kompositionalität ein zentrales Designprinzip ist, nahezu unbegrenzt flexible Kombinatormodelle und kompositionale Modulsysteme. Wir ziehen Paralleln zum Prinzip "closure of operations" im DDD und zeigen die Prinzipien, die du beim Einsatz von Komposition beachten solltest.
Dr. Michael Sperber is CEO of Active Group in Tübingen, Germany. Mike specializes in functional architecture, and has been an internationally recognized expert in the field. He has authored many papers on the subject as well as several books. Mike is also an accredited iSAQB trainer, curator of its FUNAR and DSL curricula, and a member of iSAQB's Foundation working group.
More content from this speaker? Have a look at sigs.de: https://www.sigs.de/experten/michael-sperber/
Vortrag Teilen
Code-Basen, die schwer zu ändern sind, leiden oft unter zwei großen Problemen: einer fehlenden Ausrichtung an Domänengrenzen und dem fehlenden Ausdruck architektonischer Ideen im Code. Um dieses kritische Problem anzugehen, greifen Entwickler auf Separation-of-Concerns-Architekturen wie Onion-, Clean- und Hexagonal-Architektur zurück. Diese Ansätze erzielen jedoch oft gemischte Ergebnisse, da sie sich hauptsächlich auf die Trennung von technischem und Business-Code konzentrieren, ohne die strukturellen Aspekte der Domäne zu berücksichtigen.
In dieser Präsentation diskutieren wir Strategien zur Übersetzung von architektonischen Ideen und Designpatterns in Code auf verschiedenen Abstraktionsebenen. Wir erkunden, wie verschiedene Frameworks und Bibliotheken im Java-Ökosystem diesen Prozess unterstützen, indem sie die im Code vorhandenen Metainformationen für eine strukturelle Überprüfung, Testbarkeit und das Generieren von Dokumentation nutzen.
Dieser Workshop muss zusätzlich gebucht werden.
Oliver Drotbohm ist Teil des Spring-Engineering-Teams bei Broadcom. Seine Arbeitsschwerpunkte liegen im Bereich Softwarearchitektur, Domain-Driven Design, REST, Spring und Persistenztechnologien. Sein neues Buch „Modulithic Applications with Spring“ erscheint 2024.
Today we know very well how to start a new project on a greenfield and how to build a good architecture. But most of us work in projects that have been around for a long time and whose architecture (to put it mildly) is not quite so beautiful. “Monolith” and “Big Ball of Mud” are the unflattering labels put on such systems.
This talk will show how we can introduce (or bring back) structure. Every system is different here, so it’s important to first understand where you are. Then the right steps have to be taken. I present a catalog of refactorings to choose from and heuristics which are the right choices.
The catalog contains refactorings that help to cure: BBOM architecture, anemic domain models, and badly organized teams.
Max. Teilnehmendenzahl: 30
Es wird ein eigener Laptop benötigt.
Dieser Workshop muss zusätzlich gebucht werden.
Dr. Sönke Magnussen hat an der Christian-Albrechts-Universität in Kiel Diplom Informatik studiert und promovierte im Jahr 2003 an der Universität Lübeck im Bereich Software Engineering und Programmiersprachen. Nach der Promotion wechselte Sönke zur Lufthansa und arbeitete hier in verschiedenen Rollen (Softwareentwickler, IT-Architekt, Manager mit Führungsverantwortung) an der Wartung und Weiterentwicklung, an Architektur-Projekten und Betriebsthemen von größeren Softwaresystemen und Applikationslandschaften.
Seiner großen Leidenschaft (Softwareentwicklung und IT-Architektur) bleibt Sönke auch nach einigen Ausflügen in die Prozess-Automatisierung mit Robotics-Process-Automation (RPA), AI, Natural Language Processing treu und bringt seinen reichhaltigen Erfahrungsschatz nun als IT-Architekt, IT-Consultant, Trainer und Projektleiter in Kundenprojekte der WPS ein. Der Fokus seiner Arbeit liegt in der Transformation von größeren Systemen/Landschaften und Organisationen mit dem Ziel, die Systeme zukunftsfähig für die Digitalisierung oder andere große Herausforderungen aufzustellen. Meistens bedeutet dies eine Transformation hin zu modularen IT-Architekturen, Cloudtechnologie und DevOps, um damit eine agilere Anpassung von Software und einen flexibleren und sichereren Betrieb der IT-Systeme zu ermöglichen. Dabei bildet häufig Domain-Driven Design (DDD) das Fundament für die Erarbeitung einer angemessenen IT-Architektur sowie dem richtigen Aufbau der IT-Organisation.