Thema: Software Architecture
- Montag
03.02. - Dienstag
04.02. - Mittwoch
05.02. - Donnerstag
06.02. - Freitag
07.02.
Moderne Kollaborationsmethoden wie Event-Storming helfen, Fachexpert:innen und Entwickler:innen zusammenzubringen. „Domain Modelling“ geht noch einen Schritt weiter und ermöglicht gemeinsame Arbeit direkt am Code. In diesem Workshop erprobt ihr das Vorgehen an einem praktischen Beispiel.
Ihr bekommt einen PO zur Seite gestellt, der euch die Fachlichkeit erklärt. Zunächst erarbeiten wir im Event-Storming das Big Picture. Anschließend modellieren wir in kleinen Gruppen die Domäne mithilfe eines funktionalen Typsystems. Fachexpert:innen haben die Möglichkeit, direkt Feedback zum Code zu geben.
Ziel des Workshops ist es, nicht nur das Typsystem richtig zum Domain Modelling zu verwenden, sondern auch die Kommunikation mit POs, Kunden und anderen Fachexperten zu üben.
Maximale Teilnehmendenzahl: 24
Zielpublikum: Entwickler, Produkt-Verantwortliche, POs, Architekten
Voraussetzungen: Kenntnisse in TypeScript oder Kotlin sind hilfreich, aber keine zwingende Voraussetzung
Schwierigkeitsgrad: Advanced
Marco Emrich ist Architekt und Consultant bei codecentric und leidenschaftlicher Verfechter von Software-Craft und Codequalität. Er hält regelmäßig Vorträge auf bekannten Konferenzen und ist Autor mehrerer Fachbücher. Wenn er mal nicht tief im Code vergraben ist, zocken ihn seine Kinder in analogen Brettspielen ab. Du kannst ihm unter linkedin.com/in/marco-emrich-47485388 folgen ;)
Ferdi is a Developer and Consultant at codecentric. He is passionate about Software Craft and Domain-Driven Design (DDD), and advocates for close collaboration to enhance quality. Ferdi co-hosts the Software Craft Leipzig Meetup and believes that hands-on sessions are the best way to learn new skills and techniques.
Psychologische Sicherheit ist von entscheidender Bedeutung für erfolgreiche Teamarbeit in der Softwareentwicklung. Die Teilnehmer:innen erfahren, wie wichtig es ist, dass alle Mitglieder sich sicher fühlen, um offen Ideen auszutauschen und Kritik zu äußern.
Der Workshop basiert auf wissenschaftlichen Erkenntnissen und bietet praxisorientierte Ansätze, um psychologische Sicherheit zu fördern.
Die Teilnehmer:innen lernen die Relevanz in komplexen Softwarearchitektur-Projekten kennen, verstehen die Kontextspezifik und warum Unsicherheit oft normal ist. Interaktive Segmente ermöglichen die Reflexion über bestehende Teamdynamiken und bieten konkrete Ansätze zur Verbesserung.
Ziel ist es, evidenzbasierte Strategien zu entwickeln, die langfristig eine offene und konstruktive Teamkultur fördern und bestehende Mythen zu Psychologischer Sicherheit zu entkräften.
Vorkenntnisse sind nicht erforderlich.
Zielpublikum: Architekten, Entwickler, Tester, Fachexperten, Projektleiter, Manager, Entscheider
Voraussetzungen: Keine
Schwierigkeitsgrad: Basic
Martin has been consulting and supporting companies in the implementation of their software projects as a software architect and agile coach for many years. He always has the big picture in mind, looking for the boundaries that naturally divide the domain into conceptual units in order to build robust and efficient systems from these parts. Additionally, his profound experience in facilitating workshops helps him to accompany groups in their process of gaining insights and decision-making and to enable all team members to interact in an appreciative and effective manner.
Helen is a psychologist and has been supporting teams and organizational units in learning together for several years, for example in the role of an agile coach. She uses her training, her systemic approach, and her experience in designing and facilitating collaborative workshops to make collaboration effective and at eye level. In her work, she pays particular attention to the people in the organization without losing sight of the big picture.
Software stakeholders and users approach technology through the lens of their cultural norms and worldviews. As software designers, we often introduce new concepts and terminology to better address those needs. This can mean adapting or even reshaping their cultural perspectives. But culture, by nature, seeks consistency and conformity, providing a framework to our daily chaos. This consistency can make language and models rigid, often leading to ambiguity. So, how can we navigate and reshape these ingrained cultural perspectives and behaviours during software design?
Join our interactive workshop that explores the dynamic relationship between organizational culture and software design. This session offers a balanced mix of theoretical insights into how cultures function and impact our professional lives, coupled with practical exercises to help implement these concepts. We will delve into the critical role of culture in shaping software design, with a special focus on 'symbols' as a core cultural element. Participants will engage with a domain model that illustrates how language, as a cultural symbol, significantly influences both domain-specific and software contexts. Through hands-on exercises, we'll examine techniques to grasp the cultural significance of these symbols, equipping participants to either adapt effectively or employ strategies and heuristics to transform them. This includes practices such as experimenting with alternative narratives, using storytelling to understand and convey culture, and leveraging humor as a cultural lens. The workshop will conclude with a series of case studies presented through interactive discussions, showcasing the application of various techniques and heuristics in collaborative software design. These studies will highlight both successes and challenges in navigating and reshaping cultural symbols and behaviors.
Maximale Teilnehmendenzahl: 32
Target Audience: Technical leaders, decision makers, software engineers, architects
Prerequisites: Software design experience
Level: Expert
Kenny Baas-Schwegler believes in collaborative software design where ‘every voice shapes the software’. Leveraging a domain-driven design approach with Team Topologies, he facilitates clearer communication between stakeholders and software creators by collaborative modelling and deep democracy, decoding complexities, resolving conflicts and ensuring software remains agile to business demands.
In his roles as an independent software consultant, tech lead, and software architect, he catalyses organisations and teams towards designing and building sustainable and resilient software architectures.
Avraham Poupko is the head of Product Security for Forescout. He learns and teaches about how people join to create software.
As a systems architect, Avraham Poupko has spent the last 25 years analysing, modeling and designing software as well as teaching systems thinking and system design. Avraham experience varies from working with small startups that have one product, to large enterprises that create very complex domains and systems. Avraham is currently leading a multi disciplined team that is designing the next generation data center.
Avraham is currently studying, writing and teaching about the varied and complex relationships between the organizations that create software and the software they create.
Vortrag Teilen
Software is changing our world – and the speed of change is increasing. Continously evolving business demands, software technology advances, and social changes mean that gaps can quickly arise between the actual state of a software and its desired state. Not reacting to these gaps can lead to software no longer being competitive or marketable. Reacting too quickly can lead to software becoming “immature” with corresponding negative business impact. Bridging the gaps is not easy and requires thoughtful action, and it is a constant balancing act software development teams are facing in their daily work. In this panel, we will look at the market, technical, social, and economic factors that can lead to gaps in software products and discuss how we can close them sufficiently well.
Target Audience: Software Practitioners
Prerequisites: Interest and sound knowledge in software engineering, architecture and development
Level: Advanced
Frank Buschmann is a Distinguished Engineer at Siemens Technology in Garching. His interests are in modern software architecture and in development approaches for industrial digitization.
Vortrag Teilen
Heutzutage stehen viele Unternehmen vor der Herausforderung, ihre in die Jahre gekommenen Anwendungen zu modernisieren, flexibler zu machen und geeignet zu strukturieren. Während Microservices weit verbreitet sind, bietet ein Modulith – modular strukturierter Monolith – eine vielversprechende Alternative, die oft übersehen wird.
Dieser Vortrag liefert einen Einblick in die praktische Arbeit mit Modulithen und die Migration dort hin. Wir berichten auch von Erfahrungen mit passenden Technologien wie Spring Modulith, xMolecules, ArchUnit sowie jQAssistant und besprechen, worauf bei deren Einsatz zu achten ist.
Außerdem besprechen wir Vorteile und Herausforderungen, die sich gegenüber der Transformation hin zu Microservices ergeben. Wir betrachten Aspekte wie Implementierungsaufwand, Impact auf den vorhandenen Quellcode, grundsätzliche Risiken bei langlaufenden Ablösungsprojekten, Teststrategien, Cognitive Load, Abhängigkeiten auf fachlicher und technischer Ebene und die Auswirkungen, die all diese Themen in der Praxis haben.
Insgesamt bietet der Vortrag einen erfahrungsbasierten Überblick zu Modulithen und richtet sich an Softwarearchitekten, Entwickler und IT-Entscheider, die sich mit der Modernisierung ihrer bestehenden Systeme auseinandersetzen.
Zielpublikum: Architekten, Entwickler, Entscheider
Voraussetzungen: Erfahrungen in Enterprise-Projekten, Herausforderung von Legacy-Projekten kennen
Schwierigkeitsgrad: Advanced
Stefan Toth ist Gründer der embarc GmbH und Autor zahlreicher Artikel sowie des Buchs „Vorgehensmuster für Softwarearchitektur“ (Hanser). Als Berater begleitet er Start-ups, Mittelständler und Großkonzerne bei der organisatorischen, methodischen und technischen Neuausrichtung.
Falk Sippach ist bei der embarc Software Consulting GmbH als Softwarearchitekt, Berater und Trainer stets auf der Suche nach dem Funken Leidenschaft, den er bei seinen Teilnehmern, Kunden und Kollegen entfachen kann. Bereits seit 20 Jahren unterstützt er in meist agilen Softwareentwicklungsprojekten im Java-Umfeld. Als aktiver Bestandteil der Community (Mitorganisator der JUG Darmstadt und Mitglied der Java Champions) teilt er zudem sein Wissen gern in Artikeln, Blog-Beiträgen sowie bei Vorträgen auf Konferenzen oder User-Group-Treffen und unterstützt bei der Organisation diverser Fachveranstaltungen.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/experten/falk-sippach/
Vortrag Teilen
Dynamikrobuste Softwareentwicklungsteams sind cross-funktional und fokussieren möglichst unabhängig von anderen Teams auf eine kognitiv bewältigbare (fachliche) Domäne. Um dies optimal tun zu können, benötigen sie Unterstützung von Plattform-Teams, die ihnen entlastende (Self-)Services anbieten.
Um von einem klassischen OPS-Team zu einem Plattform-Team zu werden, muss zum einen eine gewisse Kundenorientierung und Dienstleister-Mentalität etabliert werden, zum anderen braucht es ein passendes Angebot von Services und Produkten für die Entwicklungsteams. Im Optimalfall sind die Nutzung der Deployment-Plattform und die der unterstützenden Services für Entwicklungsteams freiwillig.
Welche Haltung, Rollen und Methoden es dafür braucht, beleuchten wir in diesem Vortrag.
Zielpublikum: Architekt:innen, OPS/Plattform-Teams, Führungskräfte, Menschen, die Dynamikrobustheit anstreben
Voraussetzungen: Keine
Schwierigkeitsgrad: Basic
Als Organisationsarchitektin im Bereich New Work, Selbstorganisation und (IT-)Strategie ist Kim Nena Duggen in ihrem Element, wenn sie mit Menschen arbeitet, die selbst etwas tun wollen, anstatt mit Theorie oder Musterlösungen vorliebzunehmen. Situationsgerecht wechselt sie in die Rolle der Beraterin, des Coaches oder der Trainerin – je nachdem, welche individuellen Herausforderungen mit dem Kunden passgenaue Lösungsstrategien erfordern. Erfahrungen aus Jobstationen im Prozessmanagement, als Trainerin im Bereich EAM, RE, Soft Skills, New Work und als gewählter Vorstand einer selbstorganisierten Genossenschaft sowie Weiterbildungen im Bereich Coaching und Konfliktmanagement und das Aufwachsen in zwei Kulturen haben ein breites Fundament gelegt, um sowohl extern als auch intern Organisationen zu entwickeln.
Eigentlich definiert Architektur „nur“ die Struktur der Software. Aber das Gesetz von Conway weist schon auf den Zusammenhang zwischen Architektur und Organisation hin. Durch das Inverse Conway Maneuvre ist klar geworden, dass die geschickte Aufstellung der Organisation die Architektur maßgeblich beeinflussen kann.
Dieser Vortrag zeigt auf, dass Team Topologies auch erhebliche Konsequenzen für die Architektur-Arbeit hat: Team Topologies fungiert nicht nur als Werkzeug für Architektur, sondern muss auch in die architektonische Planung einbezogen werden.
Zielpublikum: An Softwarearchitektur und Organisation Interessierte
Voraussetzungen: Grundlegendes Verständnis von Softwarearchitektur und Entwicklung im Team
Schwierigkeitsgrad: Basic
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
Vortrag Teilen
How to structure your program right? This has been a central question since the beginning of software development. This talk takes a look into the history of software architecture to understand why we are building software the way we are. We start with foundations like information hiding, modularity, separation of concerns, loose coupling. We move on to principles like layering and design patterns. We conclude with an outlook to modern ideas like hexagonal architecture, onion architecture, SOLID, and the software architecture hamburger.
Target Audience: Developers and architects
Prerequisites: Programming
Level: Advanced
Henning liebt Programmieren in hoher Qualität. Diese Leidenschaft lebt er als Coder, Coach und Consultant bei der WPS – Workplace Solutions aus. Dort hilft er Teams dabei, gewachsene Monolithen zu strukturieren oder neue Systeme von Anfang an mit einer tragfähigen Architektur zu errichten. Häufig kommen dann Microservices oder Self-Contained Systems heraus. Henning ist Autor von "Domain Storytelling" (Addison-Wesley, 2022) und dem www.LeasingNinja.io sowie Übersetzer von "Domain-Driven Design kompakt" (dpunkt, 2017).
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/experten/henning-schwentner/
Die Entwicklung typischer aktueller Webanwendungen kann einen erschlagen: Umfangreiche, komplexe JavaScript-Frameworks, Client-Side-Rendering/Server-Side-Rendering, (De-)Hydration, komplizierte Buildprozesse und und und
Die unterliegenden Technologien, Protokolle und Architekturmuster wie HTTP(2/3), HTML/CSS, Web Components, Representational State Transfer (REST) u. a. geraten dabei manchmal völlig aus dem Blick. Für die Entwicklung von Webanwendungen, die nachhaltig und skalierbar sein sollen, ist die Kenntnis dieser grundlegenden Prinzipien aber unerlässlich. Ansonsten droht die Gefahr, in einer ewigen Spirale dem gerade gehypten Framework, Architektur-/Entwicklungsansatz fürs Web nachzulaufen.
Dieser Vortrag versucht, den Blick wieder auf diese grundlegenden Prinzipien zu richten.
Zielpublikum: Architekt:innen, Entwickler:innen
Voraussetzungen: Grundlegende Erfahrungen mit der Entwicklung und Architektur von Softwaresystemen
Schwierigkeitsgrad: Basic
Christoph Iserlohn ist Senior Consultant bei INNOQ. Er hat langjährige Erfahrung mit der Entwicklung und Architektur von verteilten Systemen. Sein Hauptaugenmerk liegt dabei auf den Themen Skalierbarkeit, Verfügbarkeit und Sicherheit. Er ist Host des INNOQ Security Podcasts.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/experten/christoph-iserlohn/
Vortrag Teilen
Vortrag Teilen
What is the difference of a test architect to a commonly known software architect? And why do I need one? What do they have in common and where do they differ? Is there a gap where we need a bridge (Spoiler: yes)? What are the different expectations of other roles on a test architect?
Questions over questions which will be covered in this talk. With examples where it did go well because there was a test architect and examples where things got haywire maybe because a test architect was missing.
And you will also not be left alone with these questions:
- How can I become such a person which is able to be a test architect.
- How can I establish that role in my organization.
You will get input how we did this at Siemens and build up a living network of test architects.
Target Audience: Testers, Developers, Architects, Project Leads, Test Managers, Team Leads
Prerequisites: Architecture knowledge, challenges in software projects, basic testing knowledge
Level: Advanced
Marco Achtziger is Test Architect working for Siemens Healthineers in Forchheim. In this role he supports teams working in an agile environment in implementing and executing tests in the preventive test phase in a large project. He has several qualifications from iSTQB and iSQI and is a certified Software Architect by Siemens AG and Siemens Senior Key Expert in the area of Testing and Continuous Delivery.
The objective of visual test automation is replace flaky and hard to read selectors with images. Many software packages offer the possibility of using images as selectors, but it rarely works reliably. Appium has the function "findElementByImage," Playwright has functions like "toHaveScreenshot." Code and no-code tools alike provide a number of options to tweak the sensitivity, where both, too low and to high values, produce their own set of artefacts. What makes this so difficult? Doesn't AI provide the solution to reliably compare two images? Wouldn't source code be much more readable if it showed the image of the item, rather than just a file name or its xpath?
Target Audience: Experienced test automators in code and no-code
Prerequisites: Images, test automation, CNN, AI
Level: Expert
Stefan Dirnstorfer is CTO and Cofounder at testup.io, a no-code platform for image based test automation. He is a digital native who started programming in primary school and studied computer science in Munich. His latest interest in test automation and image analysis combines his passion for practical software development and intelligent data analysis.
Vortrag Teilen
Vortrag Teilen
Wie wir an der Softwarearchitektur eines Softwaresystems arbeiten, hängt stark von der jeweiligen Situation ab. In diesem Vortrag werfe ich einen Blick auf einen besonders wichtigen Faktor: Softwareevolution. Denn je nachdem, wie weit ein Softwaresystem evolviert ist, unterscheidet sich damit auch potenziell der Ansatz, wie Softwarearchitekturen erarbeitet werden: Von „No-Architecture“ über „Architekturdiktatur“ und „Multi-Level-Architektur“ hin zu „Architekturspezialisten“ diskutieren wir, wann welcher Ansatz welche Stärken ausspielt und wann es dringend Zeit für einen Wechsel ist. Wer sich jemals in endlosen Diskussionen über das „Warum?“, „Wie?“ und „Wie viel?“ Softwarearchitektur verloren hat, findet in diesem Vortrag erste Antworten für einen systematischen Ansatz der Softwarearchitekturevolution.
Zielpublikum: Softwarearchitekt:innen, Entwickler:innen
Voraussetzungen: Erfahrung mit optimierungsbedürftigen Softwaresystemen
Schwierigkeitsgrad: Basic
Markus Harrer arbeitet seit mehreren Jahren in der Softwareentwicklung und ist vor allem in konservativen Branchen tätig. Als Senior Consultant hilft er, Software nachhaltig und wirtschaftlich sinnvoll zu entwickeln und zu verbessern. Er ist aktiver Mitgestalter in Communities zu den Themen Software Analytics, Softwarearchitektur, Softwaresanierung und Wardley Maps. Zudem ist er akkreditierter Trainer für den iSAQB Foundation Level und das Advanced-Level-Modul IMPROVE.
Vortrag Teilen
Legacy ist ein Wort das in der IT häufig benutzt aber ungern gesehen wird. Eigentlich wollen wir neue Ideen umsetzen, doch die Legacy Systeme fordern ihren Zoll. Mainframes bekommen Gesellschaft von Monolithen aus der frühen Java Zeit, und gleichzeitig wird immer deutlicher dass eine reine Migration in die Cloud nicht ausreicht sondern eine echte Modernisierung in der Regel Pflicht ist.
In dem aktuellen KI-Boom, der durch die Large Language Models (LLMs) ausgelöst wurde, wird viel über KI-assistiertes Software Engineering gesprochen. Dabei liegt der Fokus meistens auf dem Erstellen von Code und Tests. In diesem Talk beschreibt Erik aus praktischer Sicht wie LLMs auch für Legacy Modernisation genutzt werden können. Hier reichen einfache Chat Prompts nicht aus, sondern es sind weitergehende Lösungen gefragt, zum Beispiel zur Erstellung von Documentation on Demand oder der semantischen Beschreibung von Programmcode.
Neben praktischen Beispielen stellt Erik entsprechende Architekturmuster wie Retrieval Augmented Generation vor, das beim Reverse Engineering die zurecht gefürchteten Halluzinationen auf ein Minimum reduziert. Ausserdem beschreibt Erik wie die Nutzung von existierenden strukturierten Reverse Engineering Tools in geschickter Kombination mit LLMs die Legacy Modernisierug beschleunigen kann.
Zielpublikum: Architekten, Entwickler
Voraussetzungen: Allgemeine Programmierkenntnisse und Verständnis von LLMs
Schwierigkeitsgrad: Advanced
Seit über 20 Jahren ist Erik Dörnenburg als Technologe bei Thoughtworks, und hat Kunden mit unterschiedlichsten Technologien geholfen, Softwarelösungen zu bauen. Neue Technologie fasziniert ihn, gleichzeitig ist es Erik wichtig, dass sie sinnvoll eingesetzt werden kann, und bewährte Engineering-Praktiken auch mit den neuen Technologien verbunden werden. Mit seinen Kunden diskutiert er von Strategie bis zu Code und Cloud eigentlich alles, was mit moderner Softwareentwicklung zu tun hat.
Vortrag Teilen
Seit über sechzig Jahren bauen wir Software, die immer größer und komplexer wird. Inzwischen haben wir nicht nur Mainframe-Altsysteme, sondern auch die Systeme in objektorientierten Programmiersprachen sind in den letzten zwanzig Jahren so schnell und immer wieder unkontrolliert gewachsen, dass sie zu einem großen Knäuel geworden sind. All dieser Legacy-Code treibt die Entwicklungskosten in die Höhe und führt dazu, dass wir diese alten Softwaresysteme nicht mehr gerne anfassen. Ist das unvermeidbar? Oder gibt es auch gute Legacy?
In meinem Vortrag zeige ich Ihnen, welche Überlegungen ich mit meinen Kunden üblicherweise anstelle, um zu entscheiden, ob das Legacy-System durch Refactorings wieder auf den Pfad der Tugend gebracht werden kann oder ob wir es abreißen und neu bauen müssen.
Zielpublikum: Architekten, Entwickler, Projektleiter, Manager
Voraussetzungen: Erfahrung mit Softwareentwicklung
Schwierigkeitsgrad: Advanced
Dr. Carola Lilienthal ist Geschäftsführerin bei der WPS – Workplace Solutions GmbH. Sie hat an der Universität Hamburg studiert und dort zum Thema „Komplexität von Softwarearchitekturen“ promoviert. Seit 2003 analysiert sie im Auftrag ihrer Kunden in ganz Deutschland regelmäßig die Zukunftsfähigkeit von Softwarearchitekturen und spricht auf Konferenzen über dieses Thema. 2015 hat sie ihre Erfahrungen aus über hundert Analysen in dem Buch „Langlebige Softwarearchitekturen“ zusammengefasst. Inzwischen ist das Buch auch auf Englisch verfügbar.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/experten/carola-lilienthal/
Vortrag Teilen
Java-Legacy ist gelebte Realität. Teams müssen immer wieder produktiv kritische sowie unbekannte und schlecht dokumentierte Software übernehmen. Doch wie geht ein bestehendes oder neues Team vor, um sich schnell und strukturiert in kurzer Zeit ein Verständnis über die Codebasis aufzubauen?
In diesem Vortrag zeigen wir, mit welchen Methoden und Werkzeugen wir uns systematisch und in kürzester Zeit einen Überblick über die Topografie des Java-Source-Codes verschaffen. Wir erklären, wie Schwachstellen und Hotspots identifiziert und somit risikoarm die Wartung sowie Pflege von Java-Legacy-Systemen durch ein neues Team übernommen werden kann. Nicht zuletzt ist dies der entscheidende Schritt, um aus einer Erblast ein Erbstück zu machen und nicht die Fehler der Vergangenheit mit einer blinden Neuentwicklung zu wiederholen.
Zielpublikum: Architekten, Entwickler
Voraussetzungen: Java-Kenntnisse
Schwierigkeitsgrad: Advanced
Ingo Düppe ist IT-Berater und Gründer von CROWDCODE. Er berät auf dem Gebiet des Architekturmanagements und ist für die Realisierung und Konzeption von Web-, Mobile- und Cloud-Anwendungen verantwortlich. Herausforderung ist die richtige Kombination von Technologien, Methoden und Werkzeugen – jeweils passend zum individuellen Kontext. Als Coach unterstützt er Teams beim Einsatz von Java-EE- und Spring-Technologien sowie bei deren effizienter Einbindung in den individuellen Softwareentwicklungsprozess.
Vortrag Teilen
Schwer zu ändernde Codebasen haben zwei Probleme: fehlende Ausrichtung an Domänengrenzen und fehlender Ausdruck architektonischer Ideen im Code. Entwickler:innen verwenden Separation-of-Concerns-Architekturen wie Onion-, Clean- und Hexagonal-Architektur, um dieses Problem anzugehen. Diese Ansätze erzielen jedoch gemischte Ergebnisse, da sie sich hauptsächlich auf die Trennung von technischem und Business-Code konzentrieren, ohne strukturelle Aspekte der Domäne zu berücksichtigen.
In der Präsentation diskutieren wir Strategien zur Übersetzung von architektonischen Ideen und Designpatterns in Code. Wir erkunden, wie Frameworks und Bibliotheken im Java-Ökosystem die Metainformationen im Code nutzen, um strukturelle Überprüfung, Testbarkeit und Dokumentationsgenerierung zu unterstützen.
Zielpublikum: Softwarearchitekt:innen, Senior Entwickler:innen.
Voraussetzungen: Grundlegende Softwarearchitektur, Basis Java (konzeptionell reicht)
Schwierigkeitsgrad: Expert
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.
Vortrag Teilen
Data Contracts sind so etwas wie APIs, aber die Datenwelt funktioniert doch etwas anders. Ein Data Contract definiert das Datenmodell der bereitgestellten Daten und deren Qualitätsattribute in einem YAML-Format. Data Contracts enthalten zudem semantische Definitionen, SLAs, und legen die Nutzungsbedingungen für die Verwendung von Daten fest.
Data Contracts sind in erster Linie auch ein Kommunikationsinstrument, um ein gemeinsames Verständnis darüber auszudrücken, wie Daten strukturiert und interpretiert werden sollten. Sie machen implizite semantische und qualitative Erwartungen explizit. Später in der Entwicklung und Produktion dienen sie auch als Grundlage für die Codegenerierung und automatisierte Tests, um sicherzustellen, dass die bereitgestellten Daten auch der Spezifikation entsprechen.
In diesem Vortrag möchte ich die Data Contract Specification (datacontract.com) und das Data Contract CLI zur Validierung von Data Contracts in CI/CD-Pipelines vorstellen.
Zielpublikum: Data Engineers, Softwarearchitekten, IT-Verantwortliche
Voraussetzungen: Verständnis über grundlegende Datenarchitekturen
Schwierigkeitsgrad: Basic
Jochen Christ ist Tech Lead bei INNOQ und Experte für Data Mesh. Jochen ist Co-Autor von datamesh-architecture.com und datacontract.com. Außerdem hat er das Data-Mesh-Buch von Zhamak Dehghani ins Deutsche übersetzt.
Vortrag Teilen
Bounded Contexts spielen bei Domain-driven-Design-Diskussionen eine zentrale Rolle. Sie gelten als eine vielversprechende Lösung zur Modularisierung von Systemen, sei es in Form von Deployment-Monolithen oder Microservices. Doch die Anwendung in der Praxis bringt Herausforderungen mit sich: Es ist oft schwierig, eine Domäne sinnvoll in Bounded Contexts aufzuteilen. Zudem ist das Konzept nicht einfach zu verstehen. Einerseits steht es für die Aufteilung eines Softwaresystems in Module, andererseits soll es helfen, verschiedene Fachsprachen innerhalb einer Domäne voneinander zu trennen. Darüber hinaus wird ein Bounded Context oft als ein Team betrachtet. Wie lässt sich all das miteinander in Einklang bringen, und wie kann man in der Praxis erfolgreich damit arbeiten? Dieser Vortrag erklärt, was Bounded Contexts sind, und beleuchtet dann diese Herausforderungen. So zeigt er, wie man Projekte mit DDD noch erfolgreicher gestalten kann.
Zielpublikum: An Softwarearchitektur oder Domain-driven Design Interessierte
Voraussetzungen: Grundlegendes Verständnis von DDD
Schwierigkeitsgrad: Advanced
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/
Die Grundlage für gute Software ist eine gute Architektur. Eine zum System passende Architektur kann jedoch nicht im luftleeren Raum entstehen – um eine geeignete Architektur definieren zu können, muss man die Domäne und ihre Anforderungen verstehen. Moderne Architekturarbeit beginnt somit ein ganzes Stück vor der eigentlichen Architektur. Für diese Exploration der Domäne wurden im Rahmen von Domain-Driven Design (DDD) verschiedene kollaborative Modellierungstechniken entwickelt. Deren Ziel ist es, dass alle an einer Software beteiligten Personen die Domäne und ihre Anforderungen kennen und verstehen. Insbesondere soll eine gemeinsame Sprache entwickelt werden, um über Problemstellungen innerhalb der Domäne diskutieren zu können, die auch als Ubiquitous Language im Sinne von DDD verwendet werden kann.
Obwohl all diese Modellierungstechniken dieselben Ziele verfolgen, unterscheiden sie sich in ihrem Ansatz. Das beliebte Event Storming modelliert Wissen als Sequenz von Events. Beim Domain Storytelling werden die Interaktionen zwischen Personen und/oder Systemen modelliert und die Ergebnisse können zur Visualisierung von Szenarien verwendet werden. Weitere Methoden verwenden andere Elemente in der Modellierung oder versuchen, die Stärken anderer Methoden zu kombinieren. In diesem Vortrag möchten wir einige beliebte Modellierungstechniken kurz vorstellen und ihre Stärken hervorheben. Wir möchten einige Ratschläge geben, wie man auf Basis des Szenarios eine kollaborative Modellierungstechnik auswählt.
Zielpublikum: Architekten, Entwickler, Projektleiter
Voraussetzungen: Projekterfahrung
Schwierigkeitsgrad: Basic
Frank Steimle ist Senior Consultant bei Digital Frontiers. Er fokussiert sich auf agile Softwareentwicklung in Kombination mit Domain-Driven Design. Er interessiert sich dabei besonders für Event Modeling, CQRS, Event Sourcing und alle Arten von eventgetriebenen Architekturen.
As Co-Founder and Senior Consultant at Digital Frontiers, Florian Pfleiderer focuses on agile software development. He advises his clients in the areas of architecture, microservices and craftsmanship and helps them to make their way into the cloud sustainably and with high-quality software.
Vortrag Teilen
Vortrag Teilen
Consider for example, this line of C++ code:
std::pmr::vector<std::variant<int,double,std::pmr::string>> values;
Are you aware that this line of code contains at least five Gang-of-Four (GoF) design patterns? If not, then this talk is definitely for you! It will help you realize that design patterns are everywhere. They are the key to managing dependencies between software entities. They help us to structure our software, to separate concerns, and to communicate our intentions. Even better, they are universally applicable to object-oriented programming, function programming, and generic programming. And no, design patterns are not old-fashioned, outdated, or even dead. They are at the very core of our software and our daily work.
Target Audience: Architects, Developers
Prerequisites: Foundational knowledge in C++ (examples in C++)
Level: Advanced
Klaus Iglberger is a freelance C++ trainer and consultant. He shares his expertise in popular C++ courses — from beginner to advanced — all around the world. He is the author of “C++ Software Design” [1], one of the organizers of the Munich C++ user group [2], and the (co-)organizer of the Back-to-Basics [3] and Software Design [4] tracks at CppCon [5].
[1] https://learning.oreilly.com/library/view/c-software-design/9781098113155/
[2] https://www.meetup.com/MUCplusplus/
[3] https://cppcon.org/b2b/
[4] https://cppcon.org/softwaredesign/
[5] https://cppcon.org
Vortrag Teilen
AI for testing to generate test code or AI for coding (see Copilot) to suggest good code examples; this is almost "state-of-the-art". But isn't something missing? Aren't we largely dealing with brownfield software that needs to be transformed in order to be cloud-ready and scalable? Couldn't AI help here too?
In the presentation, we will look at what AI-based methods could do to simulate architecture restructuring (based on data that goes beyond code to evaluate feature/temporal coupling, Conway’s law or a mix of all), check their feasibility and efforts. We also provide an outlook on what support AI could provide with respect to architecture quality analysis. Finally, we will talk about challenges in relation to knowledge management in projects and how to get assistance based on AI.
Target Audience: Project Leaders, Architects, Key Developers, Managers, Decision Makers
Prerequisites: Architecture Knowledge
Level: Advanced
Egon Wuchner worked more than 18 years at Siemens Corporate Technology and founded Cape of Good Code. He has worked as software engineer, software architect and project manager dealing with software architecture issues like software code and architecture quality attributes. He does consulting in the fields of software architecture analysis and improvement based on tools like the DETANGLE® Suite from Cape of Good Code.
M.Sc. Enes Alatas is a seasoned software engineer with over 5 years of dedicated experience in developing software solutions. He has actively contributed to developing innovative software solutions for several engineering companies across different domains, such as data analytics, machine learning, and satellite image analysis. Enes joined Cape of Good Code to assist in developing the automated software analysis tool DETANGLE®.
Vortrag Teilen
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. We 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.
Target Audience: Developers and architects
Prerequisites: Programming experience
Level: Expert
Henning liebt Programmieren in hoher Qualität. Diese Leidenschaft lebt er als Coder, Coach und Consultant bei der WPS – Workplace Solutions aus. Dort hilft er Teams dabei, gewachsene Monolithen zu strukturieren oder neue Systeme von Anfang an mit einer tragfähigen Architektur zu errichten. Häufig kommen dann Microservices oder Self-Contained Systems heraus. Henning ist Autor von "Domain Storytelling" (Addison-Wesley, 2022) und dem www.LeasingNinja.io sowie Übersetzer von "Domain-Driven Design kompakt" (dpunkt, 2017).
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/experten/henning-schwentner/
Vortrag Teilen
Daten sind elementarer Bestandteil jeder Software – und doch kommen sie bei der Betrachtung der Architektur oft zur kurz, insbesondere im Hinblick auf die analytische Nutzung. Ideen wie Data Mesh haben dafür gesorgt, dass „analytische Daten“ auch in der Softwarearchitektur wieder populärer wurden. Schließlich sind sie die Grundlage für GenAI, ML und Data Analytics.
Ich gehe auf typische Vorgehen in der Vergangenheit und auf neue Wege in modernen Softwarearchitekturen ein. Wie schaffe ich es, frühzeitig im Entwicklungsprozess die analytische Nutzung zu berücksichtigen? Welche Methoden und Techniken gibt es, um die Lücke zwischen Softwareengineering und Data Teams zu überbrücken? Außerdem gibt es einen Überblick über die mögliche Implementierung einer solchen Data Aware Architecture.
Zielpublikum: Architekten, Entwickler, Entscheider, sowohl auf der Anwendungs- als auch der Data-Seite
Voraussetzungen: Erfahrung mit der Nutzung oder Bereitstellung von Daten für analytische Zwecke
Schwierigkeitsgrad: Advanced
Matthias Niehoff arbeitet als Head of Data und Data Architect für die codecentric AG und unterstützt Kunden bei der Konzeption und Umsetzung von Datenarchitekturen. Sein Fokus liegt dabei weniger auf dem ML-Modell, sondern vielmehr auf der notwendigen Infrastruktur und Organisation, um Data-Science-Projekte zum Erfolg zu führen.
Vortrag Teilen
Jeder möchte in die Cloud. Unterwegs stellt man fest, dass der Weg dorthin oft lang und steinig ist.
Damit man die typischen Probleme vermeiden und Risiken reduzieren kann, stellen wir Lösungen vor, die sich in unserer Praxis bewährt haben.
Es werden Rehost- und Replatforming-Beispiele mit AWS und der Open Telekom Cloud vorgestellt. Dabei werden folgende Fragen beantwortet:
- Welche Stolperfallen gibt es und wie lassen sie sich vermeiden? Abkürzungen & Sackgassen
- Wie kann eine gute Informationsbasis und Dokumentation geschaffen werden?
- Wie kann der Migrationsprozess beschleunigt werden?
- Wie können Cloud-Vorteile genutzt werden?
Zielpublikum: Architekten, Projektleiter, Manager, Entscheider
Voraussetzungen: Cloud-Grundkenntnisse, Erfahrung mit Anwendungsmodernisierung, Migration
Schwierigkeitsgrad: Basic
Frank Pientka arbeitet als Dipl.-Informatiker (TH Karlsruhe) bei der T-Systems GmbH als Multi-Cloud-Architekt. Er beschäftigt sich seit Jahrzehnten mit Open-Source-Software mit dem Schwerpunkt Web.
Als Architekt und Mitgründer der iSAQB-Vereinigung liegt ihm mehr Qualität in der Software am Herzen. Deswegen gibt er sein Wissen durch Publikationen, Artikel, Vorträge oder in Projekten weiter.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/experten/frank-pientka/
Vortrag Teilen
Wir wissen heutzutage ziemlich gut, wie man ein neues Entwicklungsprojekt auf der grünen Wiese beginnen sollte und wie wir dabei Schritt für Schritt eine gute Softwarearchitektur aufbauen. Aber die meisten von uns arbeiten in Projekten, die schon lange laufen und deren Architektur nicht mehr ganz so wohlgeformt ist. „Monolith“ und „Big Ball of Mud“ sind die unschönen Bezeichnungen, die wir für diese Systeme haben.
In diesem Vortrag stelle ich Domain-Driven Transformation vor, eine Methode, die Henning Schwentner und ich in den letzten Jahren beim Verbessern von Altsystemen entwickelt haben. Domain-Driven Transformation besteht aus vier Schritten, die uns von der Analyse des aktuellen Zustands zu einer fachlichen Vision der Architektur führen. Anhand des aktuellen Zustands bestimmen wir die Reihenfolge der Umbaumaßnahmen, um zügig und mit einem stets einsetzbaren System voranzukommen.
Zielpublikum: Architekten, Entwickler, Projektleiter, Manager
Voraussetzungen: Erfahrung mit Softwareentwicklung
Schwierigkeitsgrad: Advanced
Dr. Carola Lilienthal ist Geschäftsführerin bei der WPS – Workplace Solutions GmbH. Sie hat an der Universität Hamburg studiert und dort zum Thema „Komplexität von Softwarearchitekturen“ promoviert. Seit 2003 analysiert sie im Auftrag ihrer Kunden in ganz Deutschland regelmäßig die Zukunftsfähigkeit von Softwarearchitekturen und spricht auf Konferenzen über dieses Thema. 2015 hat sie ihre Erfahrungen aus über hundert Analysen in dem Buch „Langlebige Softwarearchitekturen“ zusammengefasst. Inzwischen ist das Buch auch auf Englisch verfügbar.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/experten/carola-lilienthal/
Vortrag Teilen
Die Architekturmodelle Clean, Onion und Hexagonal Architecture basieren auf dem Dependency Inversion Principle (DIP). Damit bspw. Domänenlogik nicht von der Datenbank abhängig ist, wird ein Interface dazwischen gestellt. Die Anwendung des DIP ist so allgegenwärtig, dass wir uns an die damit verbundenen Umstände wie Tests mit Attrappen gewöhnt haben.
Mit der Integration Operation Data API Architecture (IODA) gibt es eine Alternative: Durch das Herauslösen der Integration als eigene Verantwortlichkeit entsteht ein einfacheres Architekturmodell. In seinem Vortrag erläutert Stefan Lieser die Prinzipien und Hintergründe. Ferner stellt er die Architekturmodelle anhand von Beispielen gegenüber und zeigt, wie gut die IODA-Architektur sich auf Korrektheit und Wandelbarkeit von Software auswirkt.
Zielpublikum: Architekten, Softwareentwickler
Voraussetzungen: Architekturkenntnisse
Schwierigkeitsgrad: Expert
Stefan Lieser ist Experte für Clean Code und Flow Design. Er hat Ende 2008 die Clean Code Developer Initiative mitbegründet und arbeitet als Trainer und Berater zu den Themen Clean Code Developer, Entwurf mit Flow Design sowie Softwarearchitektur. In seinem Buch „Mit Flow Design zu Clean Code“ beschreibt er einen Softwareentwicklungsprozess, bei dem das systematische Zerlegen der Anforderungen sowie der Entwurf im Vordergrund stehen. Er ist Geschäftsführer der CCD Akademie GmbH.
CCD Initiative - https://clean-code-developer.de
Flow Design - https://flow-design.info
CCD Akademie GmbH - https://ccd-akademie.de
Jährlich fließen große Investitionen in die Erstellung von Softwaresystemen. Diese erodieren aber mit der Zeit, behandelt man sie nicht pfleglich. Spätestens wenn z. B. aus dem Legacy-Code eine moderne SaaS-Lösung entstehen soll, rächt sich dieses Vorgehen. Wie soll das Entwicklungsteam agieren? Auf einen Greenfield-Ansatz setzen oder das Altsystem runderneuern? Wie lassen sich solche Probleme in Zukunft vermeiden? Welche Fallstricke lauern in der Praxis? Darauf möchte die vorliegende Paneldiskussion in Gestalt eines Fishbowls Antworten aus der Praxis geben.
Agenda:
- Beispielbasierte Einführung in die Problematik
- Diskussionsrunde, die als Fishbowl mit Sprechern startet
- Wrap-Up
Zielpublikum: Softwarearchitekten, Entwickler
Voraussetzungen: Praktische Kenntnisse in Softwarearchitektur und Softwareengineering
Schwierigkeitsgrad: Advanced
Michael Stal arbeitet bei Siemens Technologie, wo er sich intensiv mit Softwarearchitekturen, Verteilten Systemen, Eingebetteten Systemen und KI beschäftigt. Er blickt auf drei Jahrzehnte Erfahrung in Softwarearchitektur zurück und ist Mitautor der Buchserie „Pattern-Oriented Software Architecture“„.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/experten/michael-stal/
Thomas Ronzon arbeitet seit 2000 als Projektleiter und Senior Softwareentwickler bei der w3logistics AG in Dortmund. Dabei beschäftigt er sich vor allem mit der Modernisierung von unternehmenskritischen Logistikanwendungen.
In der Zeitschrift JavaSPEKTRUM berichtet er regelmäßig über neue „Tools“ für Architekten (The Tool Talk). Darüber hinaus veröffentlicht er regelmäßig Fachartikel und spricht auf Konferenzen. Thomas taucht leidenschaftlich gerne und tief in technische Aspekte ein, verliert dabei jedoch nie den Bezug zur Fachlichkeit. Mit viel Empathie, Erfahrung und konkreten Lösungsvorschlägen schlägt er damit immer wieder die Brücke zwischen Business und IT.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/experten/thomas-ronzon/
Vortrag Teilen
Eric Evans' Big Blue Book has a chapter titled "closure of operations", largely ignored by the community and subsequent works on DDD. This is tragic, as closure of operations is one of the most powerful techniques for domain modeling. A concept imported from functional programming, it makes for flexible and long-lived domain models with the help of combinators - operations that build big domain objects from smaller ones recursively. This is refreshing alternative to the rigid hierarchical taxonomies that often result from naive application of DDD modeling techniques "close to the domain", and which require continual adjustments and extensions. The talk shows what "closure" is and how you can harness it in your project.
"Closure of operations" applies abstraction over rigid models. It avoids common problems of overabstraction through a systematic process and the use of simple mathematical principles. The talk will also cover these.
Target Audience: Developers, Architects
Prerequisites: Basic DDD
Level: Advanced
Dr. Michael Sperber ist Geschäftsführer der Active Group GmbH, die Individualsoftware ausschließlich mit funktionaler Programmierung entwickelt. Er ist international anerkannter Experte für funktionale Programmierung und wendet sie seit über 20 Jahren in Forschung, Lehre und industrieller Entwicklung an. Außerdem hat er zahlreiche Fachartikel und Bücher zum Thema verfasst. Michael Sperber ist Mitbegründer des Blogs funktionale-programmierung.de und Mitorganisator der Entwicklerkonferenz BOB.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/experten/michael-sperber/
Vortrag Teilen
Was haben wir nach 30 Jahren Systementwicklung eigentlich alles gelernt? Im Kern stoßen wir immer wieder auf die gleichen Grundprinzipien, die in überraschend vielfältiger Form auftreten. So unterschiedlich Systeme sind, die Hauptprobleme lassen sich tatsächlich häufig auf die gleichen Ursachen zurückführen.
In dieser Session beleuchten wir unsere wichtigsten „üblichen Verdächtigen“ und zeigen auf, wie man sie adressieren kann. Gewürzt mit zahlreichen Anekdoten, plaudern Jutta und Nico aus ihrem Nähkästchen.
Zielpublikum: Architekten, Entwickler, Projektleiter, Manager, Entscheider, ...
Voraussetzungen: Keine
Schwierigkeitsgrad: Advanced
Jutta Eckstein ist seit 30 Jahren als Business-Coach, Beraterin und Autorin in der Softwareentwicklung unterwegs. Ihr Schwerpunkt liegt dabei auf Agilität und Nachhaltigkeit, worüber sie etliche Bücher geschrieben hat. Sie hat ein Assessment für (agile) Teams mitentwickelt, um deren Auswirkungen auf die ökologische, soziale und wirtschaftliche Nachhaltigkeit zu messen. Sie war von 2003 bis 2007 im Vorstand der AgileAlliance und hat die „Agile Sustainability Initiative“ gegründet, zum Schärfen des Bewusstseins der Agile-Community bzgl. Nachhaltigkeit.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/experten/jutta-eckstein/
Nicolai Josuttis ist seit 30 Jahren als Entwickler, Autor und Trainer und in der Softwareentwicklung tätig. Sein Schwerpunkt liegt dabei auf C++, über das er etliche Bücher geschrieben hat und bei dem er seit Jahren an der Standardisierung beteiligt ist.
Agile methodologies promise rapid delivery, flexibility, and resilience, allowing teams to respond swiftly to customer needs and market changes. However, the success of these agile practices is deeply intertwined with the underlying software architecture. An enabling architecture can enhance agility, while a restrictive one can significantly hinder it.
This talk explores how architectural and organizational decisions impact the agility of development teams. We will discuss the role of modularity in team autonomy and how aligning module boundaries with communication paths within the organization can leverage Conway's Law to promote fast flow.
We will examine the importance of testability for quick feedback cycles and how observability can lead to more informed responses to technical and business challenges. Additionally, we will delve into understandability in architectural design, which can expedite onboarding and reduce cognitive load, thus supporting agile practices. Finally, we will explore the influence of platform engineering on agile outcomes. A well-designed development platform provides a flexible infrastructure that supports and enhances the implementation of agile practices.
Drawing on principles from the Agile Manifesto, DevOps practices, and the DORA metrics, we will provide actionable advice on designing and transforming software architectures so that they enable rather than inhibit agility. We will also suggest tools to understand when a software architecture does not support agility and how to justify investing in improving it. These investments help with performance, faster delivery, higher quality, and shorter development cycles and range from simply prioritizing architectural tasks in the teams’ backlogs to fully-fledged modernization projects.
This session is a call to action for product managers, software architects, developers, and software leaders to rethink how their architectural decisions impact their agile practices.
Target Audience: Architects, Managers, Project Leaders, Coaches, Developers, Product Owners, Decision Makers
Prerequisites: Architecture, Modernization, Leadership, Project Management, Working with Teams, Agile mindset
Level: Advanced
Joseph Yoder is the owner of the Refactory and president of the Hillside Group. The ACM recognized Joe as a Distinguished Member in the category "Outstanding Engineering Contributions to Computing".
Marden Neubert is a technology leader with 25+ years of experience. For 10+ years he worked as a CTO, scaled agile teams (from 1 to 400+), and led a large modernization project, involving 100+ teams.
Vortrag Teilen
Existierende Softwarearchitekturen stehen von Anfang an einer hohen Dynamik ihres Umfelds gegenüber. Anforderungen ändern sich, neue Technologien entstehen, technische Schulden häufen sich an. Der Vortrag zeigt, wie sich existierende Systeme so renovieren bzw. verbessern und integrieren lassen, dass ihre Nachhaltigkeit auch langfristig gesichert bleibt. Es illustriert, welche konkreten Maßnahmen sich wann und wie nutzen lassen.
Agenda:
- Motivation und Problemstellung
- Architekturbewertung
- Maßnahmen für Evolution und Verbesserung
- Integration von Legacy-Code
- Migration
- Zusammenfassung
Zielpublikum: Softwarearchitekten, Entwickler, Projektleiter
Voraussetzungen: Grundlegende Kenntnisse in Softwarearchitektur und Softwareentwicklung
Schwierigkeitsgrad: Advanced
Michael Stal arbeitet bei Siemens Technologie, wo er sich intensiv mit Softwarearchitekturen, Verteilten Systemen, Eingebetteten Systemen und KI beschäftigt. Er blickt auf drei Jahrzehnte Erfahrung in Softwarearchitektur zurück und ist Mitautor der Buchserie „Pattern-Oriented Software Architecture“„.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/experten/michael-stal/
Vortrag Teilen
Die Modernisierung eines Legacy-Systems ist eine komplexe Herausforderung, die sorgfältige Analyse und Planung erfordert. In diesem Vortrag zeige ich, wie wir über vier Jahre ein umfangreiches Legacy-System schrittweise migriert haben. Durch Domänenarchäologie erkannten wir fachliche Strukturen im Altsystem und identifizierten Bereiche für neue Lösungen. Ich erläutere Strategien zur Risikobewertung und Priorisierung: Was zuerst – hohes Risiko oder einfache Umsetzungen? Der Parallelbetrieb von Alt- und Neusystem war entscheidend für eine reibungslose Integration und eine hohe Nutzerakzeptanz. Erfahren Sie, wie wir die Systeme gekoppelt haben und wann und wie wir das Altsystem und seine Datenbanken abgeschaltet haben, ohne den Betrieb zu gefährden. Dennoch lief nicht alles glatt.
Zielpublikum: Architekt:innen, Entwickler:innen, Projektleiter:innen
Voraussetzungen: DDD, Projekterfahrung, Softwarearchitektur
Schwierigkeitsgrad: Advanced
Wolfgang Strunk works as an architect at iteratec GmbH on projects in the fields of mobility services and logistics.
The topic of modernizing application landscapes had already occupied him before at other companies. He worked in different roles in agile development teams. His current areas of interest are Microservices, Workflow automation, cloud deployments and integration of application software with external partners and customers.
Vortrag Teilen
When considering how to Take Advantage of your Legacy Applications and existing Competence for future-driven innovative development, the technical, financial and resource constraints are a deciding factor. What justification, approaches and added value are possible and appropriate for defining and securing the required budgets to address innovation? What aspects are crucial to success and what hypes should be avoided? What role might Artificial Intelligence play in the success of projects? A long journey has accompanied and still awaits Legacy applications, and there is much at stake. Quo Vadis Innovation and Legacy?
Target Audience: Architects, IT strategists, IT decision-makers
Prerequisites: Good knowledge of English
Level: Expert
Donald Fitzgerald has been with EasiRun and associated companies for over 40 years. Born in South Africa with Irish-Italian roots, Mr Fitzgerald has been managing director of EasiRun Europe since 1994. With core competence in Legacy Innovation, Application modernisation and related topics Don has been actively involved in hundreds of projects.
Vortrag Teilen
Hast Du schon einmal gehört: „Die (Micro-)Service-Architektur funktioniert nicht wie erhofft“? Viele Unternehmen erleben diese Enttäuschung, da sie nur die Architektur ändern, aber die Organisationsstruktur vernachlässigen. Microservices erfordern Dezentralisierung, doch hierarchische Strukturen führen zu Abhängigkeiten und Komplikationen. Führungskräfte spielen eine entscheidende Rolle, um Teams unabhängig zu organisieren und die Struktur an die gewünschte Architektur anzupassen. In unserem Vortrag zeigen wir anhand typischer Probleme, was das Leadership tun kann und wie das Inverse Conway-Manöver helfen kann, Microservices erfolgreich zu implementieren. Wir bieten Praxisbeispiele und konkrete Tipps. Sei dabei und optimiere Deine Architektur!
Zielpublikum: Manager, Entscheider, Führungskräfte, Architekten
Voraussetzungen: Keine
Schwierigkeitsgrad: Advanced
Mick Hohmann blickt auf 15 Jahre Projektmanagementerfahrung zurück und ist seit 2015 als Agile Coach und Scrum Master für Mayflower in Kundenprojekten tätig. Micks Leidenschaft ist es, Menschen und Teams zu inspirieren und für ihre Aufgabe zu begeistern, damit sie fokussiert und motiviert wertschöpfende Produkte erzeugen können.
Dennis Wagner ist leidenschaftlicher Entwickler und Agile-Experte mit viel Erfahrung. Er arbeitet als Berater, hilft Teams und Organisationen, ihr volles Potenzial zu entfalten, und ist in der Agilen Gemeinschaft aktiv.
Vortrag Teilen
INITIAL SITUATION
When modernizing enterprise applications that were developed many years ago and adapted over decades, you are often faced with several challenges.
- What does the current architecture actually look like?
- Which technologies have all been utilized?
- Which and how much technical debt, i.e. things that would have to be changed anyway, are hidden in the source code?
Normally, various developers have "immortalized" themselves in the code and the architecture. And a uniform and up-to-date documentation is nowhere to be found.
OPTIONS
In addition to manual analysis, static and dynamic code analysis can also be used. However, the information derived from this is no substitute for comprehensive software documentation. And despite the use of frameworks and libraries, the creation of new source code is usually purely manual work.
Couldn't the silver bullet AI do this for us?
KEY MESSAGE
AI can support software architects and software engineers both in analyzing applications and in redesigning them.
But how exactly? What steps are necessary? And where are the pitfalls and limitations?
I will answer precisely these questions in my presentation, based on a real project whose source code is more than 20 years old.
KNOWLEDGE CONVEYED
- Steps for a successful modernization of applications and their architectures with the help of LLMs available today.
- Limits of AI.
Target Audience: Architects, Developers, Project Leader, Manager, Decision Makers
Prerequisites: Basic knowledge in software development and application architecture
Level: Advanced
Thomas Kashofer has been professionally active in software projects for more than 20 years. Whether in large-scale projects for Fortune 500 companies or in individual specialist applications for Swabian small and medium-sized companies, his focus is always on high technical quality and the best possible customer benefit from the solution. As a long-time OpenSource advocate, he is currently working at CGI and responsible for the further development of the modernization portfolio. He works as a trainer for internal modernization teams and supports customers in the development & transformation of applications. He is particularly keen to share his experience with colleagues and to drive software engineering forward together.
Vortrag Teilen
In der modernen Unternehmensarchitektur ist eine enge Zusammenarbeit zwischen IT-Demand und IT-Supplier essenziell, um reibungslose Abläufe und nachhaltigen Erfolg zu gewährleisten. Dieser Beitrag untersucht die Spannungsfelder zwischen IT-Demand und IT-Supplier, die oft durch Unwissenheit und mangelnde Feldkompetenz entstehen. Solche Herausforderungen können zu erheblichen Strömungsabrissen führen, die den Projekterfolg gefährden.Um diese Risiken zu minimieren, werden pragmatische Kooperationsmodelle vorgestellt, die auf der Definition gemeinsamer Architektur Artefakte basieren. Transparenz in der Zielsetzung sowie ein effektives Stakeholdermanagement sind entscheidend für den Erfolg der Zusammenarbeit. Der Beitrag bietet praxisnahe Lösungsansätze und Handlungsempfehlungen.
Zielpublikum: Manager, Entscheider, Projektleiter, Architekten
Voraussetzungen: Projekterfahrung, Fachkenntnisse, agile Methoden, Architektur
Schwierigkeitsgrad: Basic
Stefan Hartig ist der Leiter der Solution Architecten im CIO der DB Fernverkehr AG . Er verantwortet die Lösungsarchitekturen für die IT-Vorhaben der DB Fernverkehr AG und stellt die Architektur-Governance in IT-Vorhaben sicher. Sein Schwerpunkt liegt in der Entwicklung von Architekturmethoden und -standards.
Christian Fischer ist Principal Software Engineer bei der DB Systel GmbH. Er unterstützt dort DevOps-Teams bei der Weiterentwicklung und dem Betrieb geschäftskritischer Applikationen. Sein methodischer Schwerpunkt liegt dabei auf dem Domain-Driven Design.
In der Praxis begegnet uns bisher kaum die konkrete Anforderung, Softwarearchitekturen mit Blick auf ihre Umweltverträglichkeit zu gestalten. Die zunehmenden Auswirkungen des menschengemachten Klimawandels zeigen jedoch, dass der eigene Beitrag zu mehr Klimaschutz nicht mehr optional ist.
Dieser Vortrag geht darauf ein, wie GreenIT, Nachhaltigkeit und Umweltverträglichkeit im Architekturentwicklungsprozess natürlich integriert werden können. Wir betrachten Möglichkeiten zur nachhaltigen Umgestaltung bestehender Systeme und zeigen Wege auf, neue Softwarearchitekturen von Anfang an umweltbewusst zu denken. Weiterhin erkunden wir organisatorische Aspekte, die zur Entwicklung grünerer Softwarearchitekturen beitragen können.
Zielpublikum: Architekten:innen, Entwickler:innen, Manager:innen
Voraussetzungen: Grundlagen der Softwarearchitektur
Schwierigkeitsgrad: Advanced
Sophia Resch begeistert es, komplexe IT-Probleme ressourcenschonend zu lösen. Sie profitiert dabei von ihrem Hintergrundwissen zu Rechnungswesen, Maschinenbau, mathematischer Modellierung und Computersimulationen. In ihrer Arbeit als Software Engineer folgt sie einem roten Faden zum Thema Nachhaltigkeit und setzt sich dabei für die Verwendung von GreenIT-Prinzipien zum Erreichen umweltfreundlicher Architektur, Cloud-Lösungen und Software Development ein.
Vortrag Teilen
Am Anfang eines Projekts ist die Produktivität hoch. Architektur, Bausteine und Abhängigkeiten sind klar definiert. Doch mit der Zeit wird der Code immer umfangreicher und die Anforderungen werden komplexer. Es schleichen sich ungewollte Abhängigkeiten ein. Code und Architekturdiagramme passen nicht mehr zusammen.
Architekturtests wirken dem entgegen. Sie funktionieren wie Unit Tests, testen aber Anforderungen an die Architektur. Sie laufen automatisiert im Continuous Build und verhindern dadurch, dass sich Verstöße gegen die anfangs aufgestellten Architekturregeln einschleichen.
Der Vortrag gibt einen Überblick über die Möglichkeiten von Architekturtests und demonstriert anhand einer Beispielarchitektur, wie sich verschiedene Aspekte der Architektur testen lassen. Der praktische Anteil des Vortrags ist sehr hoch. Die Teilnehmer sind nach dem Vortrag in der Lage, das neu erworbene Wissen umgehend in eigenen Projekten praktisch anzuwenden.
Zielpublikum: Architekten und Entwickler
Voraussetzungen: Softwarearchitekturgrundlagen, Grundkenntnisse in .NET
Schwierigkeitsgrad: Advanced
Andreas Lausen ist Software Architect bei der MEDIFOX DAN GmbH. Der Schwerpunkt seiner Tätigkeit liegt auf der Konzeption und Umsetzung von langfristig wart- und erweiterbaren Softwaresystemen. Als Technologien setzt er hauptsächlich .NET und die iOS und Android SDKs ein.
Vortrag Teilen
Fitness functions are an essential part of evolutionary architectures – and they can also bring desired structures and properties to legacy code bases, step by step. But how do they look like in practice? What kinds of fitness do they check and assert?
After a general introduction to fitness functions we'll do a deep dive into some concrete examples, covering use cases for common architectural patterns. We'll see examples in Java code, based on ArchUnit and jMolecules. But the basic ideas and concepts are applicable to other languages and technologies as well.
The session closes with a discussion about when and where to write fitness functions and who should write them – and why the use of fitness functions can help bridge the gap between architects and software developers.
Target Audience: Architects, Developers
Prerequisites: Some coding experience is helpful but not required for this session.
Level: Basic
Thomas Much works as a Technical Agile Coach at Techniker Krankenkasse (TK) in Hamburg. Together with his coaching colleagues, he supports teams in always getting a little bit better at collaboration and agile programming practices – by encouraging (and doing!) pair and team programming, TDD, BDD, test automation and the like. Over the years, Thomas has contributed to various software systems large and small, many of which had to and have to be maintained for many years, even decades.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/experten/thomas-much/
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.
Target Audience: IT architects, lead devs, decision makers
Prerequisites: Broad knowledge of IT-related topics (we will travel from the engine room to the penthouse)
Level: Advanced
Uwe Friedrichsen. Langjähriger Reisender in der IT. Dot Connector. Kartograph unbekannter Gebiete. Bewahrer zeitlosen Wissens. Vermittler zwischen den Welten. Systemdesign. Resilienz. Nachhaltigkeit. Mag keine langen Biografien. Versucht, die IT (ein wenig) besser zu machen. CTO @ codecentric.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/experten/uwe-friedrichsen/
Wann hat euch das Dokumentieren eures Softwaresystems zum letzten Mal Spaß gemacht? Noch nie? Lasst uns das ändern!
Wir alle wissen, dass Architekturdokumentation sehr wichtig und auf lange Sicht von unschätzbarem Wert ist, doch immer fällt das Thema hinten runter. Dokumentation kann abschreckend wirken: unsicher, womit ihr starten sollt, Zeitmangel oder noch nie vorher gemacht und nur Negatives gehört.
Wir zeigen euch den Architecture Communication Canvas – einen pragmatischen und prägnanten Ansatz, Softwaresysteme zu dokumentieren und die wichtigsten Aspekte eurer Architektur und Implementierung an Stakeholder zu kommunizieren. Dieser Ansatz – übrigens kompatibel zu arc42, nur wesentlich knapper – wird euren Dokumentationsprozess maßgeblich verändern.
Wir werden euch beweisen, dass Dokumentation Spaß machen und gleichzeitig sinnvoll sein kann: mit vielen Beispielen, aber auch ausreichend Zeit, es selbst auszuprobieren.
Zielpublikum: Entwickler:innen, Architekt:innen
Voraussetzungen: Interesse an Architekturdokumentation
Schwierigkeitsgrad: Basic
Benjamin Wolf arbeitet als Senior IT Consultant bei INNOQ. Seine Schwerpunkte liegen auf dem Modernisieren von Legacy-Systemen, Architekturdokumentation sowie Architekturberatung und -entwicklung. Dabei richtet er ein besonderes Augenmerk auf die Entwicklungsprozesse und die Einstellung zu Softwarequalität in Teams.
Benjamin ist Committer im arc42-Projekt, aktives Mitglied im iSAQB e. V. und dort aktuell stellvertretender Vorsitzender des Vereins.
Dr. Gernot Starke unterstützt als INNOQ-Fellow Kunden und Projekte in unterschiedlichen Branchen bei Architektur- und Reviewaufgaben. Er ist (Mit-)Gründer und Committer von arc42, Gründer und Committer von aim42.org sowie Autor mehrerer Fachbücher. Gernot ist aktives Mitglied im iSAQB e.V. und leitet dort die Arbeitsgruppe „Foundation Level“.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/experten/gernot-starke/
Vortrag Teilen
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 die Lücke zwischen dem alten monolithischen Architekturansatz zu einer modernen, modularen Architektur geschlossen werden, die ggf. in Microservices mündet?
Diese Session bietet eine praxisnahe Einführung in bewährte Methoden und Strategien, um eine Migration erfolgreich zu bestreiten. Wie kann ich Event Storming zum Finden von Modulgrenzen einsetzen? Wann und wie wende ich das Strangler Fig Pattern an? Wie teste ich einen Monolithen, wenn nicht mehr viel Wissen über Implementierungsdetails vorhanden ist? Diese und andere Fragen werden beantwortet.
Zielpublikum: Architekten, Entwickler, Projektleiter
Voraussetzungen: Erfahrungen mit monolithischer Legacy-Software
Schwierigkeitsgrad: Advanced
Arne Limburg ist Lead Architect bei der open knowledge GmbH in Oldenburg. Er verfügt über mehrjährige Erfahrung als Entwickler, Architekt, Trainer und Coach im Enterprise- und Microservices-Umfeld. Zu diesen Bereichen spricht er regelmäßig auf Konferenzen und führt Workshops durch. Darüber hinaus ist er im Open-Source-Bereich tätig, unter anderem als PMC Member von Apache OpenWebBeans und Apache DeltaSpike sowie als Urheber und Projektleiter von JPA Security.
Vortrag Teilen
„Cloud is the new Normal“, so Andrew R. Jassy (CIO AWS). Was also liegt näher, als genau jetzt den Schritt in die Cloud zu wagen? Aber ist dieser Schritt wirklich so einfach, wie uns die verschiedenen Cloudanbieter glauben machen? Lässt sich eine klassische Enterprise-Architektur einfach so in die Cloud überführen oder bedarf es neuer Cloud spezifischer Architekturmuster?
Der Workshop zeigt an einem praktischen Beispiel, wie eine klassische Enterprise-Anwendung Schritt für Schritt in die Cloud überführt werden kann und welche grundlegenden Abwägungen und Entscheidungen dafür im Vorfeld getroffen werden müssen. Es werden sowohl die notwendigen architektonischen Schritte diskutiert als auch die verschiedenen, damit verbundenen Risiken aufgezeigt und bewertet.
Maximale Teilnehmendenzahl: 30
Zielpublikum: Architekten, Entwickler, Projektleiter, Manager, Entscheider
Voraussetzungen: Grundlegendes Architekturverständnis
Schwierigkeitsgrad: Basic
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.
Vortrag Teilen
Good Software Design — the proper management of dependencies — is the foundation for the success of a project. The basic building blocks for software design are design patterns. Design patterns have proven themselves invaluable over several decades and thus knowledge about them is essential to design robust, decoupled systems. Modern C++, however, has profoundly changed the way we use C++, how we think about design and implement solutions. This also affects how we implement design patterns.
This workshop explores modern C++ software design and the modern forms of classic design patterns. It provides guidelines, idioms and best practices for sustainable and maintainable design, which enables programmers to create professional, high-quality code.
Target Audience: C++ developers
Prerequisites: Solid C++ knowledge, some knowledge about GoF design patterns
Level: Advanced
Klaus Iglberger is a freelance C++ trainer and consultant. He shares his expertise in popular C++ courses — from beginner to advanced — all around the world. He is the author of “C++ Software Design” [1], one of the organizers of the Munich C++ user group [2], and the (co-)organizer of the Back-to-Basics [3] and Software Design [4] tracks at CppCon [5].
[1] https://learning.oreilly.com/library/view/c-software-design/9781098113155/
[2] https://www.meetup.com/MUCplusplus/
[3] https://cppcon.org/b2b/
[4] https://cppcon.org/softwaredesign/
[5] https://cppcon.org