Episodit
-
Gute Software-Architektur strukturiert komplexe Software-Systeme so ĂŒbersichtlich, dass Menschen sie verstehen und weiterentwickeln können. Also geht es bei der Software-Architektur um den Faktor Mensch. Deswegen kann sich Architektur aber nicht auf MaĂnahmen fĂŒr die Strukturierung der Software begrenzen, sondern muss sich auch mit den Menschen beschĂ€ftigen. In diesem Vortrag geht es um einige konkrete AnsĂ€tze und Erfahrungen, die Entwicklung durch MaĂnahmen in Bezug auf den Faktor Mensch zu verbessern.
Links
Episode zu Team Topologies
FlugunglĂŒck auf Teneriffa bei Wikipedia
United Airlines Flug 173 bei Wikipedia
Episode Crew Ressource Management - Wie geht die Luftfahrt mit dem Faktor Mensch um?
Episode Scrum Master:in und Softwarearchitektur mit Nadine Andraczek
Episode Auftragstaktik - AgilitÀt beim MilitÀr? mit Sönke Marahrens
Episode Auftragstaktik - AgilitÀt beim MilitÀr? mit Sönke Marahrens
Episode Psychological Safety - was sagt der Psychologe dazu? mit Joseph Pelrine - OOP Special
Episode Wie reiĂt man den Elfenbeinturm ein? mit Anja Kammer
-
Zum Kippen agiler Projekte gab es bereits einen Vortrag und eine Episode im Stream. Insbesondere zu dem Vortrag gab einige interessante Reaktionen und Kommentare - offensichtlich gibt es viele unterschiedliche Meinungen zu dem Thema. In dieser Episode diskutieren wir dieses Feedback und vertiefen so das Thema AgilitÀt und das Scheitern des Ansatzes mit weitere Perspektiven.
Links
Wahrheiten ĂŒber Software-Entwicklung - DarĂŒber möchte ich nicht mehr sprechen mĂŒssen!
Warum (agile) Projekte kippen
Short Video zum Kippen agiler Projekte
Diskussion auf LinkedIn
YouTube-Video mit Diskussion
Prof. Christiane Floyd zu "menschenzentrierter Software-Entwicklung"
Extreme Programming (XP) - eine Retrospektive
Are We Engineers? With Hillel Wayne
Heise-Blog "Hilft kaputte AgilitÀt?"
Crew Ressource Management - Wie geht die Luftfahrt mit dem Faktor Mensch um?
Auftragstaktik - AgilitÀt beim MilitÀr? mit Sönke Marahrens
Welt: Das einmalige Erfolgsrezept deutscher Armeen
Hillel Wayne & Laurent Bossavit - Is It All Built on Sand - What Do We Actually Know About Software Development?
Streams zu Modularisierung
-
Puuttuva jakso?
-
Bounded Contexts sind zentral fĂŒr Strategic Domain-driven Design. Irgendwie werden damit groĂe Systeme aufgeteilt, aber gleichzeitig macht es die Definition von Begriffen eindeutig und irgendwie spielt das Konzept auch eine Rolle fĂŒr die Kollaboration von Teams. In dieser Episode diskutieren wir die den Begriff Bounded Context im Detail und gehen auf die Probleme ein, die bei der Nutzung des Begriff typischerweise auftreten.
Links
Taktisches Domain-driven Design (DDD)
Folge Statt Microservices Framework, Library, Komponenten
Eric Evans: DDD Referenz (kostenlos)
Folge Team Topologies
Folge Objektorientierung - Was ist das eigentlich?
Artikel "GroĂe Systeme mit Domain-driven Design entwerfen"
Eric Evans: Domain-Driven Design: Tackling Complexity in the Heart of Software
-
Die Umsetzung von taktischem Domain-Driven Design (DDD) in Java birgt einige technische Herausforderungen. In dieser Episode betrachten wir einen Ansatz, der Entwickler:innen dabei unterstĂŒtzen reichhaltige DomĂ€nenmodelle in Java zu implementieren: die jMolecules Bibliothek ermöglicht es, DDD Konzepte direkt in Code auszudrĂŒcken und bietet darĂŒber hinaus Integration in weitverbreitete Technologien wie Spring, Jackson und Persistenztechnologien. Oliver Drotbohm ist Engineer bei Broadcom und einer der Entwickler von jMolecules.
Links
Olivers Demo bei GitHub
Taktisches Domain-driven Design
Architektur-Hamburger mit Henning Schwentner
Vaughn Vernon about Ports and Adapters and DDD
Markus Völter zu Fachliche Architekturen mit DSL (Domain Specific Languages)
Peter Gafert zu ArchUnit
Dirk Mahler zu Software-Architektur-Management mit jQAssistant
-
Vaughn is the author of many fundamental books about domain-driven design and one of the leading experts in this field. In this episode, we talk ports and adapters and why this pattern is actually easy. Also we speak about the role of frameworks and AI - in particular for domain-driven design.
Links
Vaughn Vernon: Domain-Driven Design Distilled
Vaughn Vernon: Domain-Driven Design kompakt
Carola Lilienthal, Henning Schwentner: Domain-Driven Transformation: Modularize and Modernize Legacy Software
Carola Lilienthal, Henning Schwentner: Domain-Driven Transformation: Monolithen und Microservices zukunftsfÀhig machen
Susanne Kaiser: Adaptive Systems with Domain-Driven Design, Wardley Mapping, and Team Topologies: Architecture for Flow: Architecture for Flow
Alistair Cockburn Hexagonal Architecture
Frank Buschmann, Regine Meunier, Hans Rohner, Peter Sommerlad, Michael Stal : Pattern-Oriented Software Architecture, Vol. 1: A System of Patterns
Martin Fowler: Pattern of Enterprise Application Architecture
Transaction Script
Vaughn Vernon: Implementing Domain-Driven Design
Vaughn Vernon, Jaskula Tomasz: Strategic Monoliths and Microservices: Driving Innovation Using Purposeful Architecture
Eric Evans: DDD and LLMs - Explore DDD 2024
Neil Perry, Megha Srivastava, Deepak Kumar, Dan Boneh: Do Users Write More Insecure Code with AI Assistants?
-
AgilitĂ€t bietet höhere ProduktivitĂ€t und bessere Ergebnisse fĂŒr die Projekte - daher wird sie sich durchsetzen! Die RealitĂ€t sieht leider manchmal ganz anders aus: Erst ist das Projekt agil, produktiv und alle sind begeistert. Wenige Monate spĂ€ter: wichtige Personen haben das Projekt verlassen und von den agilen Techniken ist nur noch wenig ĂŒbrig . In diesem Vortrag geht es uns um das âKippenâ von Projekten und GrĂŒnde sowie Möglichkeiten diskutieren, um mit einer solchen Situation umzugehen.
Links
Folien
Prof. Christiane Floyd zu âmenschenzentrierter Software-Entwicklungâ
Vortrag Wahrheiten ĂŒber Software Entwicklung: DarĂŒber möchte ich nicht mehr sprechen
mĂŒssen!Welchen Sinn hat agiles Coaching? mit Johannes Link
Blog: Hilft "kaputte"
AgilitÀt?Auftragstaktik - AgilitÀt beim MilitÀr? mit Sönke Marahrens
Crew Ressource Management - Wie geht die Luftfahrt mit dem Faktor Mensch um?
Linda Rising - Fearless Change and the Unconscious Mind
Beyond Budgeting
Das Kippen agiler Software-Projekte
AgilitÀt
Extreme Programming (XP) - eine Retrospektive
-
Das dominierende Programmierparadigma ist nach wie vor die Objektorientierung, die Konzepte wie Vererbung, Delegation und Aggregation umfasst. In dieser Episode werden die verschiedenen AnsĂ€tze der Objektorientierung diskutiert und aufgezeigt, wie unterschiedlich sie umgesetzt werden kann â insbesondere auf der Ebene der objektorientierten Programmierung.
Links
JAX Microservices Camp
Software Architektur als Beruf
Folge zu taktischem Domain-driven Design
Episode Funktionale Programmierung, DDD und Architektur mit Mike Sperber
Episoden zu funktionaler Programmierung
Abstract Data Type bei Wikipedia
Circle Ellipse Problem bei Wikipedia
Command Query Separation CQS bei Wikipedia
Folge zu Wiederverwendung
Nikolaus Wirths Paper zu KomplexitÀt
Vortrag Beten wir KomplexitÀt an?
Wirth ĂŒber das Problem der populĂ€ren Programmier-Sprachen
Interview mit Adele Goldberg
-
Alberto Brandolini is the creator of Event Storming, a technique aimed at fostering a shared understanding of business concepts among all stakeholders in a software development endeavor. However, architects may encounter challenges within the business domain that exceed their influence. Alberto will explore this issue and propose potential solutions.
Links
Alberto's Event Storming Book
Folge ĂŒber DDD, Event Storming und Specification by Example mit
Nicole RauchFolge ĂŒber das Messen von ProduktivitĂ€t
-
Domain-driven Design (DDD) bietet einen umfangreichen Werkzeug-Kasten. Aber bei Architektur-Diskussionen kommt die Code-Ebene oft zu kurz, obwohl DDD auch in dem Bereich helfen kann. Im Mittelpunkt dieser Episode soll daher das sogenannte taktisches Design stehen. Diese Patterns beschreiben, wie man GeschÀftslogik in einem objekt-orientierten System aufbauen kann. Dazu gehören Ideen wie Entity, Aggregate oder Service.
Links
Sketchnotes
Softwarearchitektur-Kickstart
Martin Fowler: Pattern of Enterprise Application Architecture
Transaction Script
Table Module
Eric Evans: DDD Referenz
Folge zu Events, Event Sourcing und CQRS
Folge mit Susanne Braun zu Eventual Consistency
DDD Crew: Event Storming Glossary Cheat Sheet
Alberto Brandolini: Introducing Event Storming
SoftwareArchitekTOUR-Podcast zu taktischem Design
-
Team Topologies stellen Konzepte dar, mit denen Software-Entwicklungsteams organisiert werden können. Mit nur vier Arten von Teams und drei Interaktionsmodi zwischen den Teams reduziert sich Team Topologies auf das wesentliche. Gleichzeitig ist es in der Praxis erprobt und löst viele typische Probleme. Im Mittelpunkt dieser Episode steht die Vorstellung und Diskussion der wesentlichen Konzepte und Ideen.
Links
Infographic
Sketchnotes
Episode mit Anja Kammer zu DevOps und Team Topologies
JAX Workshop: Team Topologies, Inverse Conway und mehr ganz praktisch
JAX Microservices Camp: Organisation und Team Topologies: Der SchlĂŒssel zum Erfolg mit Microservices
Matthew Skelton, Manuel Pais: Team Topologies (DE)
Matthew Skelton, Manuel Pais: Team Topologies (EN)
Matthew Skelton, Manuel Pais: Remote Team Interactions Workbook
Team Topologies Infographics
Episode zu API-Team mit Dr. Miriam Greis und Lisa Moritz
Episode zu Site Reliability Engineering mit Bastian Spanneberg
-
Die Unternehmens-IT-Landschaften bestehen heutzutage aus einer Vielzahl unterschiedlicher Software-Systeme. Jedes Software-System muss sich in diese Landschaft einfĂŒgen und daher mit anderen Systemen integrieren. Und bei Microservices spielt ebenfalls die Integration der einzelnen Services eine zentrale Rolle. In dieser Episode diskutieren wir typische Mechanismen zur Integration wie REST oder Messaging und wie sie die typischen Probleme bei der Integration lösen.
Links
Folge zu AbhÀngigkeiten
Does my ESB look big on this
VideoFolienStefan Tilkov, Martin Eigenbrodt, Silvia Schreier, Oliver Wolf: REST und HTTP
HTTP Folge mit Lucas Dohmen
Enterprise Service Bus bei Wikipedia
Kafka Video
Gregor Hohpe: Patterns of Enterprise Application Architecture
Apache Camel
Spring Integration
Episode zu Feeds mit Jochen Christ
Episode zu lose Kopplung
-
âAgile? GĂ€hn! Haben wir probiert. Funktioniert bei uns nicht.â Haben Sie so etwas so oder so Ă€hnlich schon gehört? Ist Agile oder Scrum bei Ihnen bereits ein âverbrannter Begriffâ, bei dem Kollegen um Sie herum das Weite suchen, wenn Sie ihn verwenden?
Die GrĂŒnde sind dabei oft vielfĂ€ltig. In meiner mehrjĂ€hrigen Erfahrung mit verschiedensten Unternehmen haben sich dabei jedoch einige Muster herauskristallisiert, die ich als âAgile Anti-Patternâ bezeichnen wĂŒrde.
Genau darum soll es hier gehen. UnabhĂ€ngig davon, ob Sie die AgilitĂ€t in ihrem Unternehmen unterstĂŒtzen oder sabotieren wollen: Hier lernen Sie, wie Sie es effektiv anstellen können. Wir beginnen dabei mit verschiedensten Ursachen fĂŒr das Scheitern, und schauen, worum es im Kern bei AgilitĂ€t geht und warum es so leicht ist, sie abzuwĂŒrgen.
Im Anschluss schweifen wir ĂŒber die hĂ€ufigsten Anti-Pattern und schlieĂen damit ab, was AgilitĂ€t mit gelebter Unternehmenskultur zu tun hat.
-
Software-Entwicklung ist anders als andere Disziplinen: Wir können nicht mit einem festen Plan im Sinne des Wasserfalls vorgehen, sondern mĂŒssen iterativ arbeiten. Die Architektur ist nicht stabil. Best Practices sind eher problematisch. Diese Erkenntnisse sind nicht neu â im Gegenteil: Einige sind erschreckend alt. Dennoch sind diese Grundlagen in unserer scheinbar innovativen Branche nicht allgemein gelĂ€ufig. Da sie nicht intuitiv klar oder offensichtlich sind, erschlieĂen sie sich nicht jeder Person. Aber es ist ermĂŒdend, immer wieder auf sie hinzuweisen. Idealerweise mĂŒssten wir sie nicht immer wieder aus Neue vermitteln. Diese Themen sollten mindestens unter IT-Professionals als unumstöĂliche Wahrheiten verankert werden. Dieser Talk könnte ein erster Schritt in diese Richtung sein.
Episode "Menschenzentrierte Softwareentwicklung" mit Prof. Dr. Christiane Floyd
Bericht ĂŒber das SAGE-System
The Leprechauns of Software Engineering by Laurent Bossavit
Episode "Gibt es das Wasserfallmodell ĂŒberhaupt?"
Blog "Wasserfall-Modell? LOL!"
Episode "Are We Engineers?" with Hillel Wayne
Vortrag "Architektur: bitte nicht zukunftssicher!"
Blog "Die einzige Best Practice: Keine Best Practice nutzen"
Episode "Best Practices - Keine gute Idee"
60-Minuten-Consulting
BroschĂŒre "Software-Entwicklung: Der Mensch im Mittelpunkt"
-
Software engineering stands apart from other engineering disciplines - or does it? Some argue that we are too informal to be deemed engineers, while others believe ârealâ engineers follow traditional, waterfall methods because things are much more stable in their domains. Some even argue that software development should be seen as an art or craft. To address the question of whether software engineers are ârealâ engineers, Hillel Wayne interviewed professionals who crossed over from traditional engineering to software engineering. In this episode, we will delve into the insights gained from these.
Links
Is Software Engineering Real Engineering? Hillel Wayne YOW! 2023 YouTube hillelwayne.com
Are We Really Engineers? (Crossover project 1/3)
We Are Not Special(Crossover project 2/3)
What Engineering Can Teach (an Learn From) Us (Crossover project 3/3)
The Joel Test
Documenting Software Architectures (Paul Clements et al.)
Handbook of Industrial Engineering (Gavriel Salvendy)
Hillel Wayne & Laurent Bossavit - Is It All Built on Sand - What Do We Actually Know About Software Development?
Auftragstaktik - AgilitÀt beim MilitÀr? mit Sönke Marahrens
Crew Ressource Management - Wie geht die Luftfahrt mit dem Faktor Mensch um?
-
Fehler gibt es auch in der Software-Architektur. Auf Social Media haben wir Menschen darum gebeten, von Architektur-Fehlern zu berichten, die sie selbst gemacht haben oder in Projekten miterlebt haben. In dieser Episode betrachten wir einige davon und versuchen, aus ihnen zu lernen: Gibt es Muster? Was sind die GrĂŒnde? Kann man die Fehler vermeiden?
Links
Folge âAmazon - Von Microservices zurĂŒck zu Monolithen?â
Artikel von von Oliver Wehrens zu Mikro-/Makro-Architektur
Episode zu Mikro-/Makro-Architektur
Architektur Kickstart
Episode zu Crew Ressoure Management
The Vietnam of Computer Science von Ted Neward
BED-Con
Bert Jan Schrijver about Generic or Specific - Wichtiger Punkt: Erst beim dritten Mal eine generische Lösung bauen
-
Software-Architektur spielt vor allem in groĂen Projekten eine entscheidende Rolle fĂŒr den Erfolg. In dieser Episode diskutieren wir Methoden, um Software-Architektur-Arbeit erfolgreich auf gröĂere Projekte und Teams zu skalieren.
Links
Planung der nÀchsten EpisodenConway's Law
Organisation und Architektur - ein Beispiel
Makro-Architektur
Episoden zu Modularisierung
Die Rolle Software-Architekt
-
Kann man Software ohne Architektur entwickeln? In dieser Episode gehen wir genau dieser Frage nach, denn oft scheint Architektur im Weg zu stehen. Vielleicht wird also alles besser, wenn wir sie einfach weglassen?
Links
Die Rolle Software-Architekt 1/2
Die Rolle Software-Architekt 2/2
Was ist Software-Architektur ĂŒberhaupt?
Crew Ressource Mangement - Wie geht die Luftfahrt mit dem Faktor Mensch um?
Auftragstaktik - AgilitÀt beim MilitÀr? mit Sönke Marahrens
Software-Architektur Inspiration von anderen Branchen
Hillel Wayne "What Engineering Can Teach (and Lean From) Us"
Peter Gafert zu ArchUnit
Folgen zu "Wir bauen eine Software-Architektur"
Folgen zur iSAQB Advanced Beispielaufgabe
-
In dieser Episode sprechen Dr. Miriam Greis und Lisa Moritz ĂŒber API-Teams. Sie klĂ€ren, was sich hinter diesem Begriff verbirgt, welche Vorteile ein API-Team mit sich bringt und welche HĂŒrden auf dem Weg zu einem erfolgreichen API-Team ĂŒberwunden werden mĂŒssen.
Links
Liste mit Tools rund um OpenAPI u.a. mit den erwÀhnten Spectral und Redocly CLI und den Editoren Stoplight Studio und Swagger Editor
portman
OpenAPI Map
-
Heutzutage wird Modularisierung oft mit der Aufteilung in Microservices gleichgesetzt. Können Konzepte wie Framework, Library oder Komponenten als Alternativen dienen? In dieser Episode beleuchten wir die genaue Bedeutung dieser Begriffe und wie nĂŒtzlich sie bei der Strukturierung von Software-Systemen sind.
Links
Sketchnotes
Software Architektur im Stream Spreadshop
Software-Entwicklung und Menschen - Die remote UnConference
Episode zu loser Kopplung
Wikipedia zu Library
Brad Coxs Idee zu Komponenten
Episode zu Wiederverwendung
Episoden zum Architektur-Management
Blog: Die Cloud: Eine Komponentenbibliothek
Bert Jan Schrijver about Geneirc or Specific
-
Legacy Software - dabei erschaudern auch erfahrene Techniker:innen. Aber Legacy heiĂt eigentlich so viel wie âErbeâ und ist nur in der IT rein negativ besetzt. Und Legacy Software löst praktisch immer ein Business-Problem erfolgreich, wĂ€hrend eine Neuentwicklung ihre Nische erst finden muss. Der Vortrag zeigt, wie man diese und andere Erkenntnisse nutzen kann, um Strategien zu entwickeln, mit denen man produktiver und erfolgreicher mit Legacy-Software umgehen kann. Und so wird aus dem Problem âLegacyâ eine Chance.
Links
Heise-Blog: KI in der Software-Entwicklung: ĂberschĂ€tzt
Folge zum Strangler-Fig-Pattern
Folge zu Nick Tunes Legacy-Ansatz
Nick Tunes Buch zu Architektur-Modernisierung
Folge zu Big Ball of Mud
Kostenloses 60-Minuten-Consulting
Kostenlose BroschĂŒre: Software-Entwicklung: Der Mensch im Mittelpunkt
- Näytä enemmän