Slide 1

Slide 1 text

Rock Solid Software Architecture Mit ADRs, arc42 und Microsites DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller

Slide 2

Slide 2 text

Digitalpartner der Deutschen Bahn DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller 2

Slide 3

Slide 3 text

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

Slide 4

Slide 4 text

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

Slide 5

Slide 5 text

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

Slide 6

Slide 6 text

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

Slide 7

Slide 7 text

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

Slide 8

Slide 8 text

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

Slide 9

Slide 9 text

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

Slide 10

Slide 10 text

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

Slide 11

Slide 11 text

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

Slide 12

Slide 12 text

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

Slide 13

Slide 13 text

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

Slide 14

Slide 14 text

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

Slide 15

Slide 15 text

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.

Slide 16

Slide 16 text

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

Slide 17

Slide 17 text

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

Slide 18

Slide 18 text

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

Slide 19

Slide 19 text

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

Slide 20

Slide 20 text

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

Slide 21

Slide 21 text

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

Slide 22

Slide 22 text

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

Slide 23

Slide 23 text

Wieviel Aufwand steckt da eigentlich dahinter? 24 DB Systel GmbH | Johannes Dienst @JohannesDienst | Ralf D. Müller @RalfDMueller

Slide 24

Slide 24 text

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

Slide 25

Slide 25 text

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

Slide 26

Slide 26 text

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

Slide 27

Slide 27 text

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