Track: Workshop
- Mittwoch
06.10. - Donnerstag
07.10.
Unternehmensanwendungen müssen langfristig wartbar sein. Doch wie lässt sich dieses Ziel bei großen Single Page Applications erreichen?
Diese Session zeigt, wie sich nachhaltige JavaScript-Frontends mit Ideen aus der Welt von Domain-driven Design bewältigen lässt. Zunächst lernen Sie die Möglichkeiten zur Umsetzung Ihres strategischen kennen und erfahren, was Monorepos aber auch Microfrontends damit zu tun haben. Außerdem betrachten wir die Themen Zustandsmanagement sowie reaktives JavaScript vor dem Hintergrund Ihres taktischen Designs.
Am Ende haben Sie einen neuen Blick auf bewährte Konzepte aus Domain Driven Design und wissen, wie Sie damit Ihre Client-Architekturen nachhaltig und wartbar gestalten können.
Zielpublikum: Architekten, Entwickler, Technische Entscheider
Voraussetzungen: Grundkenntnisse zu Web-Technologien wie JavaScript und SPAs
Level: Advanced
Seitdem Artikel von M. Fowler und J. Lewis in 2012 sind Microservices die Antwort auf alle Fragen. Sie schienen die Antwort auf die steigende Komplexität von Softwareprojekten und Cloudanwendungen zu sein. Aber da sind Ausnahmen, die unterschiedlich beantwortet werden müssen. Im Workshop werden unterschiedliche Architekturansätze anhand von Beispielen diskutiert. Es werden gemeinsam Architekturvorschläge mit Hilfe von Domain Driven Design, Event Storming und Domain Story Telling erarbeitet. Die Lösungen werden mit den realen Lösungen verglichen und Vor-und Nachteile herausgearbeitet.
Zum Schluss können daraus verallgemeinerte Regeln abgeleitet werden, um sich für den einen oder anderen Architekturstil zu entscheiden.
Zielpublikum: Entwickler, Architekten
Voraussetzungen: Keine
Level: Basic
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.
Architekturdokumentation wird sehr oft stiefmütterlich behandelt. Dabei unterstützt das Dokumentieren bei der Entwurfsarbeit, schafft Transparenz bzw. Leitplanken für die Umsetzung und Wartung der Softwarearchitektur. Dieser Workshop führt anhand von vielen praktischen Übungen in die Begriffe Continuous Documentation und Documentation as Code ein.
Das Ziel ist die moderne, effektive und pragmatische Dokumentation der Softwarearchitektur. Dabei bauen wir auf bewährte Methoden, Formate und Tools wie AsciiDoc/Markdown, PlantUML, docToolchain, Maven/Gradle, jqAssistant und viele weitere. Agile Entwicklungsteams können so die Dokumentationsarbeit in ihre tägliche Arbeit integrieren und jederzeit aktuelle und gut strukturierte Ergebnisse ausliefern bzw. über Reviewprozesse stetig verbessern.
Zielpublikum: Entwickler, Architekten
Voraussetzungen: Entwurf von Softwarearchitekturen, Interesse an leichtgewichtigen Tools für die Dokumentation
Level: Basic
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? Denn schließlich wollen wir ja alle irgendwie ein klein wenig „normal“ sein. 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? Wie kann uns das Cloud Maturity Model dabei helfen? Und was steckt eigentlich hinter Akronymen wie IaaS, PaaS, BaaS, SaaS und FaaS?
Im Rahmen des Workshops werden wie gemeinsam eine klassische Enterprise Anwendung Schritt für Schritt in die (AWS) Cloud migrieren und dabei die verschiedenen Stufen / Reifegrade des Cloud Maturity Models durchlaufen. Angefangen bei "Lift & Shift" bis hin zu "Cloud Native" und "Cloud Voodoo - aka Serverless"
Wer bei der einen oder anderen Übung selber Hand anlegen möchte, benötigt dazu lediglich ein AWS Account. Achtung es können ggf. Kosten in sehr geringem Umfang anfallen.
Machine Learning eröffnet neue Möglichkeiten, um Optimierungspotenziale zu entdecken oder gar potenziell disruptive Geschäftsmodelle aufzuspüren. Oft schließen sich dann aber schnell kritische und ebenso triftige Fragen an.
Um Machine Learning in der eigenen Organisation sinnvoll einsetzen zu können, braucht es ein methodisches Vorgehen, neue Rollen und einige Entscheidungen. Wie dies aussehen könnte, wollen wir in diesem Workshop an konkreten Beispielen der Teilnehmenden beleuchten.
Zielpublikum: (ML-)Entwickler, Architekten, Data Scientists, Entscheider
Voraussetzungen: Keine
Level: Basic
Oliver Zeigermann ist Software-Entwickler aus Hamburg. Er entwickelt seit über 35 Jahren Software mit unterschiedlichen Ansätzen und Programmiersprachen. In letzter Zeit hat er sich vor allem mit Machine Learning und dessen Kommunikation mit dem Menschen beschäftigt. Oliver verantwortet bei der open knowledge GmbH den Bereich Machine Learning und KI.
Funktionale Modelle sind besonders flexibel und langlebig. Aber was macht das besondere an funktionalen Domänenmodellen aus? Wie werden sie gebaut? Und geht das auch in OO-Sprachen? (Teilweise.) Der Workshop gibt eine Einführung anhand von konkretem Live-Coding zum Mitmachen.
Dr. Michael Sperber ist Geschäftsführer der Active Group GmbH. Er ist international anerkannter Experte für funktionale Programmierung. 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. Außerdem ist er einer der primären Autoren des iSAQB-Advanced-Curriculums "Funktionale Software-Architektur".
Vortrag Teilen
Der Alltag eines Entwicklers sieht zuweilen so aus: unverständlicher, unzureichend dokumentierter und fehleranfälliger Code aus vergangenen Tagen muss gefixt oder um neue Funktionalitäten erweitert werden - und das am besten gestern. Bestehende Funktionalität darf jedoch unter keinen Umständen angefasst werden. Um die Wartbarkeit zu erhalten und gleichzeitig sicherzustellen, dass sich gewünschtes Verhalten nicht verändert, werden Refactorings zur Verbesserung des automatisierten Testens unabdingbar. Im Rahmen dieses Workshops wollen wir uns nicht nur Techniken aus dem praktischen Alltag anschauen, sondern uns auch über die Organisation des Refactorings selbst unterhalten. Weil alle Theorie grau ist, nehmen wir uns anschließend eine historisch gewachsene 'Altanwendung' zur Brust.
Maximale Teilnehmerzahl: 20
Zielpublikum: Entwickler, Architekten
Voraussetzungen: Programmiererfahrung in Java
Level: Advanced
Die Teilnehmer erlangen aktuelle praktische Kenntnisse bei Entwicklung und Einsatz von sicheren Web-basierten Architekturen, insbesondere Schutzmaßnahmen und Best Practices zur Vorbeugung gegen typische Schwachstellen auf Basis der aktuellen 'OWASP Top 10 Security Vulnerabilities' des 'Open Web Application Security Project'. Der Workshop beinhaltet praktische Übungen mittels Open-Source-Werkzeugen für die Sicherheitsanalyse von Softwarearchitekturen und ihrer Implementierungen, für die ein eigener Laptop benötigt wird. Wir denken uns dabei die Rolle eines Angreifers hinein und versuchen zusammen, eine dafür in einer sicheren Umgebung bereitgestellte Anwendung zu komprimittieren. Wir lernen einen Leitfaden für sichere Architekturen kennen, um die Schwachstellen vermeiden.
Maximale Teilnehmerzahl: 25
Zielpublikum: Architekten, Entwickler, QA-Manager, Projektleiter, Product Owners
Voraussetzungen: Grundlegendes Verständnis von Webanwendungen
Level: Basic
Jan Jürjens ist Director Research Projects am Fraunhofer ISST und leitet als Professor für Software Engineering das Institut für Softwaretechnik an der Universität Koblenz. Sein Arbeitsschwerpunkt ist die Entwicklung und das Testen sicherheitskritischer Software, für die er Ansätze und Werkzeuge in Kooperation mit Unternehmen entwickelt. Er ist Autor des Buches 'Secure Software Development with UML', das auch ins Chinesische übersetzt wurde.