SlideShare ist ein Scribd-Unternehmen logo
Rock Solid Software Architecture
Mit ADRs, arc42 und Microsites
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller
Digitalpartner der
Deutschen Bahn
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 2
Eine Architektur soll entworfen werden
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 3
Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
Eine Architektur soll entworfen werden
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 4
Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
Starten wir mit einem Vertrag!
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 5
Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
Starten wir mit einem Vertrag!
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 6
Auftrag
Aktuelle Situation?
Problemstellung?
Randbedingungen?
In Scope / out of Scope?
Ansprechpartner & Stakeholer?
1) Einführung und Ziele
Aufgabenstellung
Qualitätsziele (Top 3)
Stakeholder
2) Randbedingungen
3) Kontextabgrenzung
Fachlicher Kontext
Technischer Kontext
Eine Architektur soll entworfen werden
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 7
1. Einführung & Ziele
3. Kontextabgrenzung
2. Randbedingungen
Wie gehts weiter
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 8
1. Einführung & Ziele
2. Randbedingungen
3. Kontextabgrenzung
10. Qualitätsanforderungen
Qualitätsattribute
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 9
Software
Qualitäts-
kriterien
ISO 25010
Wartbarkeit
Kompatibilität
Portierbarkeit
Performance
Funktionalität
Zuverlässigkeit
Sicherheit
Usability
Qualitätsattribute wie ermitteln
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 10
Sicherheit Nicht manipulierbar
Integrität
Datenschutz
Sichere Administration
Authentizierbarkeit
Ergebnis: Gewichteter Qualitätsbaum
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 11
Nicht manipulierbar
Integrität
Datenschutz
Erlernbarkeit
Schutz vor Bedienungsfehlern
Usability
Sicherheit 1
3
4
2
5
Qualitätsszenarien Allgemein
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 12
Stimulus Antwort
Artefakt
Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
Qualitätsszenarien: Beispiel
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 13
Barkeit (Illity) Fähigkeit Stimulus Systemzustand Messkriterium
Performanz Erhaltung der
Funktionsfähigkeit
auch bei 20
parallelen
Benutzern
Bis zu 20 Benutzer
lesen gleichzeitig
über die API Daten
aus
Normalzustand API antwortet
innerhalb von 100
ms in 90% der
Anfragen
Wie gehts weiter
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 14
1. Einführung & Ziele
2. Randbedingungen
3. Kontextabgrenzung
10. Qualitätsanforderungen
9. Architektur-
entscheidungen
Erarbeitung von Architekturentscheidungen
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 15
ADR-032: Kostenreduzierung bei ölhaltigen Zusätzen
Wir setzen in der Rezeptur des Schokoriegels Palmfett ein.
Status
Offen
Problemstellung & Kontext
Die Weltmarktpreise von Kakaoprodukten und Butterfett sind stark gestiegen. Zudem gibt
es einen ruinösen Verdrängungswettbewerb zwischen den Herstellen von Schokoriegeln.
Beides führt zu einer Minderung unserer Marge. Wir können nicht mehr wirtschaftlich
produzieren.
Erarbeitung von Architekturentscheidungen (2)
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 16
Konsequenzen
• Die Produktion unserer Schokoriegel ist wirtschaftlich möglich
• In der Öffentlichkeit ist Palmfett in Verruf geraten. Es ist mit einem Shitstorm zu rechnen
• Die Produktionsanlagen müssen umgestellt werden auf die veränderte Konsistenz der
Schokomasse
Alternativen
Verkaufspreisanpassung nach oben
Positiv: Wir können wirtschaftlich produzieren
Negativ: Die Konkurrenz kann uns unterbieten
Kakaobutter und Butterfett durch Palmfett ersetzen
Positiv: Produktionskosten sinken. Die Produktion ist wirtschaflich
Negativ: Umbau der Produktionsanlagen notwendig. Palmfett ist umweltschädlich. Es ist damit zu
rechnen, dass einige Kunden unsere Schokoriegel nicht mehr kaufen werden
Erarbeitung von Architekturentscheidungen (3)
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 17
Qualitätsanforderungen
Wirtschaftlichkeit
Effizienz
Zukunftsfähigkeit
Qualitätsszenarien
S-07
S-42
Erarbeiten des ADRs im Docs-as-Code Ansatz
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 18
main
adr-042
Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
Jetzt erst die Lösung dokumentieren
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 19
1. Einführung & Ziele
2. Randbedingungen
3. Kontextabgrenzung
6. Laufzeitsicht
10. Qualitätsanforderungen
11. Risiken &
Technische Schulden
12. Glossar
7. Verteilungssicht
4. Lösungsstrategie
5. Bausteinsicht
9. Architektur-
entscheidungen
8. Querschnittliche
Konzepte
Ablage im
Repo
Versionier-
/Diffbar
Synchrone
Auslieferung
Offlinefähig
Teil des Build-
Prozesses
Generierung/
Automatisierung
Flexible
Ausgabe
Nähe zum
Sourcecode
1
Documentation as Code
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
Microsite
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 22
Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
Warum Microsite?
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 23
Zugänglich
Schnell und zuverlässig
Leicht bedienbar
Auffindbar
Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
Wieviel Aufwand steckt da eigentlich dahinter?
24
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller
Continuous Documentation
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 25
Automatisiert
erstellen
Regelmäßig
ausliefern
Feedback
integrieren
Stetig
ergänzen
Reviewen
Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
Architekturreview kann kommen
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 26
Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
Architekturreview kann kommen: Modulare Dokumentation
DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 27
arc42-
master.adoc
kapitel2.adoc
kapitel1.adoc
kapitel3.adoc
…
Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
DB Systel GmbH | Johannes Dienst @JohannesDienst | Jan Kohlhaas 28
Welche zwei Fragen sind noch offen?
Johannes.Dienst@deutschebahn.com
@JohannesDienst
Ralf.D.Mueller@deutschebahn.com
@RalfDMueller

Weitere ähnliche Inhalte

Ähnlich wie Rock Solid Software Architecture with ADRs, arc42 and Microsites

Magdeburger Developer Days 2018 - Das perfekte Anwendungsmodell
Magdeburger Developer Days 2018 - Das perfekte AnwendungsmodellMagdeburger Developer Days 2018 - Das perfekte Anwendungsmodell
Magdeburger Developer Days 2018 - Das perfekte Anwendungsmodell
Robin Sedlaczek
 
DevOps im Konzern - Autonomie vs Betriebssicherheit (Continuous Lifecycle)
DevOps im Konzern - Autonomie vs Betriebssicherheit (Continuous Lifecycle)DevOps im Konzern - Autonomie vs Betriebssicherheit (Continuous Lifecycle)
DevOps im Konzern - Autonomie vs Betriebssicherheit (Continuous Lifecycle)
Johannes Dienst
 
Developer Week 2019: Architekturen für .NET Core-Anwendungen
Developer Week 2019: Architekturen für .NET Core-AnwendungenDeveloper Week 2019: Architekturen für .NET Core-Anwendungen
Developer Week 2019: Architekturen für .NET Core-Anwendungen
Robin Sedlaczek
 
.NET Core Architecture (UI)
.NET Core Architecture (UI).NET Core Architecture (UI)
.NET Core Architecture (UI)
Robin Sedlaczek
 
Ist das Softwarearchitektur oder kann das weg?
Ist das Softwarearchitektur oder kann das weg?Ist das Softwarearchitektur oder kann das weg?
Ist das Softwarearchitektur oder kann das weg?
Johannes Dienst
 
GUI & DESIGN 2017 - Das perfekte Anwendungsmodell. UIs für jedes Device!
GUI & DESIGN 2017 - Das perfekte Anwendungsmodell. UIs für jedes Device!GUI & DESIGN 2017 - Das perfekte Anwendungsmodell. UIs für jedes Device!
GUI & DESIGN 2017 - Das perfekte Anwendungsmodell. UIs für jedes Device!
Robin Sedlaczek
 
Dev Day 2021 - Stephan Pirnbaum - Anwendungsmodernisierung
Dev Day 2021 - Stephan Pirnbaum - AnwendungsmodernisierungDev Day 2021 - Stephan Pirnbaum - Anwendungsmodernisierung
Dev Day 2021 - Stephan Pirnbaum - Anwendungsmodernisierung
DevDay Dresden
 
Technologie und SEO: Cloud, Big Data und Mobile First angeschaut
Technologie und SEO: Cloud, Big Data und Mobile First angeschautTechnologie und SEO: Cloud, Big Data und Mobile First angeschaut
Technologie und SEO: Cloud, Big Data und Mobile First angeschaut
Ralf Schwoebel
 
Langlebige Softwarearchitekturen - Der Umgang mit technischen Schulden
Langlebige Softwarearchitekturen - Der Umgang mit technischen SchuldenLanglebige Softwarearchitekturen - Der Umgang mit technischen Schulden
Langlebige Softwarearchitekturen - Der Umgang mit technischen Schulden
Carola Lilienthal
 
BATbern52 SBB zu Data Products und Knacknüsse
BATbern52 SBB zu Data Products und KnacknüsseBATbern52 SBB zu Data Products und Knacknüsse
BATbern52 SBB zu Data Products und Knacknüsse
BATbern
 
Developer Week 2019: .NET, .NET Core und .NET Standard - Ein Richtungskompass
Developer Week 2019: .NET, .NET Core und .NET Standard - Ein RichtungskompassDeveloper Week 2019: .NET, .NET Core und .NET Standard - Ein Richtungskompass
Developer Week 2019: .NET, .NET Core und .NET Standard - Ein Richtungskompass
Robin Sedlaczek
 
BASTA! 2017 Jubiläumskonferenz - CUIs & The Microsoft Bot Framework
BASTA! 2017 Jubiläumskonferenz - CUIs & The Microsoft Bot FrameworkBASTA! 2017 Jubiläumskonferenz - CUIs & The Microsoft Bot Framework
BASTA! 2017 Jubiläumskonferenz - CUIs & The Microsoft Bot Framework
Robin Sedlaczek
 
Intranet 2.0 - Lösungen für Wissensmanagement und Zusammenarbeit
Intranet 2.0 - Lösungen für Wissensmanagement und ZusammenarbeitIntranet 2.0 - Lösungen für Wissensmanagement und Zusammenarbeit
Intranet 2.0 - Lösungen für Wissensmanagement und Zusammenarbeit
Communardo GmbH
 
Codec Deutschland - Unternehmensbroschüre
Codec Deutschland - UnternehmensbroschüreCodec Deutschland - Unternehmensbroschüre
Codec Deutschland - Unternehmensbroschüre
Codec Deutschland
 
Die Architektur, die man kann
Die Architektur, die man kannDie Architektur, die man kann
Die Architektur, die man kann
Johann-Peter Hartmann
 
#ADC 2016 - Roslyn & Visual Studio Extensions
#ADC 2016 - Roslyn & Visual Studio Extensions#ADC 2016 - Roslyn & Visual Studio Extensions
#ADC 2016 - Roslyn & Visual Studio Extensions
Robin Sedlaczek
 
SPSD2014 - Herausforderung: Produktive SharePoint Collaboration Plattform
SPSD2014 - Herausforderung: Produktive SharePoint Collaboration PlattformSPSD2014 - Herausforderung: Produktive SharePoint Collaboration Plattform
SPSD2014 - Herausforderung: Produktive SharePoint Collaboration Plattform
Communardo GmbH
 
Cloud Databases, Developer Week Nuernberg 2014
Cloud Databases, Developer Week Nuernberg 2014Cloud Databases, Developer Week Nuernberg 2014
Cloud Databases, Developer Week Nuernberg 2014
Romeo Kienzler
 
Griechische Philosophie für moderne Softwareentwicklung
Griechische Philosophie für moderne SoftwareentwicklungGriechische Philosophie für moderne Softwareentwicklung
Griechische Philosophie für moderne Softwareentwicklung
Johannes Dienst
 
DNUG 36 2012_Konferenzbroschuere
DNUG 36 2012_KonferenzbroschuereDNUG 36 2012_Konferenzbroschuere
DNUG 36 2012_Konferenzbroschuere
Friedel Jonker
 

Ähnlich wie Rock Solid Software Architecture with ADRs, arc42 and Microsites (20)

Magdeburger Developer Days 2018 - Das perfekte Anwendungsmodell
Magdeburger Developer Days 2018 - Das perfekte AnwendungsmodellMagdeburger Developer Days 2018 - Das perfekte Anwendungsmodell
Magdeburger Developer Days 2018 - Das perfekte Anwendungsmodell
 
DevOps im Konzern - Autonomie vs Betriebssicherheit (Continuous Lifecycle)
DevOps im Konzern - Autonomie vs Betriebssicherheit (Continuous Lifecycle)DevOps im Konzern - Autonomie vs Betriebssicherheit (Continuous Lifecycle)
DevOps im Konzern - Autonomie vs Betriebssicherheit (Continuous Lifecycle)
 
Developer Week 2019: Architekturen für .NET Core-Anwendungen
Developer Week 2019: Architekturen für .NET Core-AnwendungenDeveloper Week 2019: Architekturen für .NET Core-Anwendungen
Developer Week 2019: Architekturen für .NET Core-Anwendungen
 
.NET Core Architecture (UI)
.NET Core Architecture (UI).NET Core Architecture (UI)
.NET Core Architecture (UI)
 
Ist das Softwarearchitektur oder kann das weg?
Ist das Softwarearchitektur oder kann das weg?Ist das Softwarearchitektur oder kann das weg?
Ist das Softwarearchitektur oder kann das weg?
 
GUI & DESIGN 2017 - Das perfekte Anwendungsmodell. UIs für jedes Device!
GUI & DESIGN 2017 - Das perfekte Anwendungsmodell. UIs für jedes Device!GUI & DESIGN 2017 - Das perfekte Anwendungsmodell. UIs für jedes Device!
GUI & DESIGN 2017 - Das perfekte Anwendungsmodell. UIs für jedes Device!
 
Dev Day 2021 - Stephan Pirnbaum - Anwendungsmodernisierung
Dev Day 2021 - Stephan Pirnbaum - AnwendungsmodernisierungDev Day 2021 - Stephan Pirnbaum - Anwendungsmodernisierung
Dev Day 2021 - Stephan Pirnbaum - Anwendungsmodernisierung
 
Technologie und SEO: Cloud, Big Data und Mobile First angeschaut
Technologie und SEO: Cloud, Big Data und Mobile First angeschautTechnologie und SEO: Cloud, Big Data und Mobile First angeschaut
Technologie und SEO: Cloud, Big Data und Mobile First angeschaut
 
Langlebige Softwarearchitekturen - Der Umgang mit technischen Schulden
Langlebige Softwarearchitekturen - Der Umgang mit technischen SchuldenLanglebige Softwarearchitekturen - Der Umgang mit technischen Schulden
Langlebige Softwarearchitekturen - Der Umgang mit technischen Schulden
 
BATbern52 SBB zu Data Products und Knacknüsse
BATbern52 SBB zu Data Products und KnacknüsseBATbern52 SBB zu Data Products und Knacknüsse
BATbern52 SBB zu Data Products und Knacknüsse
 
Developer Week 2019: .NET, .NET Core und .NET Standard - Ein Richtungskompass
Developer Week 2019: .NET, .NET Core und .NET Standard - Ein RichtungskompassDeveloper Week 2019: .NET, .NET Core und .NET Standard - Ein Richtungskompass
Developer Week 2019: .NET, .NET Core und .NET Standard - Ein Richtungskompass
 
BASTA! 2017 Jubiläumskonferenz - CUIs & The Microsoft Bot Framework
BASTA! 2017 Jubiläumskonferenz - CUIs & The Microsoft Bot FrameworkBASTA! 2017 Jubiläumskonferenz - CUIs & The Microsoft Bot Framework
BASTA! 2017 Jubiläumskonferenz - CUIs & The Microsoft Bot Framework
 
Intranet 2.0 - Lösungen für Wissensmanagement und Zusammenarbeit
Intranet 2.0 - Lösungen für Wissensmanagement und ZusammenarbeitIntranet 2.0 - Lösungen für Wissensmanagement und Zusammenarbeit
Intranet 2.0 - Lösungen für Wissensmanagement und Zusammenarbeit
 
Codec Deutschland - Unternehmensbroschüre
Codec Deutschland - UnternehmensbroschüreCodec Deutschland - Unternehmensbroschüre
Codec Deutschland - Unternehmensbroschüre
 
Die Architektur, die man kann
Die Architektur, die man kannDie Architektur, die man kann
Die Architektur, die man kann
 
#ADC 2016 - Roslyn & Visual Studio Extensions
#ADC 2016 - Roslyn & Visual Studio Extensions#ADC 2016 - Roslyn & Visual Studio Extensions
#ADC 2016 - Roslyn & Visual Studio Extensions
 
SPSD2014 - Herausforderung: Produktive SharePoint Collaboration Plattform
SPSD2014 - Herausforderung: Produktive SharePoint Collaboration PlattformSPSD2014 - Herausforderung: Produktive SharePoint Collaboration Plattform
SPSD2014 - Herausforderung: Produktive SharePoint Collaboration Plattform
 
Cloud Databases, Developer Week Nuernberg 2014
Cloud Databases, Developer Week Nuernberg 2014Cloud Databases, Developer Week Nuernberg 2014
Cloud Databases, Developer Week Nuernberg 2014
 
Griechische Philosophie für moderne Softwareentwicklung
Griechische Philosophie für moderne SoftwareentwicklungGriechische Philosophie für moderne Softwareentwicklung
Griechische Philosophie für moderne Softwareentwicklung
 
DNUG 36 2012_Konferenzbroschuere
DNUG 36 2012_KonferenzbroschuereDNUG 36 2012_Konferenzbroschuere
DNUG 36 2012_Konferenzbroschuere
 

Mehr von Johannes Dienst

Developer Relations Metrics - A Humble Guide
Developer Relations Metrics - A Humble GuideDeveloper Relations Metrics - A Humble Guide
Developer Relations Metrics - A Humble Guide
Johannes Dienst
 
Real Cross-Platform Workflow UI Automation_JohannesDienst.pdf
Real Cross-Platform Workflow UI Automation_JohannesDienst.pdfReal Cross-Platform Workflow UI Automation_JohannesDienst.pdf
Real Cross-Platform Workflow UI Automation_JohannesDienst.pdf
Johannes Dienst
 
The Future of UI Testing - Challenges in UI Automation
The Future of UI Testing - Challenges in UI AutomationThe Future of UI Testing - Challenges in UI Automation
The Future of UI Testing - Challenges in UI Automation
Johannes Dienst
 
Managed Cloud to GitOps: Deploying Several Client Clusters
Managed Cloud to GitOps: Deploying Several Client ClustersManaged Cloud to GitOps: Deploying Several Client Clusters
Managed Cloud to GitOps: Deploying Several Client Clusters
Johannes Dienst
 
Stoizismus - Praktische Philosophie für den IT-Alltag (Pecha Kucha)
Stoizismus - Praktische Philosophie für den IT-Alltag (Pecha Kucha)Stoizismus - Praktische Philosophie für den IT-Alltag (Pecha Kucha)
Stoizismus - Praktische Philosophie für den IT-Alltag (Pecha Kucha)
Johannes Dienst
 
Managed Cloud to GitOps: Deploying Several Client Clusters
Managed Cloud to GitOps: Deploying Several Client ClustersManaged Cloud to GitOps: Deploying Several Client Clusters
Managed Cloud to GitOps: Deploying Several Client Clusters
Johannes Dienst
 
Lessons Learned Using arc42 in a Real DevOps Team
Lessons Learned Using arc42 in a Real DevOps TeamLessons Learned Using arc42 in a Real DevOps Team
Lessons Learned Using arc42 in a Real DevOps Team
Johannes Dienst
 
Work efficiently with Architecture Decision Records
Work efficiently with Architecture Decision RecordsWork efficiently with Architecture Decision Records
Work efficiently with Architecture Decision Records
Johannes Dienst
 
The Dev, The Ops, And The Team: What works in a DevOps Team?
The Dev, The Ops, And The Team: What works in a DevOps Team?The Dev, The Ops, And The Team: What works in a DevOps Team?
The Dev, The Ops, And The Team: What works in a DevOps Team?
Johannes Dienst
 
Effizient arbeiten mit Architecture Decision Records (ADR)
Effizient arbeiten mit Architecture Decision Records (ADR)Effizient arbeiten mit Architecture Decision Records (ADR)
Effizient arbeiten mit Architecture Decision Records (ADR)
Johannes Dienst
 
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
Johannes Dienst
 
Spock vs Supermutanten: Spezifikationstesten trifft Mutationstesten
Spock vs Supermutanten: Spezifikationstesten trifft MutationstestenSpock vs Supermutanten: Spezifikationstesten trifft Mutationstesten
Spock vs Supermutanten: Spezifikationstesten trifft Mutationstesten
Johannes Dienst
 
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
Johannes Dienst
 
Pride & Prejudice: Teambildung & Motivation im agilen Umfeld
Pride & Prejudice: Teambildung & Motivation im agilen UmfeldPride & Prejudice: Teambildung & Motivation im agilen Umfeld
Pride & Prejudice: Teambildung & Motivation im agilen Umfeld
Johannes Dienst
 
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
Johannes Dienst
 
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
Johannes Dienst
 
Und wer testet die Tests? - Mutationstesten mit PIT
Und wer testet die Tests? - Mutationstesten mit PITUnd wer testet die Tests? - Mutationstesten mit PIT
Und wer testet die Tests? - Mutationstesten mit PIT
Johannes Dienst
 
Type Script 3.x - Was war. Was kommt!
Type Script 3.x - Was war. Was kommt!Type Script 3.x - Was war. Was kommt!
Type Script 3.x - Was war. Was kommt!
Johannes Dienst
 
Clean Code ist doch einfach... Qualität ist schwierig!
Clean Code ist doch einfach... Qualität ist schwierig!Clean Code ist doch einfach... Qualität ist schwierig!
Clean Code ist doch einfach... Qualität ist schwierig!
Johannes Dienst
 

Mehr von Johannes Dienst (19)

Developer Relations Metrics - A Humble Guide
Developer Relations Metrics - A Humble GuideDeveloper Relations Metrics - A Humble Guide
Developer Relations Metrics - A Humble Guide
 
Real Cross-Platform Workflow UI Automation_JohannesDienst.pdf
Real Cross-Platform Workflow UI Automation_JohannesDienst.pdfReal Cross-Platform Workflow UI Automation_JohannesDienst.pdf
Real Cross-Platform Workflow UI Automation_JohannesDienst.pdf
 
The Future of UI Testing - Challenges in UI Automation
The Future of UI Testing - Challenges in UI AutomationThe Future of UI Testing - Challenges in UI Automation
The Future of UI Testing - Challenges in UI Automation
 
Managed Cloud to GitOps: Deploying Several Client Clusters
Managed Cloud to GitOps: Deploying Several Client ClustersManaged Cloud to GitOps: Deploying Several Client Clusters
Managed Cloud to GitOps: Deploying Several Client Clusters
 
Stoizismus - Praktische Philosophie für den IT-Alltag (Pecha Kucha)
Stoizismus - Praktische Philosophie für den IT-Alltag (Pecha Kucha)Stoizismus - Praktische Philosophie für den IT-Alltag (Pecha Kucha)
Stoizismus - Praktische Philosophie für den IT-Alltag (Pecha Kucha)
 
Managed Cloud to GitOps: Deploying Several Client Clusters
Managed Cloud to GitOps: Deploying Several Client ClustersManaged Cloud to GitOps: Deploying Several Client Clusters
Managed Cloud to GitOps: Deploying Several Client Clusters
 
Lessons Learned Using arc42 in a Real DevOps Team
Lessons Learned Using arc42 in a Real DevOps TeamLessons Learned Using arc42 in a Real DevOps Team
Lessons Learned Using arc42 in a Real DevOps Team
 
Work efficiently with Architecture Decision Records
Work efficiently with Architecture Decision RecordsWork efficiently with Architecture Decision Records
Work efficiently with Architecture Decision Records
 
The Dev, The Ops, And The Team: What works in a DevOps Team?
The Dev, The Ops, And The Team: What works in a DevOps Team?The Dev, The Ops, And The Team: What works in a DevOps Team?
The Dev, The Ops, And The Team: What works in a DevOps Team?
 
Effizient arbeiten mit Architecture Decision Records (ADR)
Effizient arbeiten mit Architecture Decision Records (ADR)Effizient arbeiten mit Architecture Decision Records (ADR)
Effizient arbeiten mit Architecture Decision Records (ADR)
 
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
 
Spock vs Supermutanten: Spezifikationstesten trifft Mutationstesten
Spock vs Supermutanten: Spezifikationstesten trifft MutationstestenSpock vs Supermutanten: Spezifikationstesten trifft Mutationstesten
Spock vs Supermutanten: Spezifikationstesten trifft Mutationstesten
 
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
 
Pride & Prejudice: Teambildung & Motivation im agilen Umfeld
Pride & Prejudice: Teambildung & Motivation im agilen UmfeldPride & Prejudice: Teambildung & Motivation im agilen Umfeld
Pride & Prejudice: Teambildung & Motivation im agilen Umfeld
 
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
 
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
Leichtgewichtige Softwarearchitektur mit Architecture Decision Records und Qu...
 
Und wer testet die Tests? - Mutationstesten mit PIT
Und wer testet die Tests? - Mutationstesten mit PITUnd wer testet die Tests? - Mutationstesten mit PIT
Und wer testet die Tests? - Mutationstesten mit PIT
 
Type Script 3.x - Was war. Was kommt!
Type Script 3.x - Was war. Was kommt!Type Script 3.x - Was war. Was kommt!
Type Script 3.x - Was war. Was kommt!
 
Clean Code ist doch einfach... Qualität ist schwierig!
Clean Code ist doch einfach... Qualität ist schwierig!Clean Code ist doch einfach... Qualität ist schwierig!
Clean Code ist doch einfach... Qualität ist schwierig!
 

Rock Solid Software Architecture with ADRs, arc42 and Microsites

  • 1. Rock Solid Software Architecture Mit ADRs, arc42 und Microsites DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller
  • 2. Digitalpartner der Deutschen Bahn DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 2
  • 3. Eine Architektur soll entworfen werden DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 3 Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
  • 4. Eine Architektur soll entworfen werden DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 4 Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
  • 5. Starten wir mit einem Vertrag! DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 5 Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
  • 6. Starten wir mit einem Vertrag! DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 6 Auftrag Aktuelle Situation? Problemstellung? Randbedingungen? In Scope / out of Scope? Ansprechpartner & Stakeholer? 1) Einführung und Ziele Aufgabenstellung Qualitätsziele (Top 3) Stakeholder 2) Randbedingungen 3) Kontextabgrenzung Fachlicher Kontext Technischer Kontext
  • 7. Eine Architektur soll entworfen werden DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 7 1. Einführung & Ziele 3. Kontextabgrenzung 2. Randbedingungen
  • 8. Wie gehts weiter DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 8 1. Einführung & Ziele 2. Randbedingungen 3. Kontextabgrenzung 10. Qualitätsanforderungen
  • 9. Qualitätsattribute DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 9 Software Qualitäts- kriterien ISO 25010 Wartbarkeit Kompatibilität Portierbarkeit Performance Funktionalität Zuverlässigkeit Sicherheit Usability
  • 10. Qualitätsattribute wie ermitteln DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 10 Sicherheit Nicht manipulierbar Integrität Datenschutz Sichere Administration Authentizierbarkeit
  • 11. Ergebnis: Gewichteter Qualitätsbaum DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 11 Nicht manipulierbar Integrität Datenschutz Erlernbarkeit Schutz vor Bedienungsfehlern Usability Sicherheit 1 3 4 2 5
  • 12. Qualitätsszenarien Allgemein DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 12 Stimulus Antwort Artefakt Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
  • 13. Qualitätsszenarien: Beispiel DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 13 Barkeit (Illity) Fähigkeit Stimulus Systemzustand Messkriterium Performanz Erhaltung der Funktionsfähigkeit auch bei 20 parallelen Benutzern Bis zu 20 Benutzer lesen gleichzeitig über die API Daten aus Normalzustand API antwortet innerhalb von 100 ms in 90% der Anfragen
  • 14. Wie gehts weiter DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 14 1. Einführung & Ziele 2. Randbedingungen 3. Kontextabgrenzung 10. Qualitätsanforderungen 9. Architektur- entscheidungen
  • 15. Erarbeitung von Architekturentscheidungen DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 15 ADR-032: Kostenreduzierung bei ölhaltigen Zusätzen Wir setzen in der Rezeptur des Schokoriegels Palmfett ein. Status Offen Problemstellung & Kontext Die Weltmarktpreise von Kakaoprodukten und Butterfett sind stark gestiegen. Zudem gibt es einen ruinösen Verdrängungswettbewerb zwischen den Herstellen von Schokoriegeln. Beides führt zu einer Minderung unserer Marge. Wir können nicht mehr wirtschaftlich produzieren.
  • 16. Erarbeitung von Architekturentscheidungen (2) DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 16 Konsequenzen • Die Produktion unserer Schokoriegel ist wirtschaftlich möglich • In der Öffentlichkeit ist Palmfett in Verruf geraten. Es ist mit einem Shitstorm zu rechnen • Die Produktionsanlagen müssen umgestellt werden auf die veränderte Konsistenz der Schokomasse Alternativen Verkaufspreisanpassung nach oben Positiv: Wir können wirtschaftlich produzieren Negativ: Die Konkurrenz kann uns unterbieten Kakaobutter und Butterfett durch Palmfett ersetzen Positiv: Produktionskosten sinken. Die Produktion ist wirtschaflich Negativ: Umbau der Produktionsanlagen notwendig. Palmfett ist umweltschädlich. Es ist damit zu rechnen, dass einige Kunden unsere Schokoriegel nicht mehr kaufen werden
  • 17. Erarbeitung von Architekturentscheidungen (3) DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 17 Qualitätsanforderungen Wirtschaftlichkeit Effizienz Zukunftsfähigkeit Qualitätsszenarien S-07 S-42
  • 18. Erarbeiten des ADRs im Docs-as-Code Ansatz DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 18 main adr-042 Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
  • 19. Jetzt erst die Lösung dokumentieren DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 19 1. Einführung & Ziele 2. Randbedingungen 3. Kontextabgrenzung 6. Laufzeitsicht 10. Qualitätsanforderungen 11. Risiken & Technische Schulden 12. Glossar 7. Verteilungssicht 4. Lösungsstrategie 5. Bausteinsicht 9. Architektur- entscheidungen 8. Querschnittliche Konzepte
  • 20. Ablage im Repo Versionier- /Diffbar Synchrone Auslieferung Offlinefähig Teil des Build- Prozesses Generierung/ Automatisierung Flexible Ausgabe Nähe zum Sourcecode 1 Documentation as Code DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
  • 21. Microsite DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 22 Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
  • 22. Warum Microsite? DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 23 Zugänglich Schnell und zuverlässig Leicht bedienbar Auffindbar Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
  • 23. Wieviel Aufwand steckt da eigentlich dahinter? 24 DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller
  • 24. Continuous Documentation DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 25 Automatisiert erstellen Regelmäßig ausliefern Feedback integrieren Stetig ergänzen Reviewen Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
  • 25. Architekturreview kann kommen DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 26 Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
  • 26. Architekturreview kann kommen: Modulare Dokumentation DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 27 arc42- master.adoc kapitel2.adoc kapitel1.adoc kapitel3.adoc … Icons made by Freepik, Good Ware, Sprang and Smashicons from www.flaticon.com
  • 27. DB Systel GmbH | Johannes Dienst @JohannesDienst | Jan Kohlhaas 28 Welche zwei Fragen sind noch offen? Johannes.Dienst@deutschebahn.com @JohannesDienst Ralf.D.Mueller@deutschebahn.com @RalfDMueller