Architektur-Entscheidungen kann man aufteilen in eine Makro-Architektur-Ebene, die alle Module betrifft, und eine Mikro-Architektur-Ebene mit Entscheidungen, die pro Modul anders sein können. Die durch eine Mikro-Architektur gewonnene Flexibilität hat beispielsweise Vorteile bei der mit einer Vielzahl an Teams, gleichzeitig ermöglicht eine Makro-Architektur einen produktiven Umgang mit der Flexibilität bei Microservices. Die Präsentation zeigt verschiedene Ansätze für eine solche Aufteilung der Architektur, die sich in der Praxis bewährt haben. Die Unterschiede dieser Beispiele verdeutlichen, worauf es bei der Wahl der Makro- / Mikro-Architektur ankommt und wie dieses Werkzeug den Erfolg von Projekten unterstützen kann.
Eberhard Wolff ist Head of Architecture bei SWAGLab und arbeitet seit mehr als zwanzig Jahren als Architekt und Berater, oft an der Schnittstelle zwischen Business und Technologie. Er ist Autor zahlreicher Artikel und Bücher, u.a. zu Microservices und trägt regelmäßig als Sprecher auf internationalen Konferenzen vor. Sein technologischer Schwerpunkt sind moderne Architektur- und Entwicklungsansätze wie Cloud, Domain-driven Design und Microservices.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/autor/eberhard.wolff
Copy & Paste-Programmierung ist seit Jahrzehnten als Code-Smell verschrien. Das hat nicht verhindert, dass in allen größeren Systemen viele Klone vorkommen. Das schafft Probleme.
Clone Detection - die automatisierte Erkennung solcher Duplikate - ist inzwischen in einigen IDEs enthalten. Allerdings nützt es niemandem, eine Liste mit 100.000 Klonen zu erzeugen. Die Herausforderung ist der sinnvolle Umgang mit bestehenden Klonen. Welcher das ist, hängt vom eigenen Kontext ab: Wieviel Copy&Paste kommt im eigenen System vor? Wie wirkt sich das auf die Kosten aus? Zu welchen Problemen führt es bei uns?
In diesem Deep Dive stelle ich Clone Detection und Management-Techniken vor. Außerdem zeige ich, wie man eine Bestandsaufnahme im eigenen System machen kann, um diese Fragen als Architekt zu beantworten.
Dr. Elmar Jürgens hat über statische Codeanalyse promoviert und für seine Doktorarbeit den Software-Engineering-Preis der Ernst Denert-Stiftung erhalten. Er ist Mitgründer der CQSE GmbH und begleitet Teams bei der Verbesserung ihrer Qualitätssicherungs- und Testprozesse. Jürgens spricht regelmäßig auf Forschungs- und Industriekonferenzen und wurde für seine Vorträge mehrfach ausgezeichnet. Er wurde 2015 zum Junior Fellow der Gesellschaft für Informatik ernannt.
Vortrag Teilen
Der Vortrag stellt aktuelle Ansätze für die Sicherheitsbewertung auf Architekturebene vor. Häufig verwendete Muster für Architekturen werden auf ihre Sicherheitseigenschaften analysiert und grundlegen Prinzipien für sicheres Design vorgestellt. Ein vorgestellter Leitfaden gibt Hinweise für ein systematisches Vorgehen zur Erstellung sicherer Softwarearchitekturen. Als Werkzeuge zum praktischen Einsatz in der Sicherheitsanalyse von Architekturen kommen u.a. SonarQube und das Microsoft Threat Modelling Tool.
Maximale Teilnehmerzahl: 15
Für die Teilnahme wird ein Laptop benötigt.
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.
Die Geschichte Deines Projekts ist erzählt, die Domänen und Subdomänen stehen, die Schnitte sind angesetzt. Auf dem Weg zu funktionierender Software wirst Du allerdings noch Modelle erstellen. Du kannst Dich dabei dicht an der Domäne orientieren, bekommst aber ein Modell, das nur wenige tiefe Einsichten bietet und spröde auf Veränderungen reagiert. Du kannst auch Techniken aus der funktionalen Programmierung benutzen - die fördern tiefe Einsichten zutage, sind aber oft so Abstrakt, dass der Bezug zur Domäne schwer erkennbar ist. Wie können wir den Weg aus der Domain Story ein Modell machen, das die Domäne erkennbar abbildet, tiefe Einsichten liefert, Freude im Umgang macht und lange hält? Henning Schwentner (Mr. Domain Storytelling) und Mike Sperber (Funktionalnerd) zeigen's Euch!
Michael Sperber is CEO of Active Group in Tübingen, Germany. Mike specializes in functional programming and has been an internationally recognized expert in the field: He has spoken at the top conferences in programming languages, authored many papers on the subject as well as several books. Moreover, he is an expert on teaching programming.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/autor/michael.sperber
Henning Schwentner loves programming in high quality. He lives this passion as coder, coach, and consultant at WPS – Workplace Solutions in Hamburg, Germany. There he helps teams to structure their monoliths or to build new systems from the beginning with a sustainable architecture. Microservices or self-contained systems are often the result. Henning is author of “Domain Storytelling – A Collaborative Modeling Method” and the www.LeasingNinja.io as well as translator of “Domain-Driven Design kompakt”.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/autor/henning.schwentner
Vortrag Teilen
Eigentlich weiß jeder um die "Kraft der Bilder", und dennoch scheuen sich viele Leute, sie auch einzusetzen, wenn es um die Vermittlung von Ideen und Gedanken geht. Dabei gewinnen grade die oft abstrakten Konzepte in der IT an Begreifbarkeit, wenn man sie visualisiert. "Ich kann doch nicht malen" ist die häufigste Sorge. Aber das ist auch nicht nötig, denn es geht vielmehr um einfache Symbolik und eine Unterstützung statt Ersetzung des geschriebenen Wortes. Die Session zeigt u.a. an kleinen Experimenten, wie stark sich Graphic Facilitation auswirken kann und wie man schon mit kleinen Taschenspielertricks viel bewirkt. Vielleicht ist die nächste Sprache, die wir uns aneignen, keine Programmiersprache sondern lieber eine Bildersprache.
Maximale Teilnehmerzahl: 10
Jan Leßner ist Java-Entwickler der 1. Stunde und seit Erscheinen der Sprache als Architekt, Systemanalyst und Entwickler in Enterprise-Projekten tätig. Er engagiert sich in verschiedenen Open-Source-Projekten für ultraschlanke Enterprise-Lösungen, ist Buchautor und leidenschaftlicher Voll-Nerd und Clean Coder - vom Internet of Things bis zur hochverteilten JEE-Landschaft
Vortrag Teilen
Machine Learning ist eine spezielle Form der Software-Entwicklung und hat als solche viele Gemeinsamkeiten, aber auch einige Unterschiede zur traditionellen Software-Entwicklung. Während traditionell Software-Entwickler Code von Hand schreiben wird im Machine Learning ein Modell anhand von bestimmten Daten, einer Modell-Architektur und einem Trainings-Script erzeugt.
Anhand eines durchgängigen Beispiels bewegen wir uns in diesem Workshop durch die unterschiedlichen Phasen eines solchen Machine Learning Projekts. Hierbei gehen wir auf die Besonderheiten einer solchen Machine Learning Umsetzung ein.
Es wird ein Laptop, ein aktueller Chrome Browser und eine beliebige Entwicklungsumgebung benötigt.
Oliver Zeigermann ist Softwareentwickler 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.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/autor/oliver.zeigermann
Vortrag Teilen
Microservices. APIs. Cloud native. Always on. Near-realtime. And so on. Today's IT landscapes are highly interconnected, massively distributed and need to be responsive 24x7. Downtimes are not an option. Long response times are not an option, either. Thus, time to learn resilient software design.
In this workshop, we will first discuss why we need resilient software design. Then we will build a little essential patterns toolbox for handling timeouts, failures, overload situations and data consistency. Finally, we will discuss how to implement them in practice and which parts we can (still) delegate to our infrastructure.
You will leave this workshop with a toolbox to create more robust systems and practical advice how to implement them.
Uwe Friedrichsen travels the IT world for many years, always in search of innovative ideas and concepts. His current focus areas are system design, resilience, sustainability and making IT a (bit) better place. Often, you can find him on conferences sharing his ideas, or as author of articles, blog posts, tweets and more.
Mehr Inhalte dieses Speakers? Schaut doch mal bei sigs.de vorbei: https://www.sigs.de/autor/uwe.friedrichsen
Vortrag Teilen
CQRS und Event Sourcing werden schon länger als Alternative zu klassischen Schichtenarchitekturen propagiert. Jedoch gab es lange keine Frameworks, die eine umfassende Lösung bieten um diese Patterns auch in der Praxis anwenden zu können. Das Open Source Framework Axon schließt diese Lücke.
Durch die Nutzung des Frameworks wird es für Entwickler ein leichtes, von den Vorteilen von CQRS/ES zu profitieren: Beliebige Skalierung durch Trennung von Schreib- und Lesemodellen und konstante Komplexität über den Lebenszyklus einer Anwendung hinweg.
In unserer Session fassen wir noch einmal zusammen, was CQRS und ES eigentlich sind, welche Vorteile sie gegenüber anderen Architekturen bieten und zeigen anhand konkreter Beispiele, wie eine CQRS/ES Anwendung mit Axon und Spring realisiert werden kann.
Es wird ein Notebook mit lauffähigem Java, Git und einer IDE ihrer Wahl benötigt.
Florian Pfleiderer beschäftigt sich als Senior Consultant bei Digital Frontiers mit agiler Software-Entwicklung. Seinen Kunden hilft er auf ihrem Weg in die Cloud und berät sie in den Bereichen Architektur, Microservices und Craftsmanship.
Frank Steimle ist Senior Consultant bei Digital Frontiers. Er beschäftigt sich mit agiler Softwareentwicklung im Umfeld von Domain-Driven Design mit besonderem Augenmerk auf Event Modeling und CQRS.
Vortrag Teilen