SlideShare ist ein Scribd-Unternehmen logo
1 von 52
Downloaden Sie, um offline zu lesen
Marco Ravicini
Eine Entdeckungsreise zum
Land der Software-Qualität
Reisevorbereitung
[...] sie wird auch definiert als die Eignung für den
beabsichtigten Zweck (fitness for purpose)
bei gleichzeitiger Erfüllung der Kundenerwartungen.
[...]
Qualität
Ganz allgemein besteht Qualität in der Wirtschaft darin, "eine Ware
oder Dienstleistung zu produzieren, die [der Spezifikation des
Kunden] beim ersten Mal, in der richtigen Menge und zum richtigen
Zeitpunkt entspricht“. [...]
Quelle: Wikipedia (en) – Quality (business)
accessibility
accountability
accuracy
adaptability
administrability
affordability
agility
auditability
autonomy
availability
compatibility
composability
confidentiality
configurability
correctness
credibility
customizability
debuggability
degradability
determinability
demonstrability
dependability
deployability
discoverability
distributability
durability
effectiveness
efficiency
evolvability
extensibility
failure transparency
fault-tolerance
fidelity
flexibility
inspectability
installability
integrity
interchangeability
interoperability
learnability
localizability
maintainability
manageability
mobility
modifiability
modularity
observability
operability
orthogonality
portability
precision
predictability
process capabilities
producibility
provability
recoverability
redundancy
relevance
reliability
repeatability
reproducibility
resilience
responsiveness
reusability
robustness
safety
scalability
seamlessness
self-sustainability
serviceability (a.k.a. supportability)
securability
simplicity
stability
standards compliance
survivability
sustainability
tailorability
testability
timeliness
traceability
transparency
ubiquity
understandability
upgradability
usability
vulnerability
-ilities oder Qualitätsattribute
Software Development Quality
Die Attribute des Artefaktes welches wir bauen
Produktqualität – ISO 25010
Functional Suitability – funktional komplett, korrekt und angemessen
Compatibility – Informationsaustausch mit anderen Produkten o.ä.
Performance Efficiency – Resourcenverbrauch angemessen
Reliability – Zuverlässigkeit die Funktion über Zeit auszuführen
Usability – Benutzbarkeit im Kontext
Security – Schutz der Informationen
Maintainability –Veränder- und Erweiterbarkeit
Portability – Portabilität eines System von Laufzeitsystem zu anderem
Grad, in dem ein System, ein Produkt oder eine Komponente bestimmte Funktionen
unter bestimmten Bedingungen über einen bestimmten Zeitraum hinweg erfüllt.
• Maturität
• Verfügbarkeit
• Fehlertoleranz
• Wiederherstellbarkeit
Reliability – Zuverlässigkeit
ISO 25010
Software Engineering Institute (SEI)
Quality Model
Alternative Modelle
Arc42 Quality Model (Q42)
Wie unsere Arbeit vom Kunden/Nutzer wahrgenommen wird
Service Qualität - SERVQUAL
Expectation – den Erwartungen ensprechend
Effectiveness – werden die die Bedürnisse adressiert
Efficiency – Resourcen der Stakeholder geschont
Responsivenes – prompter und höfliche Reaktionen
Reliability – wiederholend guter Level der Qualität
Predictability – Vorhersagbarkeit der Qualität
Assurance – Fähigkeit Vertrauen und Zuversicht aufzubauen
Empathy – Fähkigkeit sich in die Beürfnisse des Kunden hineinzuversetzen
Tangibles – wie der Partner wahrgenommen wird
Grad, in dem die tatsächlichen Ergebnisse vorhergesagt werden können.
Predictability – Vorgersagbarkeit
Bugs
unzufriedene
Nutzer
keine Tests
keine Zeit für
Verbesserungen
Zeitdruck
Regressions-Bugs
Unvorhersagbarkeit
Wieso Qualität?
Wieso Qualität?
via: J.B. Rainsberger
[...] Das Produkt oder die Dienstleistung sollte nicht schlechter oder
besser sein als die Spezifikation (Unter- oder Überqualität).
Überqualität führt zu unnötigen zusätzlichen Produktionskosten und
sollte daher nicht als "gut" angesehen werden. [...]
Zu viel?
Quelle: Wikipedia (en) – Quality (business)
Gut genug
GUT
OVER-
ENGINEERED
UNDER-
ENGINEERED
Software Development Quality
Die Ansichten, Gewohnheiten
und das soziale Verhalten des
Umfelds, in dem das Team
arbeitet.
Mindset/Culture
Transparency
• All Goals Visible
• All Work Visible
Work Model
• Idle Time (Slack Time)
• Small Steps
• Sustainable Pace
• Lean Startup
• DevOps
Values
• Respect
• Product Focus
• Positive error culture
• Psychological safety
• Diversity and Inclusion
• Simplicity
Decision Making
• Empirical Decision Making
• Decision Making Roles
• Defer Decisions
• Decision Log
• Decision Making Methods
Austausch / Reflektion
Mindset / Culture
Optimieren des Flusses von
Aufgaben unter
Berücksichtigung der Variation
im System.
Lean Thinking
Übergaben – die Übergabe der Arbeit von einer Person an eine andere – behindern den
Arbeitsfluss.
Sie führen zu Verzögerungen, zusätzlicher Abholzeit (Zeit, die benötigt wird, um mit der Arbeit zu
beginnen) und einem hohen Risiko von Fehlkommunikation (ein einziger Kommunikationspunkt
anstelle einer kontinuierlichen Kommunikation).
(Fast) keine Übergaben
(Almost) no Hand-offs
Kommunikation ist der Vorgang
der Übermittlung von
beabsichtigten Bedeutungen
von einer Einheit oder Gruppe
zu einer anderen, unter
Verwendung semiotischer
Regeln.
Kommunikation
Effektives Zuhören ist aktiv und erfordert, dass sich der Hörer in den
Sichtweise des Sprechers hineinversetzt, so dass er die
Kommunikation aus der Sicht des Sprechers verstehen kann.
Active Listening
wertfrei
Empathie
(Einfühlsvermögen)
! ?
nachfragen &
paraphrasieren
Das Team und sein Umfeld sind
so eingerichtet, dass sie arbeiten
können.
Team Organisation
Etablierung möglichst kurzer
Feedback-Zyklen in Prozessen
und Organisationsstrukturen, um
den Fortschritt der
Produktentwicklung überprüfen
und anpassen zu können.
Dadurch werden Zeit, Kosten
und Risiken reduziert.
Feedback Cycles
by Donovan Wells lizenziert unter CC-BY-SA 3.0
Menschen, die engagiert
zusammenarbeiten, um ein
gemeinsames Ziel oder einen
gemeinsamen Auftrag zu
erreichen.
Die Arbeit ist voneinander
abhängig, und die
Teammitglieder teilen sich die
Verantwortung und sind für das
Erreichen der Ergebnisse
rechenschaftspflichtig.
Team
Collaboration
• Team Charter
• Retrospectives
• Collaboration on whole Value Stream
• Collective (Code) Ownership
• Shared Task Responsibility
Composition
• Team Alignment & Team Autonomy
• Crossfunctional Teams
• (T-/π-)M-Shaped Team Members
• Team End-to-End Responsibility
Team
Welches Produkt können wir
bauen, das so viel Wert hat,
dass der Kunde/Nutzer bereit
ist, dafür zu bezahlen?
Produktfindung
Empathy map canvas
Was TUN sie?
Ziel
WEM gegenüber sind sie empathisch? WAS sind ihre AUFGABEN?
WAS SEHEN sie?
WAS SAGEN sie?
Was DENKEN und FÜHLEN sie?
Beschwerden Chancen
Was HÖHREN sie?
via gamestorming.com © Dave Gray
Die Erstellung von Prototypen ist eine wichtige Massnahme, um Risiken und
Unsicherheiten so früh und kostengünstig wie möglich zu verringern, die
Qualität des Endergebnisses zu verbessern und Ihr Projekt schliesslich erfolgreich
umzusetzen.
Product Protoype
Das Prototyping führt zu einer Arbeit, die auf der Realität beruht und nicht auf
Annahmen und Meinungen.
Product Prototype
Vorbedingungen bevor wir in die
Erstellung des Produktes gehen
können
Vorbedingungen
Vorbedingungen
Definiert eure benötigte Qualität
In eurem Kontext für euer Produkt oder Service
Qualitätsszenarien, Akzeptanzkriterien
Definiert Kontrollen
Wie überprüfen wir, ob wir unsere Qualitätsvorgaben erfüllt haben?
Steht für Qualität ein (Commitment)
Definieren Sie, wie Ausnahmen behandelt werden sollen
1
2
3 Kontinuierlich
prüfen und
anpassen
Diese Eigenschaften machen die
Qualität aus. Sie können nicht
alle maximiert werden, da sie
miteinander in Konflikt stehen.
Um ein globales Optimum zu
finden, müssen Kompromisse
eingegangen werden.
Kompromisse (Trade-offs)
Photo by Piret Ilver on Unsplash
... und sie können ändern.
Qualitätsaspekte sind relevant ...
Spectre-Logo, by Natascha Eibl CC0
Meltdown, by Natascha Eibl, CC0
[...] Qualität ist ein wahrnehmbares, bedingtes und in gewisser Weise
subjektives Attribut und kann von verschiedenen Personen
unterschiedlich verstanden werden. [...]
Wie definieren?
Quelle: Wikipedia (en) – Quality (business)
Zusammenarbeit in einer heterogenen
Gruppe, von Businessexpertin bis
Endanwenderin in einem Workshop.
Quality Workshop
Quality Storming
(Michael Plöd via INNOQ Blog)
SEI Quality Attribute Workshop
• Vision vorstellen
• Szenarien sammeln (Beispiele)
• Szenarien konsolidieren
• Szenarien priorisieren
Quelle
Umfeld
Stimulus Artefakt Reaktion
Benutzer/Rolle
Entwickler
Peripherie
Ereignis (Event)
Bedingung
(Sub-)System
Quellcode
Dokumentation
Antwort
Wie können Qualitätsszenarien definiert werden?
Messung
Bass et al. Software Architecture in Practice
Quelle Stimulus Artefakt Reaktion
Beispiele
Wenn ich als Nutzer während der Arbeitszeit Daten übermittle, erwarte ich, dass
das System in 98 % der Fälle wie vorgesehen funktioniert.
Als Wirtschaftsprüfer verlange ich bei meiner Prüfung den vollständigen
Jahresabschluss mit einer Genauigkeit von 5 Cent.
Ein neuer Versicherungstarif kann in weniger als 10 Tagen im System
implementiert werden.
Alternative Qualitätsszenarien
via arc42 Quality Model
Das Definieren der
Qualitätsszenarien brachte
unserem Team einen
unerwarteten Boost. Endlich
konnten wir unsere Entscheide
auf etwas stützen.
Ich hätte bereits das erste Mal
auf dich hören sollen.
Vorbedingungen bevor wir in die
Erstellung des Produktes gehen
können
Voraussetzungen
Das Produkt erstellen.
Product Production
Versenden des Produkts an die
Kunden und Benutzer.
Product Release
Erkundundsmöglichkeiten
Entlang des orangen Weges
einzelne Topics besprechen
Zufälligerweise auf die Karte
zeigen & darüber sprechen
Mit mir sprechen
Spiel
Qualitäts Attribute
mit üngenügender Qualität
Euer Einflussbereich
C**
Team(s)
Orga
Reisefilm
Sprecht und definiert eure benötigte Qualität mit allen Beteiligten
Jedes Team muss alles wiederkehrend auf der Karte machen (Disclaimer)
Erschafft Systeme mit angemessener Qualität
In Qualität zu investieren ist selbst auf mittelfristige Sicht günstiger
1
2
3
4
Degree to which a product or
system manages natural,
economic and social resources
without depleting them for future
generations.
Für die q42:
#sustainable
Bonus: Sustainability
Poster
Software Development Quality Map
Online
Marco Ravicini
marco.ravicini@bbv.ch
@marcoravicini
@marcoravicini@mastodon.social
https://quality.bbv.ch
• Quality (business): https://en.wikipedia.org/wiki/Quality_(business)
• Quality Maangement System Handbook for Product Development Companies.
https://books.google.ch/books?id=guizsuAAyR4C&lpg=PA1&hl=de&pg=PA1#v=onepage&q&f=false
• Quality Management Systems: A Practical Guide.
https://books.google.ch/books?id=O5aq0HMyXOcC&lpg=PA1&hl=de&pg=PA2#v=onepage&q&f=false
• https://iso25000.com/index.php/en/iso-25000-standards/iso-25010
• https://quality.arc42.org/articles/iso-25010-shortcomings
• https://quality.arc42.org/articles/sum-of-all-iso
• https://www.it-cisq.org/the-cost-of-poor-quality-software-in-the-us-a-2022-report/
• https://www.it-cisq.org/wp-content/uploads/sites/6/2022/11/CPSQ-Report-Nov-22-2.pdf
• https://www.it-cisq.org/cisq-files/pdf/CPSQ-2020-report.pdf
• https://quality.arc42.org/articles/sei-quality-model
Quellen
• https://helpfulprofessor.com/trade-off-examples/
• https://resources.sei.cmu.edu/asset_files/FactSheet/2018_010_001_513488.pdf
• https://www.openpeephttps://www.openpeeps.com/s.com/
• https://gamestorming.com/update-to-the-empathy-map/empathy-map-006-png/
• Bass et al.: Software Architecture in Practice. L. Bass, P. Clements, and R. Kazman, Software architecture in
practice, 4th ed. Addison-Wesley Professional, 2021.
• https://quality.arc42.org/articles/specify-quality-requirements
• https://resources.sei.cmu.edu/asset_files/FactSheet/2018_010_001_513488.pdf
• https://www.innoq.com/en/articles/2020/02/quality-storming-workshop/
• https://www.ufried.com/blog/quality_1/
• https://blog.ah.technology/the-cost-of-bad-quality-software-6128042aa436
Quellen

Weitere ähnliche Inhalte

Ähnlich wie Eine Entdeckungsreise zum Land der Software-Qualität

Ihr Produkt als Dienstleister – Mit der Jobs To Be Done (JTBD) Methode Kunden...
Ihr Produkt als Dienstleister – Mit der Jobs To Be Done (JTBD) Methode Kunden...Ihr Produkt als Dienstleister – Mit der Jobs To Be Done (JTBD) Methode Kunden...
Ihr Produkt als Dienstleister – Mit der Jobs To Be Done (JTBD) Methode Kunden...die firma . experience design GmbH
 
ROI von Trainings- Interkulturelle Kommunication
ROI von Trainings- Interkulturelle KommunicationROI von Trainings- Interkulturelle Kommunication
ROI von Trainings- Interkulturelle KommunicationSonja Uhl
 
Agiles Anforderungsmanagement bei HEC
Agiles Anforderungsmanagement bei HECAgiles Anforderungsmanagement bei HEC
Agiles Anforderungsmanagement bei HECChristian Seedig
 
UX aus Sicht eines Concepters
UX aus Sicht eines ConceptersUX aus Sicht eines Concepters
UX aus Sicht eines ConceptersuxHH
 
Lean development 04
Lean development 04Lean development 04
Lean development 04SuperB2
 
KPIs vs. UX – ist User Experience messbar?
KPIs vs. UX – ist User Experience messbar?KPIs vs. UX – ist User Experience messbar?
KPIs vs. UX – ist User Experience messbar?Matthias Feit
 
Virtual Reality als Kommunikations-Tool für Unternehmen
Virtual Reality als Kommunikations-Tool für UnternehmenVirtual Reality als Kommunikations-Tool für Unternehmen
Virtual Reality als Kommunikations-Tool für Unternehmenaccilium GmbH
 
Agile und Projektmanagement - Kein entweder-oder sondern anders
Agile und Projektmanagement - Kein entweder-oder sondern andersAgile und Projektmanagement - Kein entweder-oder sondern anders
Agile und Projektmanagement - Kein entweder-oder sondern andersSteffen Thols
 
Large-Scale Product Owner @ XPDays Germany (5.10.2023)
Large-Scale Product Owner @ XPDays Germany (5.10.2023)Large-Scale Product Owner @ XPDays Germany (5.10.2023)
Large-Scale Product Owner @ XPDays Germany (5.10.2023)Pierluigi Pugliese
 
IA Konferenz 2016 - User Story Mapping
IA Konferenz 2016 - User Story MappingIA Konferenz 2016 - User Story Mapping
IA Konferenz 2016 - User Story Mappingdenkwerk GmbH
 
User Story Mapping in Practice
User Story Mapping in PracticeUser Story Mapping in Practice
User Story Mapping in PracticeSandra Griffel
 
Einfuehrung Projektmanagement
Einfuehrung ProjektmanagementEinfuehrung Projektmanagement
Einfuehrung ProjektmanagementJürgen Bruns
 
Social Business Solution Guide I/2017
Social Business Solution Guide I/2017Social Business Solution Guide I/2017
Social Business Solution Guide I/2017Communardo GmbH
 
knowtech2011-Verwaltung2.0
knowtech2011-Verwaltung2.0knowtech2011-Verwaltung2.0
knowtech2011-Verwaltung2.0TwentyOne AG
 
Agile UX - Wege zur agilen nutzerzentrierten Produktentwicklung
Agile UX - Wege zur agilen nutzerzentrierten ProduktentwicklungAgile UX - Wege zur agilen nutzerzentrierten Produktentwicklung
Agile UX - Wege zur agilen nutzerzentrierten ProduktentwicklungRainer Gibbert
 
Portalsymposium City&Bits - Usability in Internet- und Mitarbeiterportalen
Portalsymposium City&Bits - Usability in Internet- und Mitarbeiterportalen Portalsymposium City&Bits - Usability in Internet- und Mitarbeiterportalen
Portalsymposium City&Bits - Usability in Internet- und Mitarbeiterportalen City & Bits GmbH
 
Wie Ihr Content die Buyer Journey unterstützt und Nutzertests funktionieren
Wie Ihr Content die Buyer Journey unterstützt und Nutzertests funktionierenWie Ihr Content die Buyer Journey unterstützt und Nutzertests funktionieren
Wie Ihr Content die Buyer Journey unterstützt und Nutzertests funktionierenevuxGmbH
 

Ähnlich wie Eine Entdeckungsreise zum Land der Software-Qualität (20)

Ihr Produkt als Dienstleister – Mit der Jobs To Be Done (JTBD) Methode Kunden...
Ihr Produkt als Dienstleister – Mit der Jobs To Be Done (JTBD) Methode Kunden...Ihr Produkt als Dienstleister – Mit der Jobs To Be Done (JTBD) Methode Kunden...
Ihr Produkt als Dienstleister – Mit der Jobs To Be Done (JTBD) Methode Kunden...
 
ROI von Trainings- Interkulturelle Kommunication
ROI von Trainings- Interkulturelle KommunicationROI von Trainings- Interkulturelle Kommunication
ROI von Trainings- Interkulturelle Kommunication
 
Agiles Anforderungsmanagement bei HEC
Agiles Anforderungsmanagement bei HECAgiles Anforderungsmanagement bei HEC
Agiles Anforderungsmanagement bei HEC
 
UX aus Sicht eines Concepters
UX aus Sicht eines ConceptersUX aus Sicht eines Concepters
UX aus Sicht eines Concepters
 
Lean development 04
Lean development 04Lean development 04
Lean development 04
 
KPIs vs. UX – ist User Experience messbar?
KPIs vs. UX – ist User Experience messbar?KPIs vs. UX – ist User Experience messbar?
KPIs vs. UX – ist User Experience messbar?
 
KPIs vs. UX - Ist User Experience messbar?
KPIs vs. UX - Ist User Experience messbar?KPIs vs. UX - Ist User Experience messbar?
KPIs vs. UX - Ist User Experience messbar?
 
Virtual Reality als Kommunikations-Tool für Unternehmen
Virtual Reality als Kommunikations-Tool für UnternehmenVirtual Reality als Kommunikations-Tool für Unternehmen
Virtual Reality als Kommunikations-Tool für Unternehmen
 
Agile und Projektmanagement - Kein entweder-oder sondern anders
Agile und Projektmanagement - Kein entweder-oder sondern andersAgile und Projektmanagement - Kein entweder-oder sondern anders
Agile und Projektmanagement - Kein entweder-oder sondern anders
 
Large-Scale Product Owner @ XPDays Germany (5.10.2023)
Large-Scale Product Owner @ XPDays Germany (5.10.2023)Large-Scale Product Owner @ XPDays Germany (5.10.2023)
Large-Scale Product Owner @ XPDays Germany (5.10.2023)
 
Mehr Softwarequalität: Softwarequalität ist steuerbar
Mehr Softwarequalität: Softwarequalität ist steuerbarMehr Softwarequalität: Softwarequalität ist steuerbar
Mehr Softwarequalität: Softwarequalität ist steuerbar
 
Nutzerfreude im Fokus
Nutzerfreude im FokusNutzerfreude im Fokus
Nutzerfreude im Fokus
 
IA Konferenz 2016 - User Story Mapping
IA Konferenz 2016 - User Story MappingIA Konferenz 2016 - User Story Mapping
IA Konferenz 2016 - User Story Mapping
 
User Story Mapping in Practice
User Story Mapping in PracticeUser Story Mapping in Practice
User Story Mapping in Practice
 
Einfuehrung Projektmanagement
Einfuehrung ProjektmanagementEinfuehrung Projektmanagement
Einfuehrung Projektmanagement
 
Social Business Solution Guide I/2017
Social Business Solution Guide I/2017Social Business Solution Guide I/2017
Social Business Solution Guide I/2017
 
knowtech2011-Verwaltung2.0
knowtech2011-Verwaltung2.0knowtech2011-Verwaltung2.0
knowtech2011-Verwaltung2.0
 
Agile UX - Wege zur agilen nutzerzentrierten Produktentwicklung
Agile UX - Wege zur agilen nutzerzentrierten ProduktentwicklungAgile UX - Wege zur agilen nutzerzentrierten Produktentwicklung
Agile UX - Wege zur agilen nutzerzentrierten Produktentwicklung
 
Portalsymposium City&Bits - Usability in Internet- und Mitarbeiterportalen
Portalsymposium City&Bits - Usability in Internet- und Mitarbeiterportalen Portalsymposium City&Bits - Usability in Internet- und Mitarbeiterportalen
Portalsymposium City&Bits - Usability in Internet- und Mitarbeiterportalen
 
Wie Ihr Content die Buyer Journey unterstützt und Nutzertests funktionieren
Wie Ihr Content die Buyer Journey unterstützt und Nutzertests funktionierenWie Ihr Content die Buyer Journey unterstützt und Nutzertests funktionieren
Wie Ihr Content die Buyer Journey unterstützt und Nutzertests funktionieren
 

Kürzlich hochgeladen

Slides (1) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (1) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...Slides (1) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (1) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...DNUG e.V.
 
From Zero to still Zero: Die schönsten Fehler auf dem Weg in die Cloud
From Zero to still Zero: Die schönsten Fehler auf dem Weg in die CloudFrom Zero to still Zero: Die schönsten Fehler auf dem Weg in die Cloud
From Zero to still Zero: Die schönsten Fehler auf dem Weg in die CloudOPEN KNOWLEDGE GmbH
 
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...Markus Unterauer
 
FEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data Imputation
FEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data ImputationFEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data Imputation
FEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data ImputationOPEN KNOWLEDGE GmbH
 
Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...
Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...
Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...OPEN KNOWLEDGE GmbH
 
Slides (2) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (2) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...Slides (2) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (2) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...DNUG e.V.
 

Kürzlich hochgeladen (6)

Slides (1) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (1) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...Slides (1) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (1) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
 
From Zero to still Zero: Die schönsten Fehler auf dem Weg in die Cloud
From Zero to still Zero: Die schönsten Fehler auf dem Weg in die CloudFrom Zero to still Zero: Die schönsten Fehler auf dem Weg in die Cloud
From Zero to still Zero: Die schönsten Fehler auf dem Weg in die Cloud
 
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
Rückwärts denken vorwärts handeln - Requirements Reverse Engineering bei Syst...
 
FEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data Imputation
FEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data ImputationFEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data Imputation
FEHLENDE DATEN? (K)EIN PROBLEM!: Die Kunst der Data Imputation
 
Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...
Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...
Machine Learning? Ja gerne! Aber was und wie? Eine Kurzanleitung für den erfo...
 
Slides (2) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (2) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...Slides (2) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
Slides (2) zu Teil 3 der Veranstaltungsreihe Anwendungsentwicklung mit Volt M...
 

Eine Entdeckungsreise zum Land der Software-Qualität

  • 1.
  • 2. Marco Ravicini Eine Entdeckungsreise zum Land der Software-Qualität
  • 4. [...] sie wird auch definiert als die Eignung für den beabsichtigten Zweck (fitness for purpose) bei gleichzeitiger Erfüllung der Kundenerwartungen. [...] Qualität Ganz allgemein besteht Qualität in der Wirtschaft darin, "eine Ware oder Dienstleistung zu produzieren, die [der Spezifikation des Kunden] beim ersten Mal, in der richtigen Menge und zum richtigen Zeitpunkt entspricht“. [...] Quelle: Wikipedia (en) – Quality (business)
  • 5. accessibility accountability accuracy adaptability administrability affordability agility auditability autonomy availability compatibility composability confidentiality configurability correctness credibility customizability debuggability degradability determinability demonstrability dependability deployability discoverability distributability durability effectiveness efficiency evolvability extensibility failure transparency fault-tolerance fidelity flexibility inspectability installability integrity interchangeability interoperability learnability localizability maintainability manageability mobility modifiability modularity observability operability orthogonality portability precision predictability process capabilities producibility provability recoverability redundancy relevance reliability repeatability reproducibility resilience responsiveness reusability robustness safety scalability seamlessness self-sustainability serviceability (a.k.a. supportability) securability simplicity stability standards compliance survivability sustainability tailorability testability timeliness traceability transparency ubiquity understandability upgradability usability vulnerability -ilities oder Qualitätsattribute
  • 7. Die Attribute des Artefaktes welches wir bauen Produktqualität – ISO 25010 Functional Suitability – funktional komplett, korrekt und angemessen Compatibility – Informationsaustausch mit anderen Produkten o.ä. Performance Efficiency – Resourcenverbrauch angemessen Reliability – Zuverlässigkeit die Funktion über Zeit auszuführen Usability – Benutzbarkeit im Kontext Security – Schutz der Informationen Maintainability –Veränder- und Erweiterbarkeit Portability – Portabilität eines System von Laufzeitsystem zu anderem
  • 8. Grad, in dem ein System, ein Produkt oder eine Komponente bestimmte Funktionen unter bestimmten Bedingungen über einen bestimmten Zeitraum hinweg erfüllt. • Maturität • Verfügbarkeit • Fehlertoleranz • Wiederherstellbarkeit Reliability – Zuverlässigkeit
  • 10. Software Engineering Institute (SEI) Quality Model Alternative Modelle Arc42 Quality Model (Q42)
  • 11. Wie unsere Arbeit vom Kunden/Nutzer wahrgenommen wird Service Qualität - SERVQUAL Expectation – den Erwartungen ensprechend Effectiveness – werden die die Bedürnisse adressiert Efficiency – Resourcen der Stakeholder geschont Responsivenes – prompter und höfliche Reaktionen Reliability – wiederholend guter Level der Qualität Predictability – Vorhersagbarkeit der Qualität Assurance – Fähigkeit Vertrauen und Zuversicht aufzubauen Empathy – Fähkigkeit sich in die Beürfnisse des Kunden hineinzuversetzen Tangibles – wie der Partner wahrgenommen wird
  • 12. Grad, in dem die tatsächlichen Ergebnisse vorhergesagt werden können. Predictability – Vorgersagbarkeit Bugs unzufriedene Nutzer keine Tests keine Zeit für Verbesserungen Zeitdruck Regressions-Bugs Unvorhersagbarkeit
  • 15. [...] Das Produkt oder die Dienstleistung sollte nicht schlechter oder besser sein als die Spezifikation (Unter- oder Überqualität). Überqualität führt zu unnötigen zusätzlichen Produktionskosten und sollte daher nicht als "gut" angesehen werden. [...] Zu viel? Quelle: Wikipedia (en) – Quality (business)
  • 17.
  • 19. Die Ansichten, Gewohnheiten und das soziale Verhalten des Umfelds, in dem das Team arbeitet. Mindset/Culture
  • 20. Transparency • All Goals Visible • All Work Visible Work Model • Idle Time (Slack Time) • Small Steps • Sustainable Pace • Lean Startup • DevOps Values • Respect • Product Focus • Positive error culture • Psychological safety • Diversity and Inclusion • Simplicity Decision Making • Empirical Decision Making • Decision Making Roles • Defer Decisions • Decision Log • Decision Making Methods Austausch / Reflektion Mindset / Culture
  • 21. Optimieren des Flusses von Aufgaben unter Berücksichtigung der Variation im System. Lean Thinking
  • 22. Übergaben – die Übergabe der Arbeit von einer Person an eine andere – behindern den Arbeitsfluss. Sie führen zu Verzögerungen, zusätzlicher Abholzeit (Zeit, die benötigt wird, um mit der Arbeit zu beginnen) und einem hohen Risiko von Fehlkommunikation (ein einziger Kommunikationspunkt anstelle einer kontinuierlichen Kommunikation). (Fast) keine Übergaben (Almost) no Hand-offs
  • 23. Kommunikation ist der Vorgang der Übermittlung von beabsichtigten Bedeutungen von einer Einheit oder Gruppe zu einer anderen, unter Verwendung semiotischer Regeln. Kommunikation
  • 24. Effektives Zuhören ist aktiv und erfordert, dass sich der Hörer in den Sichtweise des Sprechers hineinversetzt, so dass er die Kommunikation aus der Sicht des Sprechers verstehen kann. Active Listening wertfrei Empathie (Einfühlsvermögen) ! ? nachfragen & paraphrasieren
  • 25. Das Team und sein Umfeld sind so eingerichtet, dass sie arbeiten können. Team Organisation
  • 26. Etablierung möglichst kurzer Feedback-Zyklen in Prozessen und Organisationsstrukturen, um den Fortschritt der Produktentwicklung überprüfen und anpassen zu können. Dadurch werden Zeit, Kosten und Risiken reduziert. Feedback Cycles by Donovan Wells lizenziert unter CC-BY-SA 3.0
  • 27. Menschen, die engagiert zusammenarbeiten, um ein gemeinsames Ziel oder einen gemeinsamen Auftrag zu erreichen. Die Arbeit ist voneinander abhängig, und die Teammitglieder teilen sich die Verantwortung und sind für das Erreichen der Ergebnisse rechenschaftspflichtig. Team
  • 28. Collaboration • Team Charter • Retrospectives • Collaboration on whole Value Stream • Collective (Code) Ownership • Shared Task Responsibility Composition • Team Alignment & Team Autonomy • Crossfunctional Teams • (T-/π-)M-Shaped Team Members • Team End-to-End Responsibility Team
  • 29. Welches Produkt können wir bauen, das so viel Wert hat, dass der Kunde/Nutzer bereit ist, dafür zu bezahlen? Produktfindung
  • 30. Empathy map canvas Was TUN sie? Ziel WEM gegenüber sind sie empathisch? WAS sind ihre AUFGABEN? WAS SEHEN sie? WAS SAGEN sie? Was DENKEN und FÜHLEN sie? Beschwerden Chancen Was HÖHREN sie? via gamestorming.com © Dave Gray
  • 31. Die Erstellung von Prototypen ist eine wichtige Massnahme, um Risiken und Unsicherheiten so früh und kostengünstig wie möglich zu verringern, die Qualität des Endergebnisses zu verbessern und Ihr Projekt schliesslich erfolgreich umzusetzen. Product Protoype Das Prototyping führt zu einer Arbeit, die auf der Realität beruht und nicht auf Annahmen und Meinungen.
  • 33. Vorbedingungen bevor wir in die Erstellung des Produktes gehen können Vorbedingungen
  • 34. Vorbedingungen Definiert eure benötigte Qualität In eurem Kontext für euer Produkt oder Service Qualitätsszenarien, Akzeptanzkriterien Definiert Kontrollen Wie überprüfen wir, ob wir unsere Qualitätsvorgaben erfüllt haben? Steht für Qualität ein (Commitment) Definieren Sie, wie Ausnahmen behandelt werden sollen 1 2 3 Kontinuierlich prüfen und anpassen
  • 35. Diese Eigenschaften machen die Qualität aus. Sie können nicht alle maximiert werden, da sie miteinander in Konflikt stehen. Um ein globales Optimum zu finden, müssen Kompromisse eingegangen werden. Kompromisse (Trade-offs) Photo by Piret Ilver on Unsplash
  • 36. ... und sie können ändern. Qualitätsaspekte sind relevant ... Spectre-Logo, by Natascha Eibl CC0 Meltdown, by Natascha Eibl, CC0
  • 37. [...] Qualität ist ein wahrnehmbares, bedingtes und in gewisser Weise subjektives Attribut und kann von verschiedenen Personen unterschiedlich verstanden werden. [...] Wie definieren? Quelle: Wikipedia (en) – Quality (business)
  • 38. Zusammenarbeit in einer heterogenen Gruppe, von Businessexpertin bis Endanwenderin in einem Workshop. Quality Workshop Quality Storming (Michael Plöd via INNOQ Blog) SEI Quality Attribute Workshop • Vision vorstellen • Szenarien sammeln (Beispiele) • Szenarien konsolidieren • Szenarien priorisieren
  • 39. Quelle Umfeld Stimulus Artefakt Reaktion Benutzer/Rolle Entwickler Peripherie Ereignis (Event) Bedingung (Sub-)System Quellcode Dokumentation Antwort Wie können Qualitätsszenarien definiert werden? Messung Bass et al. Software Architecture in Practice
  • 40. Quelle Stimulus Artefakt Reaktion Beispiele Wenn ich als Nutzer während der Arbeitszeit Daten übermittle, erwarte ich, dass das System in 98 % der Fälle wie vorgesehen funktioniert. Als Wirtschaftsprüfer verlange ich bei meiner Prüfung den vollständigen Jahresabschluss mit einer Genauigkeit von 5 Cent. Ein neuer Versicherungstarif kann in weniger als 10 Tagen im System implementiert werden.
  • 42. Das Definieren der Qualitätsszenarien brachte unserem Team einen unerwarteten Boost. Endlich konnten wir unsere Entscheide auf etwas stützen. Ich hätte bereits das erste Mal auf dich hören sollen.
  • 43. Vorbedingungen bevor wir in die Erstellung des Produktes gehen können Voraussetzungen
  • 45. Versenden des Produkts an die Kunden und Benutzer. Product Release
  • 46. Erkundundsmöglichkeiten Entlang des orangen Weges einzelne Topics besprechen Zufälligerweise auf die Karte zeigen & darüber sprechen Mit mir sprechen Spiel Qualitäts Attribute mit üngenügender Qualität
  • 48. Reisefilm Sprecht und definiert eure benötigte Qualität mit allen Beteiligten Jedes Team muss alles wiederkehrend auf der Karte machen (Disclaimer) Erschafft Systeme mit angemessener Qualität In Qualität zu investieren ist selbst auf mittelfristige Sicht günstiger 1 2 3 4
  • 49. Degree to which a product or system manages natural, economic and social resources without depleting them for future generations. Für die q42: #sustainable Bonus: Sustainability
  • 50. Poster Software Development Quality Map Online Marco Ravicini marco.ravicini@bbv.ch @marcoravicini @marcoravicini@mastodon.social https://quality.bbv.ch
  • 51. • Quality (business): https://en.wikipedia.org/wiki/Quality_(business) • Quality Maangement System Handbook for Product Development Companies. https://books.google.ch/books?id=guizsuAAyR4C&lpg=PA1&hl=de&pg=PA1#v=onepage&q&f=false • Quality Management Systems: A Practical Guide. https://books.google.ch/books?id=O5aq0HMyXOcC&lpg=PA1&hl=de&pg=PA2#v=onepage&q&f=false • https://iso25000.com/index.php/en/iso-25000-standards/iso-25010 • https://quality.arc42.org/articles/iso-25010-shortcomings • https://quality.arc42.org/articles/sum-of-all-iso • https://www.it-cisq.org/the-cost-of-poor-quality-software-in-the-us-a-2022-report/ • https://www.it-cisq.org/wp-content/uploads/sites/6/2022/11/CPSQ-Report-Nov-22-2.pdf • https://www.it-cisq.org/cisq-files/pdf/CPSQ-2020-report.pdf • https://quality.arc42.org/articles/sei-quality-model Quellen
  • 52. • https://helpfulprofessor.com/trade-off-examples/ • https://resources.sei.cmu.edu/asset_files/FactSheet/2018_010_001_513488.pdf • https://www.openpeephttps://www.openpeeps.com/s.com/ • https://gamestorming.com/update-to-the-empathy-map/empathy-map-006-png/ • Bass et al.: Software Architecture in Practice. L. Bass, P. Clements, and R. Kazman, Software architecture in practice, 4th ed. Addison-Wesley Professional, 2021. • https://quality.arc42.org/articles/specify-quality-requirements • https://resources.sei.cmu.edu/asset_files/FactSheet/2018_010_001_513488.pdf • https://www.innoq.com/en/articles/2020/02/quality-storming-workshop/ • https://www.ufried.com/blog/quality_1/ • https://blog.ah.technology/the-cost-of-bad-quality-software-6128042aa436 Quellen