Slide 1

Slide 1 text

Strategy Mapping in der Software-Entwicklung Wardley Maps für Software Architekten @Tom-Asel www.tom-asel.de

Slide 2

Slide 2 text

Lagebewusstsein, das „Zustand, in dem aktuelle Situation, Umgebung und Einflussfaktoren hinreichend bekannt sind um fundierte Entscheidungen treffen zu können.“ Bild: Battle of Antietam, Md., LoC https://www.loc.gov/item/gvhs01.vhs00259/

Slide 3

Slide 3 text

Wie kommen wir von A nach B?

Slide 4

Slide 4 text

Wie kommen wir von A nach B?

Slide 5

Slide 5 text

Wie kommen wir von A nach B?

Slide 6

Slide 6 text

Wie kommen wir von A nach B? 17 min 3,3 km 11 min 5,2 km

Slide 7

Slide 7 text

Wardley Maps als visuelles Werkzeug einsetzen • Annahmen hinterfragen • Entscheidungen visualisieren • Zusammenhänge erkennen • Chancen und Risiken erkennen Strategien planen Reflexion Bild:[December 21, 1944], HQ Twelfth Army Group situation map https://www.loc.gov/item/2004630293

Slide 8

Slide 8 text

Strategische Entscheidungen in der Software-Entwicklung Lösungswege sind Strategien! Entwickler PL Management Architekten Fixes / Workarounds Technologie- auswahl Architekturstile und Patterns Datenformate Vorgehens- modelle Team- Zusammensetzung Make or Buy von Komponenten und Systemen

Slide 9

Slide 9 text

! Strategische Entscheidungen bewusst treffen DOs: ● Entscheidungen transparent machen ● Annahmen hinterfragen ● Diskussion ermöglichen ● Gemeinsames Verständnis schaffen DON’Ts ● Kein implizites Akzeptieren ● Bauchentscheidungen vermeiden

Slide 10

Slide 10 text

Visibility Evolution Wardley Map einer Systemlandschaft + UI Optimierung + Performance + Containerisierung Know-How, Manpower + CaaS Build & Deploy, Networking Kunde CRM Cloud SAP Rechenzentrum Kundenportal (Web) Vertrags- führung App Backend

Slide 11

Slide 11 text

Evolution und Bewegung Evolution Uncharted Domain Industrialised Domain Chaotisch Unsicher Unvorhersagbar Wechselhaft Unähnlich Aufregend Von zukünftigem Wert Ungewöhnlich Außergewöhnlich Unzureichend verstanden Experimentell Differenzierbar Wettbewerbsvorteil Geordnet Bekannt Messbar Stabil Standard Selbstverständlich Geringe Marge Unentbehrlich Allgegenwärtig Festgelegt Massenfertigung Wirtschaftlich effizient Betriebsausgabe Vergangenheit Zukunft

Slide 12

Slide 12 text

Evolution und Bewegung Evolution Uncharted Domain Industrialised Domain Chaotisch Unsicher Unvorhersagbar Wechselhaft Unähnlich Aufregend Von zukünftigem Wert Ungewöhnlich Außergewöhnlich Unzureichend verstanden Experimentell Differenzierbar Wettbewerbsvorteil Geordnet Bekannt Messbar Stabil Standard Selbstverständlich Geringe Marge Unentbehrlich Allgegenwärtig Festgelegt Massenfertigung Wirtschaftlich effizient Betriebsausgabe Vergangenheit Zukunft Genesis Custom Product (+Rental) Commodity (+Utility)

Slide 13

Slide 13 text

Visibility Evolution Uncharted Domain Industrialised Domain Wardley Map einer Systemlandschaft + UI Optimierung + Performance + Containerisierung Know-How, Manpower + CaaS Build & Deploy, Networking Kunde CRM Cloud SAP Rechenzentrum Kundenportal (Web) Vertrags- führung App Backend Genesis Custom Product (+Rental) Commodity (+Utility)

Slide 14

Slide 14 text

Architekturbausteine auf einer Wardley Map? https://www.uml-diagrams.org https://alistair.cockburn.us/hexagonal-architecture https://twitter.com/NathanLee/status/890136808109027328

Slide 15

Slide 15 text

Architekturbeispiel HTTP JMS JDBC DB Web-UI Vertrags- führung Message Broker AI-Advisor Contract-System Adapter REST API Persistence- Adapter Customer- Management CRM- Adapter Authorization

Slide 16

Slide 16 text

Visibility Evolution Mapping von Architekturbausteinen (1/2) Web-UI Vertrags- führung Authorization Message Broker AI-Advisor Contract-System Adapter Development-Team REST API

Slide 17

Slide 17 text

Visibility Evolution Mapping von Architekturbausteinen (2/2) + testing + robustness Web-UI Vertrags- führung Authorization Message Broker Zu wenig Typescript Know-How! AI-Advisor Contract-System Adapter Development-Team REST API Chance Risiko

Slide 18

Slide 18 text

Wissen mappen? Anwendungsfall

Slide 19

Slide 19 text

Evolution und Bewegung Uncharted Domain Industrialised Domain Chaotisch Unsicher Unvorhersagbar Wechselhaft Unähnlich Aufregend Von zukünftigem Wert Ungewöhnlich Außergewöhnlich Unzureichend verstanden Experimentell Differenzierbar Wettbewerbsvorteil Geordnet Bekannt Messbar Stabil Standard Selbstverständlich Geringe Marge Unentbehrlich Allgegenwärtig Festgelegt Massenfertigung Wirtschaftlich effizient Betriebsausgabe Vergangenheit Zukunft Genesis Novel Unmodelled Concept Experimental Custom Emerging Divergent Hypothesis Usable Product (+Rental) Good Convergent Theory Efficient Commodity (+Utility) Best Modelled Accepted Sustainable Planning Evolution Activities Practices Data Knowledge Kontextspez.

Slide 20

Slide 20 text

Visibility Evolution Uncharted Domain Industrialised Domain Efficient Usable Experimental Map: Wie gut verstehen wir die Architektur-Bausteine? Web-UI Vertrags- führung Authorization Message Broker AI-Advisor Contract-System Adapter Development-Team REST API Sustainable Planning Kontext-spezifische Evolution-Skala

Slide 21

Slide 21 text

Visibility Evolution Uncharted Domain Industrialised Domain Map: Welche Architekturbausteine benötigen Aufmerksamkeit? Web-UI Vertrags- führung Authorization Message Broker AI-Advisor Contract-System Adapter Development-Team REST API Area of Interest: Genauer Betrachten! Efficient Usable Experimental Sustainable Planning

Slide 22

Slide 22 text

Visibility Evolution Uncharted Domain Industrialised Domain Map: Welche Architekturbausteine benötigen Aufmerksamkeit? Web-UI Vertrags- führung Authorization AI-Advisor Development-Team Erkenntnis: Wichtig, aber Unbefriedigende Reife! Aspekt Umsetzung Fachprozess Efficient Usable Experimental Sustainable Planning

Slide 23

Slide 23 text

Visibility Evolution Uncharted Domain Industrialised Domain Map: Welche Architekturbausteine benötigen Aufmerksamkeit? Web-UI Vertrags- führung Development-Team Aspekt Umsetzung Fachprozess Efficient Usable Experimental Sustainable Planning

Slide 24

Slide 24 text

Visibility Evolution Uncharted Domain Industrialised Domain Map: Ausgangslage für Strategie-Entwicklung Web-UI Vertrags- führung Development-Team Efficient Usable Experimental Sustainable Planning

Slide 25

Slide 25 text

Visibility Evolution Uncharted Domain Industrialised Domain Map: Welches Zielbild wird angestrebt? Web-UI Vertrags- führung Development-Team Technologieverständnis fehlt! Expertenwissen zu Fachabläufen nicht vorhanden! Wissen über Produktplattform fehlt! Efficient Usable Experimental Sustainable Planning

Slide 26

Slide 26 text

Visibility Evolution Uncharted Domain Industrialised Domain Fokus! Eigene Map! Map: Welches Zielbild wird angestrebt? Web-UI Vertrags- führung Development-Team Technologieverständnis fehlt! Expertenwissen zu Fachabläufen nicht vorhanden! Wissen über Produktplattform fehlt! Efficient Usable Experimental Sustainable Planning

Slide 27

Slide 27 text

Visibility Evolution Uncharted Domain Industrialised Domain Good Product Emerging Custom Novel Genesis Map: Welche Bewegung führen wir aus? (Strategie) Vertrags- führung Development-Team Best Commodity Fachprozess Know-How Verständnis der Platform Hersteller- Doku Contracting- Platform Wissen über Produktplattform fehlt! Expertenwissen zu Fachabläufen nicht vorhanden! Efficient Usable Experimental Sustainable Planning

Slide 28

Slide 28 text

Visibility Evolution Uncharted Domain Industrialised Domain Good Product Emerging Custom Novel Genesis Map: Welche Bewegung führen wir aus? (Strategie) Vertrags- führung Development-Team Best Commodity Fachprozess Know-How Verständnis der Platform Hersteller- Doku Contracting- Platform Wissen über Produktplattform fehlt! Expertenwissen zu Fachabläufen nicht vorhanden! + Einarbeitung + Workshop mit Hersteller + Angemessene Doku einfordern + Cross-Functional Team mit Fachexperten Efficient Usable Experimental Sustainable Planning

Slide 29

Slide 29 text

Visibility Evolution Uncharted Domain Industrialised Domain Good Product Emerging Custom Novel Genesis Map: Bessere Ausgangslage für den nächsten Zug Vertrags- führung Development-Team Best Commodity Contracting- Platform Verständnis der Platform Hersteller- Doku Fachprozess Know-How Efficient Usable Experimental Sustainable Planning

Slide 30

Slide 30 text

Anwendungsfall Stakeholder als Anker?

Slide 31

Slide 31 text

Visibility Evolution Uncharted Domain Industrialised Domain Stakeholder als Anker Web-UI Vertrags- führung Authorization Fachanwender AI-Advisor Efficient Usable Experimental Sustainable Planning Benutzbarkeit Funktionale Eignung tolle neue Funktion (noch) hohe Fehlerrate Leicht zu bedienen, einfache Einarbeitung Müssen korrekte ergebnisse liefern

Slide 32

Slide 32 text

Visibility Evolution Uncharted Domain Industrialised Domain Stakeholder als Anker Web-UI Vertrags- führung Authorization Fachanwender AI-Advisor Efficient Usable Experimental Sustainable Planning Benutzbarkeit Funktionale Eignung Browser Desktop Endpoint-Services Reaktionszeit, Fehlerrate könnte besser sein

Slide 33

Slide 33 text

Visibility Evolution Uncharted Domain Industrialised Domain Stakeholder als Anker Web-UI Vertrags- führung Authorization Fachanwender AI-Advisor Efficient Usable Experimental Sustainable Planning Benutzbarkeit Funktionale Eignung Browser Desktop Endpoint-Services Aufwendige Pflege neuer Tarifarten

Slide 34

Slide 34 text

Visibility Evolution Uncharted Domain Industrialised Domain Stakeholder als Anker Web-UI Vertrags- führung Authorization Fachanwender AI-Advisor Efficient Usable Experimental Sustainable Planning Benutzbarkeit Funktionale Eignung Browser Desktop Endpoint-Services tolle neue Funktion (noch) hohe Fehlerrate Leicht zu bedienen, einfache Einarbeitung Aufwendige Pflege neuer Tarifarten Müssen korrekte ergebnisse liefern Reaktionszeit, Fehlerrate könnte besser sein

Slide 35

Slide 35 text

Visibility Evolution Uncharted Domain Industrialised Domain Stakeholder als Anker Web-UI Vertrags- führung Authorization Message Broker AI-Advisor Contract-System Adapter Efficient Usable Experimental Sustainable Planning Development-Team Wartbarkeit REST API Ease-of-Development IDE Hardware/ Laptop OS

Slide 36

Slide 36 text

Visibility Evolution Uncharted Domain Industrialised Domain Stakeholder als Anker Web-UI Vertrags- führung Authorization Message Broker AI-Advisor Contract-System Adapter Efficient Usable Experimental Sustainable Planning Development-Team Wartbarkeit REST API Ease-of-Development IDE Hardware/ Laptop OS Wartungsaufwändig Infrastruktur, 3rd PArty

Slide 37

Slide 37 text

Web-UI Authorization Message Broker REST API Contract Handling Contract-System Adapter AI-Advisor Evolution Aggregation von Maps

Slide 38

Slide 38 text

Web-UI Authorization Message Broker REST API Contract Handling Contract-System Adapter AI-Advisor Evolution Ähnliche Einstufung Stark unterschiedliche Einschätzung Warum? Aggregation von Maps

Slide 39

Slide 39 text

Web-UI Authorization Message Broker REST API Contract Handling Contract-System Adapter AI-Advisor Evolution Aggregation von Maps Wo lohnen sich Investitionen?

Slide 40

Slide 40 text

Qualitätsmerkmale als Anker? Anwendungsfall

Slide 41

Slide 41 text

Visibility Stakeholder als Anker mit unterschiedlichen Qualitätsanforderungen (Needs) Kunde Architekt Developer Tester Benutzbarkeit Wartbarkeit Übertragbarkeit Testbarkeit Operator Zuverlässigkeit Funktionale Eignung Contracting System Architektur- Bausteine Infrastruktur

Slide 42

Slide 42 text

Visibility Stakeholder als Anker mit unterschiedlichen Qualitätsanforderungen (Needs) Kunde Architekt Developer Tester Benutzbarkeit Wartbarkeit Übertragbarkeit Testbarkeit Operator Zuverlässigkeit Funktionale Eignung Contracting System Architektur- Bausteine Infrastruktur Needs gelten für Alle Architekturbausteine Zur Erfüllung der Needs relevante Komponenten

Slide 43

Slide 43 text

? Evolution und Qualitätsmerkmale Können wir das mappen? Herausforderungen: ● Qualitätsmerkmale (Needs) gelten für alle Architekturbausteine ● Gewichtung variiert je User (Anchor) ● Relative Position schwierig bei mehreren Usern widerspruchsfrei darzustellen Qualitätsmerkmale als Anchor Eine Map je Merkmal ?

Slide 44

Slide 44 text

Visibility Evolution Uncharted Domain Industrialised Domain Mit dieser Map beschreiben wir, wie weit die Wartbarkeit einzelner Komponenten entwickelt ist Anchor: Wartbarkeit Good Emerging Novel Best Wartbarkeit Hohe Relevanz für Wartbarkeit Geringe Relevanz für Wartbarkeit

Slide 45

Slide 45 text

Visibility Evolution Uncharted Domain Industrialised Domain Anchor: Wartbarkeit Good Emerging Novel Best Wartbarkeit AI-Advisor Web-UI Contract- Handling Authorization Contract-System Adapter Message Broker REST-API Kein ML-Experte im Team + Abdeckung UI-Test erhöhen Wartbarkeit betrifft direkt alle Komponenten!

Slide 46

Slide 46 text

Visibility Evolution Uncharted Domain Industrialised Domain Anchor: Benutzbarkeit Good Emerging Novel Best Benutzbarkeit AI-Advisor Web-UI Contract- Handling Authorization REST-API

Slide 47

Slide 47 text

Visibility Evolution Uncharted Domain Industrialised Domain Anchor: Benutzbarkeit Good Emerging Novel Best Benutzbarkeit AI-Advisor Web-UI Contract- Handling Authorization REST-API + Einführung 2FA + Descriptive Response + Responsiveness verbessern KnowHow fehlt!

Slide 48

Slide 48 text

Visibility Evolution Uncharted Domain Industrialised Domain Anchor: Benutzbarkeit Good Emerging Novel Best Benutzbarkeit AI-Advisor Web-UI Contract- Handling Authorization REST-API + Einführung 2FA + Descriptive Response + Responsiveness verbessern KnowHow fehlt! Eine Änderung wird das Qualitätsmerkmal negativ Beeinflussen ⇒ DE-Evolution!

Slide 49

Slide 49 text

Evolution Map of Maps: Evolutionsgrad der Qualitätsmerkmale Funktionale Eignung Zuverlässigkeit Leistungseffizienz Wartbarkeit Benutzbarkeit Übertragbarkeit Konformität

Slide 50

Slide 50 text

! ● Evolution: Veränderung charakteristischer Eigenschaften, dazu zählen Qualitätsmerkmale ● Qualitätsmerkmale lassen sich spezifizieren und monitoren ● Metriken & Tools sind bekannt und etabliert Mapping von Qualitätsmerkmalen … ist nicht rein subjektiv!

Slide 51

Slide 51 text

The Strategy Cycle Wie geht es weiter? Wir sind hier! https://doctrine.wardleymaps.com/

Slide 52

Slide 52 text

Quelle und weiterführende Informationen ● “Das Buch”: https://medium.com/wardleymaps/on-being-lost-2ef5f05eb1ec ● Einführung und Events: https://learnwardleymapping.com/ ● Sammlung von Ressourcen list.wardleymaps.com ● Video: Evolution of Architectural Components in Software Systems https://www.youtube.com/watch?v=xsdvy9rsg_w

Slide 53

Slide 53 text

Tom Asel @Tom-Asel Tom Asel Tom Asel [email protected] +49 6201 2719238 www.tom-asel.de Kontakt