Slide 1

Slide 1 text

Evolutionäre Softwarequalität Markus Harrer Senior Consultant @feststelltaste 0 9 . 0 2 . 2 0 2 3 , v 1 . 0 , O O P 2 0 2 3 d i g i t a l

Slide 2

Slide 2 text

Software- system Thema: Evolutionäre Softwarequalität Wertschöpfungskette sichtbar Funktionale Eignung Zuverlässigkeit Benutzbarkeit Leistungseffizienz Sicherheit Wartbarkeit Kompatibilität Übertragbarkeit Genesis Custom Built Product Commodity Evolution Sichtbar für Business und Technik Nur für Technik sichtbar Nach diesem Vortrag verstehst du dieses Bild und kannst es zum Reflektieren über dein Softwaresystem und dessen weiteren Entwicklung verwenden.

Slide 3

Slide 3 text

Einführung

Slide 4

Slide 4 text

" Markus Harrer Senior Consultant Roth, BY, Deutschland Tools only find, people have to find out!" • Softwarearchitekturentwicklung und -bewertung • Softwaremodernisierung und -Rightsizing • Datenanalysen in der Softwareentwicklung Foundation & IMPROVE https://softwareanalytics.de https://feststelltaste.de/ Instructor http://aim42.github.io/ https://cards42.org/ Trainer

Slide 5

Slide 5 text

“All models are wrong, but some are useful.” George Box Disclaimer + Feedback very welcome

Slide 6

Slide 6 text

FINDING THE RIGHT BALANCE

Slide 7

Slide 7 text

Features Software- qualität FINDING THE RIGHT BALANCE

Slide 8

Slide 8 text

Features Software- qualität FINDING THE RIGHT BALANCE

Slide 9

Slide 9 text

Software- qualität Features FINDING THE RIGHT BALANCE

Slide 10

Slide 10 text

Software- qualität Features FINDING THE RIGHT BALANCE

Slide 11

Slide 11 text

FINDING THE RIGHT BALANCE Features Software- qualität MIT EVOLUTIONÄRER SOFTWAREQUALITÄT

Slide 12

Slide 12 text

Softwarequalität It‘s complicated

Slide 13

Slide 13 text

Was ist „Qualität“ in Software? Unter Softwarequalität versteht man die Gesamtheit der Merkmale und Merkmalswerte eines Softwareprodukts, die sich auf dessen Eignung beziehen, festgelegte oder vorausgesetzte Erfordernisse zu er üllen.“ Helmut Balzert Lehrbuch der Softwaretechnik

Slide 14

Slide 14 text

Funktionale Eignung System bietet Funktionalität, die den angegebenen und implizierten Bedürfnissen entspricht Funktionale Eignung System bietet Funktionalität, die den angegebenen und implizierten Bedürfnissen entspricht Benutzbarkeit System kann von festgelegten Benutzern verwendet werden, um vorgegebene Ziele zu erreichen Benutzbarkeit System kann von festgelegten Benutzern verwendet werden, um vorgegebene Ziele zu erreichen Wartbarkeit System kann modifiziert werden, um es zu verbessern, zu korrigieren oder an Änderungen anzupassen Wartbarkeit System kann modifiziert werden, um es zu verbessern, zu korrigieren oder an Änderungen anzupassen Leistungseffizienz System liefert angemessene Geschwindigkeit mit den bereitgestellten Ressourcen Leistungseffizienz System liefert angemessene Geschwindigkeit mit den bereitgestellten Ressourcen Sicherheit System schützt Informationen und Daten Sicherheit System schützt Informationen und Daten Übertragbarkeit System kann auf verschiedenen Umgebungen betrieben werden Übertragbarkeit System kann auf verschiedenen Umgebungen betrieben werden Zuverlässigkeit System führt Funktionen unter den festgelegten Umgebungen aus Zuverlässigkeit System führt Funktionen unter den festgelegten Umgebungen aus Kompatibilität System kann Informationen mit anderen Systemen austauschen Kompatibilität System kann Informationen mit anderen Systemen austauschen Qualitätsmerkmale nach ISO 25010

Slide 15

Slide 15 text

Angemessene Qualität

Slide 16

Slide 16 text

Angemessene Qualität klären Funktionale Eignung Leistungseffizienz Kompatibilität Benutzbarkeit Zuverlässigkeit Sicherheit Wartbarkeit Übertragbarkeit Benutzerin Entwickler Boss Wo gibt es unterschiedliche Sichtweisen? Wie kommen wir auf ein einheitliches Zielbild?

Slide 17

Slide 17 text

Angemessene Qualität stetig liefern Funktionale Eignung Leistungseffizienz Kompatibilität Benutzbarkeit Zuverlässigkeit Sicherheit Wartbarkeit Übertragbarkeit Qualitätsziele Softwarearchitektur Wo sind Ziele übererfüllt? Was müssen wir wann tun?

Slide 18

Slide 18 text

Wardley Maps to the rescue!

Slide 19

Slide 19 text

Unser Werkzeug: Wardley Maps „Evolvierende Strategielandkarten“ Erfinder: Simon Wardley Zweck: Über strategische Überlegungen gemeinsam kommunizieren können Zweck 2: Soll Unternehmensberater arbeitslos machen Lizenz: Creative Commons BY-SA 4.0

Slide 20

Slide 20 text

Genesis Custom Built Product Commodity Eine Wardley Map! Wertschöpfungskette sichtbar unsichtbar Fotos drucken Website Kundenmanagementsystem Betriebsplattform Rechenzentrum Rechenkapazität Strom Nutzer Fotos bearbeiten Fotos speichern Angelehnt an Simon Wardley, CC BY-SA 4.0 Lizenz Komponente Legende braucht Evolution Details (für heute) irrelevant

Slide 21

Slide 21 text

Genesis Custom Built Product Commodity Eine Wardley Map! Wertschöpfungskette sichtbar unsichtbar Fotos drucken Website Kundenmanagementsystem Betriebsplattform Rechenzentrum Rechenkapazität Strom Nutzer Fotos bearbeiten Fotos speichern Angelehnt an Simon Wardley, CC BY-SA 4.0 Lizenz Komponente Legende braucht Evolution Unser Fokus Unser Fokus

Slide 22

Slide 22 text

Genesis Custom Built Product Commodity Evolution nach Simon Wardley Stufen und Charakteristiken Evolution Software- system Software- system Typisch sind ständiges Andern, anders sein, Instabilität Typisch sind von Nutzern lernen, erste Gehversuche, erste Evidenz Typisch ist Differenzierung über Features Typisch sind Unverzichtbarkeit und operativer Vorteil Markt unbestimmt Markt im Kommen Markt wachsend Markt reif Nutzerwahrnehmung ist unterschiedlich: „verwirrt“, „spannend“, „überraschend“ Nutzerwahrnehmung ist entstehend: „Bleeding Edge“ Nutzerwahrnehmung ist erwartet, Fehler werden als negativ wahrgenommen Nutzerwahrnehmung ist „gebräuchlich“ (Commodity), Fehler nicht mehr erwartet Scheitern ist hoch, tolerierbar, unterstellt Scheitern ist beschränkt, nicht überraschend, aber enttäuschend Scheitern ist nicht toleriert, ständige Verbesserung erwartet Kein Scheitern wegen operativer Effizienz, Misserfolg überrascht Wertfokus ist hoher Wert für die spätere Zukunft Wertfokus ist Profitsuche und ROI Wertfokus ist hohe Profitabilität Wertfokus ist hohes Volumen bei sinkender Marge

Slide 23

Slide 23 text

Genesis Custom Built Product Commodity „Alles entwickelt sich durch den Wettbewerb von Angebot und Nachfrage“ – Simon Wardley Evolution Software- system Software- system Evolution nach Simon Wardley

Slide 24

Slide 24 text

Evolution nach Simon Wardley

Slide 25

Slide 25 text

Evolution nach Simon Wardley „Der Nachfragewettbewerb und der Wunsch der Konsumenten nach allem, was nützlich ist, einen Unterschied macht oder einen Vorteil verschafft, ist die Triebfeder für die Allgegenwärtigkeit.“ Nachfragewettbewerb Allgegenwertigkeit Zitat von Simon Wardley / Wardley Maps, CC BY-SA 4.0 license, frei übersetzt ins Deutsche

Slide 26

Slide 26 text

Evolution nach Simon Wardley „Der Wettbewerb auf der Angebotsseite und der Wunsch der Anbieter, den Konsumenten etwas Nützliches anzubieten, ist die treibende Kraft für die Vollständigkeit und Verbesserung des Nutzenbringenden.“ Nachfragewettbewerb Allgegenwertigkeit Angebotswettbewerb Gewissheit Zitat von Simon Wardley / Wardley Maps, CC BY-SA 4.0 license, frei übersetzt ins Deutsche

Slide 27

Slide 27 text

Evolution nach Simon Wardley Allgegenwertigkeit Nachfragewettbewerb Angebotswettbewerb Gewissheit Konzept der „Evolution“ und Zitat von Simon Wardley / Wardley Maps, CC BY-SA 4.0 license Genesis Custom Built Product Commodity „Alles entwickelt sich durch den Wettbewerb von Angebot und Nachfrage.“

Slide 28

Slide 28 text

Evolution und Softwarequalität Allgegenwertigkeit Nachfragewettbewerb Angebotswettbewerb Gewissheit Konzept der „Evolution“ von Simon Wardley / Wardley Maps, CC BY-SA 4.0 license Angebotswettbewerb Nachfragewettbewerb Genesis Custom Built Product Commodity Wartbarkeit Zuverlässigkeit Funktionale Eignung Übertragbarkeit Kompatibilität Leistungseffizienz Benutzbarkeit Sicherheit Wartbarkeit Zuverlässigkeit Funktionale Eignung Übertragbarkeit Kompatibilität Leistungseffizienz Benutzbarkeit Sicherheit Qualitätsmerkmale

Slide 29

Slide 29 text

Evolution und Softwarequalität Genesis Custom Built Product Commodity Evolution Funktionale Eignung Zuverlässigkeit Benutzbarkeit Leistungseffizienz Sicherheit Wartbarkeit Kompatibilität Übertragbarkeit

Slide 30

Slide 30 text

Evolution und Softwarequalität Funktionale Eignung Zuverlässigkeit Benutzbarkeit Leistungseffizienz Sicherheit Wartbarkeit Kompatibilität Übertragbarkeit Genesis Custom Built Product Commodity Evolution

Slide 31

Slide 31 text

Genesis Custom Built Product Commodity Evolution Funktionale Eignung Zuverlässigkeit Benutzbarkeit Leistungseffizienz Sicherheit Wartbarkeit Kompatibilität Übertragbarkeit Evolution und Softwarequalität

Slide 32

Slide 32 text

Genesis Custom Built Product Commodity Evolution Funktionale Eignung Zuverlässigkeit Benutzbarkeit Leistungseffizienz Sicherheit Was nützt das jetzt? Wartbarkeit Kompatibilität Übertragbarkeit Bewusstsein für anstehende Themen schaffen Software- system

Slide 33

Slide 33 text

Genesis Custom Built Product Commodity Evolution Funktionale Eignung Zuverlässigkeit Benutzbarkeit Leistungseffizienz Sicherheit Was nützt das jetzt? Wartbarkeit Kompatibilität Übertragbarkeit Software- system Herangehensweise infrage stellen

Slide 34

Slide 34 text

Genesis Custom Built Product Commodity Eine Wardley Map! (Wdh.) sichtbar unsichtbar Fotos drucken Website Kundenmanagementsystem Betriebsplattform Rechenzentrum Rechenkapazität Strom Nutzer Fotos bearbeiten Fotos speichern Angelehnt an Simon Wardley, CC BY-SA 4.0 Lizenz Komponente Legende braucht Evolution Unser Fokus Wertschöpfungskette

Slide 35

Slide 35 text

Nutzerin Besser zocken Neue Grafikkarte Shopping-App REST-Services Backend Datenbank Betriebsplattform Virtuelle Maschinen Hardware Strom sichtbar unsichtbar Wertschöpfungskette Wertvolle Bedürfnisse Komponente Legende braucht

Slide 36

Slide 36 text

Subjektive Bedürfnisse an Qualität Ergebnis der Auswertung von priorisierten Qualitätszielen Benutzbarkeit Funktionale Eignung Zuverlässigkeit Leistungseffizienz Wertschöpfungskette Nutzerin Wartbarkeit Zuverlässigkeit Funktionale Eignung Übertragbarkeit Entwickler … … Funktionale Eignung Benutzbarkeit Zuverlässigkeit Sicherheit … Boss sichtbar * *Ordnung entspricht der gemittelten Priorisierungen der Qualitätszielen aus 21 Fallstudien, welche in Softwarearchitekturtrainings bearbeitet wurden

Slide 37

Slide 37 text

Entwickler in unglücklicher Position Benutzbarkeit Funktionale Eignung Zuverlässigkeit Sicherheit Nutzerin ∪ Boss Wartbarkeit Zuverlässigkeit Funktionale Eignung Übertragbarkeit Leistungseffizienz Kompatibilität Übertragbarkeit Wartbarkeit Kompatibilität Leistungseffizienz Benutzbarkeit Sicherheit Business Technik Entwickler Wertschöpfungskette sichtbar

Slide 38

Slide 38 text

Ansprüche an Qualität zusammengelegt Sicherheit Nutzerin ∪ Boss Funktionale Eignung Entwickler Leistungseffizienz Business Technik ∪ & Wertschöpfungskette sichtbar Sichtbar für Business und Technik Nur für Technik sichtbar Interne Software- qualitäten Externe Software- qualitäten Benutzbarkeit Zuverlässigkeit Kompatibilität Übertragbarkeit Wartbarkeit

Slide 39

Slide 39 text

Sieht irgendwie bekannt aus … Sicherheit Funktionale Eignung Leistungseffizienz Übertragbarkeit Kompatibilität Wartbarkeit Benutzbarkeit Zuverlässigkeit

Slide 40

Slide 40 text

Evolutionäre Softwarequalität Funktionale Eignung Zuverlässigkeit Benutzbarkeit Leistungseffizienz Sicherheit Wartbarkeit Kompatibilität Übertragbarkeit Genesis Custom Built Product Commodity Evolution

Slide 41

Slide 41 text

Evolutionäre Softwarequalität Wertschöpfungskette sichtbar Funktionale Eignung Zuverlässigkeit Benutzbarkeit Leistungseffizienz Sicherheit Wartbarkeit Kompatibilität Übertragbarkeit Genesis Custom Built Product Commodity Evolution Sichtbar für Business und Technik Nur für Technik sichtbar

Slide 42

Slide 42 text

Was nützt das jetzt? Wertschöpfungskette sichtbar Funktionale Eignung Zuverlässigkeit Benutzbarkeit Leistungseffizienz Sicherheit Wartbarkeit Kompatibilität Übertragbarkeit Genesis Custom Built Product Commodity Evolution Software- system Wechsel vom direkt spürbaren zu indirekt spürbaren Qualitäten Kritische Phase erkennen

Slide 43

Slide 43 text

Ausblick Auch bei folgenden Themen nützlich?

Slide 44

Slide 44 text

Genesis Custom Built Product Commodity Evolution Evolution WIR WOLLEN KEINE DOKUMENTATION SCHREIBEN! WIR SIND SO SCHNELL! DOKUMENTATION IST IMMER VERALTET! WIR BRAUCHEN EINE UMFASSENDE DOKUMENTATION, DENN SONST BENUTZT NIEMAND UNSER ZEUG! Software system Fotos von freepik.com, lizensiert unter Freepik license. Linkes Foto von gpointstudio, rechtes Foto von kues. Woher kommen Konflikte im Team? Wartbarkeit, Kompatibilität Funktionale Eignung

Slide 45

Slide 45 text

Warum müssen wir immer was tun? Arbeit steigt u.a. aufgrund von mehr Softwarequalität Genesis Custom Built Product Commodity Evolution Software system Arbeitsbelastung

Slide 46

Slide 46 text

Warum funktionieren Teams nicht? Strukturierte Arbeit, gemeinsame Vision und Ziele erforderlich Evolution Software system # Entwickler ? Genesis Custom Built Product Commodity

Slide 47

Slide 47 text

Evolution Software system Anfänge der strukturierten Architekturarbeit Spezialisierung der Architekturarbeit Unkoordinierte Architekturarbeit # Entwickler ? Genesis Custom Built Product Commodity Weitere Einzelheiten zu den Architekturmodellen im Buch „Vorgehensmuster für Softwarearchitektur“ von Stefan Toth Umdenken, wie Architekturarbeit passiert, erforderlich Gemeinsame Architekturarbeit mit Guidance Warum brauchen wir Architektur?

Slide 48

Slide 48 text

Zusammenfassung

Slide 49

Slide 49 text

Software- system Evolutionäre Softwarequalität Wertschöpfungskette sichtbar Funktionale Eignung Zuverlässigkeit Benutzbarkeit Leistungseffizienz Sicherheit Wartbarkeit Kompatibilität Übertragbarkeit Genesis Custom Built Product Commodity Evolution Sichtbar für Business und Technik Nur für Technik sichtbar

Slide 50

Slide 50 text

FINDING THE RIGHT BALANCE

Slide 51

Slide 51 text

FINDING THE RIGHT BALANCE Features Software- qualität MIT EVOLUTIONÄRER SOFTWAREQUALITÄT Qualität nicht zu früh, nicht zu spät, sondern genau zur richtigen Zeit!

Slide 52

Slide 52 text

Vielen Dank!

Slide 53

Slide 53 text

Fragen, Diskussionen, Anregungen

Slide 54

Slide 54 text

Ressourcen

Slide 55

Slide 55 text

Frühere Version dieser Inhalte https://www.innoq.com/de/blog/quality-value-chain-evolution/

Slide 56

Slide 56 text

Wardley Mapping Quick Start https://www.youtube.com/watch?v=IJcLmoKR6v8 Ben Mosier: The Easiest Way to Do Wardley Mapping Investing in Innovation: How Situational Awareness Can Put Your Business on the Map https://www.youtube.com/watch?v=Gfq3ocmadZo

Slide 57

Slide 57 text

Einstieg in Wardley Maps • Meine persönlichen TOP 5 zum Einstieg https:/ /www.feststelltaste.de/top-5-learning-wardley-maps/ • Einsteigerseite von Ben Mosior https://learnwardleymapping.com/ • Vortrag von Simon Wardley https://www.youtube.com/watch?v=Ty6pOVEc3bA • Buch „Wardley Maps“ von Simon Wardley https://medium.com/wardleymaps • Wardley Maps Awesome List (Ressourcen-Sammlung) https://list.wardleymaps.com • Viele Infos auf deutsch: https://flowwork.rocks/alles-ueber/wardley-maps/

Slide 58

Slide 58 text

Aktuelle Talk-Empfehlung Building Adaptive Systems with Wardley Mapping, DDD, and Team Topologies (Susanne Kaiser) https://www.youtube.com/watch?v=Ha0fLMVB1oI Hier kommt auch bald ein Buch dazu heraus

Slide 59

Slide 59 text

www.innoq.com Krischerstr. 100 40789 Monheim +49 2173 3366-0 Ohlauer Str. 43 10999 Berlin Ludwigstr. 180E 63067 Offenbach Kreuzstr. 16 80331 München Hermannstrasse 13 20095 Hamburg Erftstr. 15-17 50672 Köln Königstorgraben 11 90402 Nürnberg innoQ Deutschland GmbH Kontakt Markus Harrer Software Development Analyst #softwaremodernisierung #architekturbewertung #training #wardleymapping #softwareanalytics Twitter: @feststelltaste E-Mail: [email protected] Mehr Infos: https://www.innoq.com/de/staff/markus-harrer/ 59

Slide 60

Slide 60 text

KLIENTEN Finance ● Telko ● Logistik ● E-Commerce ● Fortune 500 ● KMUs ● Startups FAKTEN ~160 Mitarbeitende 1998 gegründet 9 Standorte in D & CH UNSER ANGEBOT Produktkonzeption & Design Software-Entwicklung & -Architektur Technologie-Beratung Infrastruktur & Betrieb Wissenstransfer, Coaching & Trainings FOKUS Webapplikationen SaaS IoT Produktentwicklung ML/AI Blockchain TECHNOLOGIEN (Auswahl) Java/Spring Ruby/Rails Scala AWS Kubernetes Azure JavaScript Python C# ML/AI Blockchain