SlideShare ist ein Scribd-Unternehmen logo

Rock Solid Software Architecture with ADRs, arc42 and Microsites

Johannes Dienst
Johannes Dienst
Johannes DienstSoftwarearchitect / Clean Coder um DB Systel GmbH

Das arc42-Architektur-Template verleitet dazu, alle Kapitel von oben nach unten durchzuarbeiten. Ein Architektur-Review offenbart aber eine sinnvollere Herangehensweise, um Softwarearchitektur zu erarbeiten. Dabei werden zuerst In-Scope sowie Out-Of-Scope des Vorhabens definiert und anschließend Qualitätsattribute aufgenommen, um schließlich konkrete Qualitätsszenarien abzuleiten. Die Dokumentation dieser Ergebnisse im arc42 stellt uns vor viele Aufgaben und Fragestellungen: Wie erarbeite Architekturentscheidungen, Qualitätsattribute und Qualitätsszenarien? Und wie dokumentiere ich diese effizient? In diesem Vortrag zeigen wir anhand des Docs-as-Code-Ansatzes, wie wir mit dem arc42-Template effizient arbeiten und die Dokumentation als Microsite jedem zur Verfügung gestellt wird. Durch diese Vorgehensweise ist es effizient möglich, eine Architekturdokumentation zu erstellen, die jeder Review standhält.

Rock Solid Software Architecture with ADRs, arc42 and Microsites

1 von 27
Downloaden Sie, um offline zu lesen
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

Recomendados

Code Refactoring
Code RefactoringCode Refactoring
Code Refactoringkim.mens
 
Pepo maskani ya waumini. swahili (kiswahili)
Pepo maskani ya waumini. swahili (kiswahili)Pepo maskani ya waumini. swahili (kiswahili)
Pepo maskani ya waumini. swahili (kiswahili)HarunyahyaSwahili
 
Subgraph Isomorphism - NP Proof / Prova NP Isomorfismo em Subgrafo
Subgraph Isomorphism  - NP Proof / Prova NP Isomorfismo em SubgrafoSubgraph Isomorphism  - NP Proof / Prova NP Isomorfismo em Subgrafo
Subgraph Isomorphism - NP Proof / Prova NP Isomorfismo em SubgrafoHugo Santos
 
1 preparo de curvas analíticas
1 preparo de curvas analíticas1 preparo de curvas analíticas
1 preparo de curvas analíticasUFSJ
 
Fisica 1 exercicios gabarito 05
Fisica 1 exercicios gabarito 05Fisica 1 exercicios gabarito 05
Fisica 1 exercicios gabarito 05comentada
 
Matriz transposta, Matriz Simétrica, Matriz Conjugada
Matriz transposta, Matriz Simétrica, Matriz ConjugadaMatriz transposta, Matriz Simétrica, Matriz Conjugada
Matriz transposta, Matriz Simétrica, Matriz Conjugadanumerosnamente
 

Más contenido relacionado

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

Dev Day Johannes Dienst.pdf
Dev Day Johannes Dienst.pdfDev Day Johannes Dienst.pdf
Dev Day Johannes Dienst.pdfCarolinaMatthies
 
Lessons Learned: arc42 in einem echten DevOps Team
Lessons Learned: arc42 in einem echten DevOps TeamLessons Learned: arc42 in einem echten DevOps Team
Lessons Learned: arc42 in einem echten DevOps TeamJohannes Dienst
 
Von Managed-Cloud zu GitOps - Multi Client-Cluster Deployments
Von Managed-Cloud zu GitOps - Multi Client-Cluster DeploymentsVon Managed-Cloud zu GitOps - Multi Client-Cluster Deployments
Von Managed-Cloud zu GitOps - Multi Client-Cluster DeploymentsJohannes Dienst
 
Everything as Code: Pipeline, Infrastructure, Configuration, Documentation
Everything as Code: Pipeline, Infrastructure, Configuration, DocumentationEverything as Code: Pipeline, Infrastructure, Configuration, Documentation
Everything as Code: Pipeline, Infrastructure, Configuration, DocumentationJohannes Dienst
 
Architectures for .Net Core Applications
Architectures for .Net Core ApplicationsArchitectures for .Net Core Applications
Architectures for .Net Core ApplicationsRobin Sedlaczek
 
DevOps im Konzern: Autonomie vs Betriebssicherheit
DevOps im Konzern: Autonomie vs BetriebssicherheitDevOps im Konzern: Autonomie vs Betriebssicherheit
DevOps im Konzern: Autonomie vs BetriebssicherheitJohannes Dienst
 
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 AnwendungsmodellRobin 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-AnwendungenRobin 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 - AnwendungsmodernisierungDevDay 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 angeschautRalf 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 SchuldenCarola Lilienthal
 
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 RichtungskompassRobin 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 FrameworkRobin 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 ZusammenarbeitCommunardo GmbH
 
Codec Deutschland - Unternehmensbroschüre
Codec Deutschland - UnternehmensbroschüreCodec Deutschland - Unternehmensbroschüre
Codec Deutschland - UnternehmensbroschüreCodec Deutschland
 

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

Dev Day Johannes Dienst.pdf
Dev Day Johannes Dienst.pdfDev Day Johannes Dienst.pdf
Dev Day Johannes Dienst.pdf
 
Lessons Learned: arc42 in einem echten DevOps Team
Lessons Learned: arc42 in einem echten DevOps TeamLessons Learned: arc42 in einem echten DevOps Team
Lessons Learned: arc42 in einem echten DevOps Team
 
Von Managed-Cloud zu GitOps - Multi Client-Cluster Deployments
Von Managed-Cloud zu GitOps - Multi Client-Cluster DeploymentsVon Managed-Cloud zu GitOps - Multi Client-Cluster Deployments
Von Managed-Cloud zu GitOps - Multi Client-Cluster Deployments
 
Everything as Code: Pipeline, Infrastructure, Configuration, Documentation
Everything as Code: Pipeline, Infrastructure, Configuration, DocumentationEverything as Code: Pipeline, Infrastructure, Configuration, Documentation
Everything as Code: Pipeline, Infrastructure, Configuration, Documentation
 
Architectures for .Net Core Applications
Architectures for .Net Core ApplicationsArchitectures for .Net Core Applications
Architectures for .Net Core Applications
 
DevOps im Konzern: Autonomie vs Betriebssicherheit
DevOps im Konzern: Autonomie vs BetriebssicherheitDevOps im Konzern: Autonomie vs Betriebssicherheit
DevOps im Konzern: Autonomie vs Betriebssicherheit
 
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
 
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
 

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 GuideJohannes 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.pdfJohannes 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 AutomationJohannes 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 ClustersJohannes Dienst
 
Griechische Philosophie für moderne Softwareentwicklung
Griechische Philosophie für moderne SoftwareentwicklungGriechische Philosophie für moderne Softwareentwicklung
Griechische Philosophie für moderne SoftwareentwicklungJohannes 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 TeamJohannes Dienst
 
Work efficiently with Architecture Decision Records
Work efficiently with Architecture Decision RecordsWork efficiently with Architecture Decision Records
Work efficiently with Architecture Decision RecordsJohannes 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 MutationstestenJohannes 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 UmfeldJohannes 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 PITJohannes 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
 
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
 
Griechische Philosophie für moderne Softwareentwicklung
Griechische Philosophie für moderne SoftwareentwicklungGriechische Philosophie für moderne Softwareentwicklung
Griechische Philosophie für moderne Softwareentwicklung
 
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