SlideShare ist ein Scribd-Unternehmen logo
1 von 34
Downloaden Sie, um offline zu lesen
Softwarequalität



        Einführung in eine neue Vorlesung



Prof. Dr. Wolfgang Golubski      Gerrit Beine, M.Sc.
      golubski@fh-zwickau.de        mail@gerritbeine.com


                                                           1
Zur Motivation




                 2
ROTI

Maximise Your Return On Time Invested!




                                         3
Vorstellung




              4
Wolfgang Golubski, Prof. Dr. rer.nat. habil.


●   Jahrgang 1960
●   Seit 2004 an der Westsächsischen Hochschule Zwickau
●   Aktivitäten und Forschung auf den Gebieten
     ●   Software-Entwicklung und -technologien und -Architekturen
     ●   von Systems Engineering über Modellierung zum Programm
●   Seit Anfang der 80er Software- und Tool-Entwicklung, auch im industriellen Umfeld
●   Projektleitung in verschiedenen Vorhaben
●   Objekt-orientierte Sprachen (Smalltalk-80, Eiffel, Java, JEE, etc.) und Methoden sowie
    Modell-getriebene Entwicklung
●   Zahlreiche (wissenschaftliche) Veröffentlichungen zu den Themen „Programmiersprachen
    und Modell-getriebene Software-Entwicklung“




                                                                                             5
Gerrit Beine, M.Sc.


●   Jahrgang 1980
●   Selbständig seit 1998, zunächst im Bereich Linux/Unix Support
●   Ab 2000 Einführung von Agilen Methoden, Test Driven Development, Continuous
    Integration bei verschiedenen Unternehmen
●   Nebenbei Informatik-Studium in Zwickau
●   Ab 2006 Fokussierung auf ganzheitliche Softwarequalität
●   Nebenbei Master-Studium in Zwickau
●   2008-2011 Software-Architekt bei AUDI
●   Seit 2011 Scrum Master bei Saxonia Systems
●   Dozent bei Open Source School (Test Driven Development, UML)
●   Nebenbei MBA-Studium in Leipzig
●   Seit einigen Jahre Speaker auf Linux- und Open Source Konferenzen
●   Contributer für FreeBSD und openSUSE




                                                                                  6
Und was qualifiziert uns für diese Vorlesung?




                                                7
Unterschiede im Ablauf




                         8
Vorbereitung & Ablauf


●   2 Wochen vor jeder Vorlesung geben wir eine Reihe von Artikeln aus
●   1 Woche vor jeder Vorlesung muss jeder zu jedem Artikel drei qualifizierte Fragen stellen
●   Denn: Ein Drittel der Vorlesung basiert auf Euren Fragen!

●   Aktive Teilnahme ist Zulassungsvoraussetzung zur Prüfung!
●   Wer mehr als einmal keine Fragen schickt, kann nicht an der Prüfung teilnehmen.

●   Jede Vorlesung gliedert sich in drei Teile
●   Theorieteil – aktueller Stand der Forschung, Begriffe, Hypothesen
●   Praxisteil – was passiert im Projekt, Anwendung der Theorie
●   Teilnahme – Diskussion und Beantworten der Fragen, Erfahrungsberichte




                                                                                                9
Nach der Vorlesung...




...ist jeder verpflichtet seinen ROTI anzugeben!




                                                   10
Und das Projekt sowie die Prüfung?


●   Finden statt
●   Projekt
     ●   Jeder verfasst ein Paper.
     ●   Zur Form:
          ●   8-12 Seiten A4
          ●   Arial, Schriftgröße 11
          ●   1,5-zeilig
     ●   Zum Inhalt:
          ●   Aus der Vorlesung werden zwei Aspekte von Softwarequalität ausgewählt
          ●   Aus seinem reichhaltigen Erfahrungsschatz wählt jeder ein Projekt
          ●   Das Projekt wird unter diesen beiden Aspekten reflektiert
          ●   Was lief gut? Was lief schlecht?
          ●   Was würde man nach der Vorlesung anders machen?
●   Prüfung: mündlich



                                                                                      11
Und die Inhalte?




                   12
Softwarequalität aus unterschiedlichen Perspektiven



●   Die Macht der Zahlen: Source Code Metriken

●   Die falsch verstandene Methode: Testen wird überbewertet

●   Qualitätsaspekte im Requirements Engineering

●   Denn sie wissen nicht was sie tun: Modellierung

●   Wir bauen auf, wir reißen nieder: Architektur und Qualität

●   Retrospektiven: Auf dem besten Weg bleiben




                                                                       13
Einführung und Grundlagen




                            14
Regelfall ???




                15
Qualität




●   Was ist das ?

●   Wer spielt mit ?




                                  16
Softwarequalität – was ist das?


●   Qualität entsteht nicht von selbst.
●   Qualität bezieht sich auf Produkte und Prozesse und Projekte.

●   Qualität muss definiert werden.
●   Qualität muss konstruiert werden.



●   Versuch einer Definition (nach [Wallmüller])
    ist die Summe aller relevanten Eigenschaften eines Software-Produkts, mit denen seine
    Kunden zufriedengestellt werden, und die Summe der dazu notwendigen Eigenschaften
    von Software-Prozessen wie z. B. erreichte Reifegrade, die zur Erstellung, zum Betrieb und
    zur Pflege gefordert werden.




                                                                                             17
Softwarequalität – was ist das?


●   Definition (ISO 9126)
    ist die Gesamtheit von Funktionen und Merkmalen eines Software-Produkts, das die
    Fähigkeit besitzt, angegebene oder implizierte Bedürfnisse zu befriedigen.



●   Was fehlt für eine praktische Verwendung?
     ●   Merkmale


●   Aber was sind nun wieder Merkmale?
     ●   Hier kann wieder ISO 9126 helfen
     ●   Unterscheide funktionale und nicht-funktionale Anforderungen




                                                                                       18
ISO/IEC 9126 bzw. ISO/IEC 25000


●   Eine Norm, die eins (von vielen) Modellen ist, dass Produktqualität und
    Qualitätsmerkmale beschreibt
●   DIN ISO/IEC 25000 Software-Engineering – Qualitätskriterien und Bewertung von
    Softwareprodukten (SQuaRE) – Leitfaden für SquaRE




                                                  http://www.ehealthkarriere.de/tag/iso-9126




                                                                                               19
Qualitätsbegriff aus verschiedenen Sichten


●   Produkt
     ●   Qualität ist präzise messbar
●   Anwender
     ●   Qualität wird vom Anwender festgelegt
●   Prozess (bzw. Hersteller)
     ●   Qualität im Entwicklungs-/Herstellungsprozess durch Kontrolle, Audits, Inspektionen
●   Preis/Nutzen
     ●   Verhältnis von Kosten, Nutzen und Qualität




                                                                                           20
Wechselwirkungen der Qualitätssichten




         [Wallmüller, Software Quality Engineering, Hanser-Verlag, 2011, S. 13]




                                                                                  21
Software-Entwicklung




                         Testen


Implementierung                          Anforderungen



                     Softwarequalität



  Modellierung                              Design


                      Konfigurieren




                                                         22
Prozessmodelle – nur ein paar




     [Wallmüller, Software Quality Engineering, Hanser-Verlag, 2011, S. 30]




                                                                              23
Qualitätsmanagement


●   Qualitätsplanung
     ●   Festlegen der Ziele, Prozesse und der notwendigen Ressourcen
●   Qualitätslenkung
     ●   Erfüllen der Qualitätsanforderungen
          ●   Präventiv
          ●   Konstruktiv
          ●   analytisch
●   Qualitätssicherung
     ●   Prüfung des QM
     ●   Dokumentation
     ●   Zertifizierung
     ●   Nachweis von Verbesserungsprogrammen inkl. Nachverfolgung
●   Qualitätsverbesserung




                                                                        24
Qualitätsprobleme - Architektur




                          "Hauptsache billig"
                          E.Rauschenbach
                          Deutscher Karikaturpreis 2003




                                                          25
Qualitätsprobleme – Ist vs Soll




Anforderungen
     des                                          Implementierte
   Kunden                                          Funktionalität




                                                                    26
Softwarequalität in der Praxis




                                 27
Thesen von Praktikern


●   Qualität kommt von Quälen
●   Qualität wird nicht gesichert, Qualität wird produziert
●   Qualität ist nicht verhandelbar
●   Qualität ist ein Prozess
●   Wer 80% anstrebt, bekommt auch nur 80% dieser 80% (das sind dann 64% ;-)
●   Die Kosten für Qualität sind konstant,
    die Kosten für fehlende Qualität wachsen exponentiell
●   Was an Qualität gespart wird, muss an Zeit investiert werden
●   Man kann Qualität nicht in Software hineintesten




                                                                               28
Thesen von Praktikern


●   Qualität kommt von Quälen
●   Qualität wird nicht gesichert, Qualität wird produziert
●   Qualität ist nicht verhandelbar
●   Qualität ist ein Prozess
●   Wer 80% anstrebt, bekommt auch nur 80% dieser 80% (das sind dann 64% ;-)
●   Die Kosten für Qualität sind konstant,
    die Kosten für fehlende Qualität wachsen exponentiell
●   Was an Qualität gespart wird, muss an Zeit investiert werden
●   Man kann Qualität nicht in Software hineintesten




                                                                               29
Zwei Geschichten aus dem wahren Leben



●   Die unerträgliche Leichtigkeit des Seins: 100% API-Dokumentation

●   Der Scrum-Dopplereffekt: Test Driven Sprint Planning




                                                                       30
Das magische Dreieck


●   Klassisches Projektmanagement definiert
    den Umfang von Projekten als konstant
●   Zeit, Kosten, Qualität sind verhandelbar
●   Auf Softwareprojekte praktisch nicht
    anwendbar
●   Reduktion der Qualität führt immer zu
    einer Erhöhung der Kosten und Zeit

●   Umfang sollte verhandelbar sein
●   Qualität ist die einzige echte Konstante



                                               Quelle: http://it-wissenschaft.de/333/magisches-dreieck-kosten-zeit-oder-qualitat/




                                                                                                                                    31
Wissen ist die einzige Ressource,
die sich vermehrt, wenn man sie teilt.




                                         32
Schneller Wissensaufbau in Teams


●   Aufteilen der Artikel
     ●   Jedes Teammitglied bearbeitet einen Artikel
     ●   Pro Artikel wird eine Zusammenfassung erstellt (s.u.)
     ●   Die Zusammenfassung wird im Team besprochen und Fragen geklärt
     ●   Anschließend kann jedes Teammitglied anhand der Zusammenfassung durch den
         Artikel navigieren und Details nachlesen
●   Bearbeiten eines Artikels
     ●   Artikel durchblättern und alle Überschriften in eine Mindmap packen
     ●   Jeden Abschnitt durchlesen und Fakten extrahieren
          ●   Worum geht es? Was wird erklärt? Warum ist das wichtig?
     ●   Erkenntnisse unter der jeweiligen Überschrift in die Mindmap stecken
     ●   Die Mindmap mit Verweisen ergänzen, wo es notwendig erscheint
     ●   Grafiken und Diagramme vor dem Team komplett entwickeln




                                                                                     33
Verwendung dieser Unterlagen


●   Wir stellen diese Unterlagen unter der Creative Commons Lizenz CC-BY-NC-SA zur allen
    am Thema Interessierten Verfügung.
●   Es ist erlaubt, die Unterlagen unter gleichen Bedingungen zu
     ●   kopieren
     ●   verteilen
     ●   übertragen und
     ●   adaptieren, wenn
●   die ursprünglichen Autoren genannt werden und
●   die Verwendung nicht zu kommerziellen Zwecken stattfindet.

●   Details zur Lizenz sind hier zu finden:
    http://creativecommons.org/licenses/by-nc-sa/3.0/




                                                                                           34

Weitere ähnliche Inhalte

Was ist angesagt?

Erfolgsfaktoren im Requirements Engineering
Erfolgsfaktoren im Requirements EngineeringErfolgsfaktoren im Requirements Engineering
Erfolgsfaktoren im Requirements EngineeringMarkus Unterauer
 
Perry pakull datenbank entwickler auf dem prüfstand präsentation
Perry pakull datenbank entwickler auf dem prüfstand präsentationPerry pakull datenbank entwickler auf dem prüfstand präsentation
Perry pakull datenbank entwickler auf dem prüfstand präsentationTrivadis
 
"Erfolgreiche Strategien zur Migration veralteter Software" Präsentation vom ...
"Erfolgreiche Strategien zur Migration veralteter Software" Präsentation vom ..."Erfolgreiche Strategien zur Migration veralteter Software" Präsentation vom ...
"Erfolgreiche Strategien zur Migration veralteter Software" Präsentation vom ...Bernhard Schimunek
 
Agile Methoden als Diagnose-Tool für den sicherheitskritischen Bereich
Agile Methoden als Diagnose-Tool für den sicherheitskritischen BereichAgile Methoden als Diagnose-Tool für den sicherheitskritischen Bereich
Agile Methoden als Diagnose-Tool für den sicherheitskritischen BereichChristoph Schmiedinger
 
Individuelle Software Entwicklung
Individuelle Software EntwicklungIndividuelle Software Entwicklung
Individuelle Software EntwicklungDorie Fehlmann
 
Lean development 04
Lean development 04Lean development 04
Lean development 04SuperB2
 
C1 SetCon Broschüre Unternehmen
C1 SetCon Broschüre UnternehmenC1 SetCon Broschüre Unternehmen
C1 SetCon Broschüre UnternehmenC1 SetCon GmbH
 
KEGON Unternehmensdarstellung
KEGON UnternehmensdarstellungKEGON Unternehmensdarstellung
KEGON UnternehmensdarstellungKEGON AG
 
SwissQ Testing Trends & Benchmarks 2012 (Deutsch)
 SwissQ Testing Trends & Benchmarks 2012 (Deutsch) SwissQ Testing Trends & Benchmarks 2012 (Deutsch)
SwissQ Testing Trends & Benchmarks 2012 (Deutsch)SwissQ Consulting AG
 
KEGON agile entwicklung in großen Organisationen
KEGON agile entwicklung in großen OrganisationenKEGON agile entwicklung in großen Organisationen
KEGON agile entwicklung in großen OrganisationenKEGON AG
 
IA/ UX in Scrum Entwicklungs-Prozessen - 2009
IA/ UX in Scrum Entwicklungs-Prozessen - 2009IA/ UX in Scrum Entwicklungs-Prozessen - 2009
IA/ UX in Scrum Entwicklungs-Prozessen - 2009Wolf Noeding
 
Renato Stalder (Soreco Group)
Renato Stalder (Soreco Group)Renato Stalder (Soreco Group)
Renato Stalder (Soreco Group)Praxistage
 

Was ist angesagt? (17)

Geschäftsbereich Future Lab
Geschäftsbereich Future LabGeschäftsbereich Future Lab
Geschäftsbereich Future Lab
 
Erfolgsfaktoren im Requirements Engineering
Erfolgsfaktoren im Requirements EngineeringErfolgsfaktoren im Requirements Engineering
Erfolgsfaktoren im Requirements Engineering
 
Perry pakull datenbank entwickler auf dem prüfstand präsentation
Perry pakull datenbank entwickler auf dem prüfstand präsentationPerry pakull datenbank entwickler auf dem prüfstand präsentation
Perry pakull datenbank entwickler auf dem prüfstand präsentation
 
"Erfolgreiche Strategien zur Migration veralteter Software" Präsentation vom ...
"Erfolgreiche Strategien zur Migration veralteter Software" Präsentation vom ..."Erfolgreiche Strategien zur Migration veralteter Software" Präsentation vom ...
"Erfolgreiche Strategien zur Migration veralteter Software" Präsentation vom ...
 
2010 09 30 13-00 prof dieter fischer
2010 09 30 13-00 prof dieter fischer2010 09 30 13-00 prof dieter fischer
2010 09 30 13-00 prof dieter fischer
 
Requirements Engineering: Anforderungen dokumentieren, validieren und verwalten
Requirements Engineering: Anforderungen dokumentieren, validieren und verwaltenRequirements Engineering: Anforderungen dokumentieren, validieren und verwalten
Requirements Engineering: Anforderungen dokumentieren, validieren und verwalten
 
Agile Methoden als Diagnose-Tool für den sicherheitskritischen Bereich
Agile Methoden als Diagnose-Tool für den sicherheitskritischen BereichAgile Methoden als Diagnose-Tool für den sicherheitskritischen Bereich
Agile Methoden als Diagnose-Tool für den sicherheitskritischen Bereich
 
Soget Broschüre - Deutsch
Soget Broschüre - DeutschSoget Broschüre - Deutsch
Soget Broschüre - Deutsch
 
Individuelle Software Entwicklung
Individuelle Software EntwicklungIndividuelle Software Entwicklung
Individuelle Software Entwicklung
 
Lean development 04
Lean development 04Lean development 04
Lean development 04
 
C1 SetCon Broschüre Unternehmen
C1 SetCon Broschüre UnternehmenC1 SetCon Broschüre Unternehmen
C1 SetCon Broschüre Unternehmen
 
"Design & Generate": Standard ERP Systeme nach Mass
"Design & Generate": Standard ERP Systeme nach Mass"Design & Generate": Standard ERP Systeme nach Mass
"Design & Generate": Standard ERP Systeme nach Mass
 
KEGON Unternehmensdarstellung
KEGON UnternehmensdarstellungKEGON Unternehmensdarstellung
KEGON Unternehmensdarstellung
 
SwissQ Testing Trends & Benchmarks 2012 (Deutsch)
 SwissQ Testing Trends & Benchmarks 2012 (Deutsch) SwissQ Testing Trends & Benchmarks 2012 (Deutsch)
SwissQ Testing Trends & Benchmarks 2012 (Deutsch)
 
KEGON agile entwicklung in großen Organisationen
KEGON agile entwicklung in großen OrganisationenKEGON agile entwicklung in großen Organisationen
KEGON agile entwicklung in großen Organisationen
 
IA/ UX in Scrum Entwicklungs-Prozessen - 2009
IA/ UX in Scrum Entwicklungs-Prozessen - 2009IA/ UX in Scrum Entwicklungs-Prozessen - 2009
IA/ UX in Scrum Entwicklungs-Prozessen - 2009
 
Renato Stalder (Soreco Group)
Renato Stalder (Soreco Group)Renato Stalder (Soreco Group)
Renato Stalder (Soreco Group)
 

Ähnlich wie Softwarequalität - Einführung in eine neue Vorlesung

Einführung in die Software-Qualitätssicherung
Einführung in die Software-QualitätssicherungEinführung in die Software-Qualitätssicherung
Einführung in die Software-QualitätssicherungChristian Baranowski
 
Tipps für Requirements Management Tools
Tipps für Requirements Management ToolsTipps für Requirements Management Tools
Tipps für Requirements Management ToolsMarkus Unterauer
 
Agilität und Qualitätskriterien in der Softwareentwicklung
Agilität und Qualitätskriterien in der SoftwareentwicklungAgilität und Qualitätskriterien in der Softwareentwicklung
Agilität und Qualitätskriterien in der Softwareentwicklungrico.fritzsche
 
Software Quality Lab - Beratung und Training für mehr Qualität und Effizienz ...
Software Quality Lab - Beratung und Training für mehr Qualität und Effizienz ...Software Quality Lab - Beratung und Training für mehr Qualität und Effizienz ...
Software Quality Lab - Beratung und Training für mehr Qualität und Effizienz ...Markus Unterauer
 
The new job of qa was ein quality engineer zukünftig können muss
The new job of qa   was ein quality engineer zukünftig können mussThe new job of qa   was ein quality engineer zukünftig können muss
The new job of qa was ein quality engineer zukünftig können mussraezz
 
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
 
Scrum als agiles Vorgehensmodell für Programmierer
Scrum als agiles Vorgehensmodell für ProgrammiererScrum als agiles Vorgehensmodell für Programmierer
Scrum als agiles Vorgehensmodell für ProgrammiererTobias Schlüter
 
Von Scrum lernen - Anwendung agiler Prinzipien im User Centered Design
Von Scrum lernen - Anwendung agiler Prinzipien im User Centered DesignVon Scrum lernen - Anwendung agiler Prinzipien im User Centered Design
Von Scrum lernen - Anwendung agiler Prinzipien im User Centered DesigneResult_GmbH
 
Abenteuer Qualität in der SW-Wartung
Abenteuer Qualität in der SW-WartungAbenteuer Qualität in der SW-Wartung
Abenteuer Qualität in der SW-WartungErnest Wallmueller
 
Werkstattgespräch Agile Requirements Engineering
Werkstattgespräch Agile Requirements EngineeringWerkstattgespräch Agile Requirements Engineering
Werkstattgespräch Agile Requirements EngineeringuxHH
 
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-GroßprojekteAgil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-GroßprojekteQAware GmbH
 
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
 
Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)
Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)
Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)Florian Wolters
 
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-GroßprojekteAgil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-GroßprojekteQAware GmbH
 
Roadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht'sRoadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht'scamunda services GmbH
 
ASQF Dresden: Benötigen wir mit SCRUM noch einen Testmanager?
ASQF Dresden: Benötigen wir mit SCRUM noch einen Testmanager?ASQF Dresden: Benötigen wir mit SCRUM noch einen Testmanager?
ASQF Dresden: Benötigen wir mit SCRUM noch einen Testmanager?René Spengler
 
Wir erledigen alles sofort - Warum Qualität, Risikomanagement, Usability und...
Wir erledigen alles sofort - Warum Qualität, Risikomanagement, Usability und...Wir erledigen alles sofort - Warum Qualität, Risikomanagement, Usability und...
Wir erledigen alles sofort - Warum Qualität, Risikomanagement, Usability und...Marc Bless
 
Creasoft - Software QS Review
Creasoft - Software QS ReviewCreasoft - Software QS Review
Creasoft - Software QS ReviewCreasoft AG
 
2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität
2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität
2023-08_RPA-ChapterEvent_Überprüfung-der-CodequalitätFotiosKaramitsos
 

Ähnlich wie Softwarequalität - Einführung in eine neue Vorlesung (20)

Einführung in die Software-Qualitätssicherung
Einführung in die Software-QualitätssicherungEinführung in die Software-Qualitätssicherung
Einführung in die Software-Qualitätssicherung
 
Tipps für Requirements Management Tools
Tipps für Requirements Management ToolsTipps für Requirements Management Tools
Tipps für Requirements Management Tools
 
Agilität und Qualitätskriterien in der Softwareentwicklung
Agilität und Qualitätskriterien in der SoftwareentwicklungAgilität und Qualitätskriterien in der Softwareentwicklung
Agilität und Qualitätskriterien in der Softwareentwicklung
 
Software Quality Lab - Beratung und Training für mehr Qualität und Effizienz ...
Software Quality Lab - Beratung und Training für mehr Qualität und Effizienz ...Software Quality Lab - Beratung und Training für mehr Qualität und Effizienz ...
Software Quality Lab - Beratung und Training für mehr Qualität und Effizienz ...
 
The new job of qa was ein quality engineer zukünftig können muss
The new job of qa   was ein quality engineer zukünftig können mussThe new job of qa   was ein quality engineer zukünftig können muss
The new job of qa was ein quality engineer zukünftig können muss
 
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...
 
Scrum als agiles Vorgehensmodell für Programmierer
Scrum als agiles Vorgehensmodell für ProgrammiererScrum als agiles Vorgehensmodell für Programmierer
Scrum als agiles Vorgehensmodell für Programmierer
 
Von Scrum lernen - Anwendung agiler Prinzipien im User Centered Design
Von Scrum lernen - Anwendung agiler Prinzipien im User Centered DesignVon Scrum lernen - Anwendung agiler Prinzipien im User Centered Design
Von Scrum lernen - Anwendung agiler Prinzipien im User Centered Design
 
Abenteuer Qualität in der SW-Wartung
Abenteuer Qualität in der SW-WartungAbenteuer Qualität in der SW-Wartung
Abenteuer Qualität in der SW-Wartung
 
Werkstattgespräch Agile Requirements Engineering
Werkstattgespräch Agile Requirements EngineeringWerkstattgespräch Agile Requirements Engineering
Werkstattgespräch Agile Requirements Engineering
 
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-GroßprojekteAgil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
 
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
 
Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)
Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)
Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)
 
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-GroßprojekteAgil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
Agil zum Ziel: Erfolgsfaktoren für agile IT-Großprojekte
 
Zinit.leistungen.webentwicklung.v1.0.de
Zinit.leistungen.webentwicklung.v1.0.deZinit.leistungen.webentwicklung.v1.0.de
Zinit.leistungen.webentwicklung.v1.0.de
 
Roadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht'sRoadshow 2018 - Camunda in der Praxis: So geht's
Roadshow 2018 - Camunda in der Praxis: So geht's
 
ASQF Dresden: Benötigen wir mit SCRUM noch einen Testmanager?
ASQF Dresden: Benötigen wir mit SCRUM noch einen Testmanager?ASQF Dresden: Benötigen wir mit SCRUM noch einen Testmanager?
ASQF Dresden: Benötigen wir mit SCRUM noch einen Testmanager?
 
Wir erledigen alles sofort - Warum Qualität, Risikomanagement, Usability und...
Wir erledigen alles sofort - Warum Qualität, Risikomanagement, Usability und...Wir erledigen alles sofort - Warum Qualität, Risikomanagement, Usability und...
Wir erledigen alles sofort - Warum Qualität, Risikomanagement, Usability und...
 
Creasoft - Software QS Review
Creasoft - Software QS ReviewCreasoft - Software QS Review
Creasoft - Software QS Review
 
2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität
2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität
2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität
 

Mehr von Gerrit Beine

Auf Lesereise mit Frit und Fred
Auf Lesereise mit Frit und FredAuf Lesereise mit Frit und Fred
Auf Lesereise mit Frit und FredGerrit Beine
 
Mastering Cargo Cult
Mastering Cargo CultMastering Cargo Cult
Mastering Cargo CultGerrit Beine
 
Conway’s Law & Soziologie in der Software-Architektur
Conway’s Law & Soziologie in der Software-ArchitekturConway’s Law & Soziologie in der Software-Architektur
Conway’s Law & Soziologie in der Software-ArchitekturGerrit Beine
 
Beyond User Stories - Backlogs priorisieren, wenn es anspruchsvoll wird
Beyond User Stories - Backlogs priorisieren, wenn es anspruchsvoll wirdBeyond User Stories - Backlogs priorisieren, wenn es anspruchsvoll wird
Beyond User Stories - Backlogs priorisieren, wenn es anspruchsvoll wirdGerrit Beine
 
Mastering Cargo Cult - Dunning, Kruger & die Agile Bias Curve
Mastering Cargo Cult - Dunning, Kruger & die Agile Bias CurveMastering Cargo Cult - Dunning, Kruger & die Agile Bias Curve
Mastering Cargo Cult - Dunning, Kruger & die Agile Bias CurveGerrit Beine
 
Gut genug - Rahmenbedingungen für agile Architekturen
Gut genug - Rahmenbedingungen für agile ArchitekturenGut genug - Rahmenbedingungen für agile Architekturen
Gut genug - Rahmenbedingungen für agile ArchitekturenGerrit Beine
 
Beyond Agile – Ungewissheit mit der Real Option Theory meistern
Beyond Agile – Ungewissheit mit der Real Option Theory meisternBeyond Agile – Ungewissheit mit der Real Option Theory meistern
Beyond Agile – Ungewissheit mit der Real Option Theory meisternGerrit Beine
 
Backlog Priorisierung 2020: Wertmodelle & Simulationen von Intangibles zur Pr...
Backlog Priorisierung 2020: Wertmodelle & Simulationen von Intangibles zur Pr...Backlog Priorisierung 2020: Wertmodelle & Simulationen von Intangibles zur Pr...
Backlog Priorisierung 2020: Wertmodelle & Simulationen von Intangibles zur Pr...Gerrit Beine
 
Backlog Priorisierung mit Cost of Delay & Monte Carlo Simulationen
Backlog Priorisierung mit Cost of Delay & Monte Carlo SimulationenBacklog Priorisierung mit Cost of Delay & Monte Carlo Simulationen
Backlog Priorisierung mit Cost of Delay & Monte Carlo SimulationenGerrit Beine
 
Der hyperbolische Thread-Koeffizient
Der hyperbolische Thread-KoeffizientDer hyperbolische Thread-Koeffizient
Der hyperbolische Thread-KoeffizientGerrit Beine
 
Vom Projektleiter zum Product Owner
Vom Projektleiter zum Product OwnerVom Projektleiter zum Product Owner
Vom Projektleiter zum Product OwnerGerrit Beine
 
Die Testedimaryp - Über die Antimonie des agilen Testens in der Praxis
Die Testedimaryp - Über die Antimonie des agilen Testens in der PraxisDie Testedimaryp - Über die Antimonie des agilen Testens in der Praxis
Die Testedimaryp - Über die Antimonie des agilen Testens in der PraxisGerrit Beine
 
Vom Projektleiter zum Product Owner
Vom Projektleiter zum Product OwnerVom Projektleiter zum Product Owner
Vom Projektleiter zum Product OwnerGerrit Beine
 
Technische Schulden - mit Notizen
Technische Schulden - mit NotizenTechnische Schulden - mit Notizen
Technische Schulden - mit NotizenGerrit Beine
 
Technische Schulden
Technische SchuldenTechnische Schulden
Technische SchuldenGerrit Beine
 
Die Product Owner Toolbox
Die Product Owner ToolboxDie Product Owner Toolbox
Die Product Owner ToolboxGerrit Beine
 
Agile Coach zu werden ist nicht schwer... - mit Notizen
Agile Coach zu werden ist nicht schwer... - mit NotizenAgile Coach zu werden ist nicht schwer... - mit Notizen
Agile Coach zu werden ist nicht schwer... - mit NotizenGerrit Beine
 
Agile Coach zu werden ist nicht schwer...
Agile Coach zu werden ist nicht schwer...Agile Coach zu werden ist nicht schwer...
Agile Coach zu werden ist nicht schwer...Gerrit Beine
 

Mehr von Gerrit Beine (20)

Auf Lesereise mit Frit und Fred
Auf Lesereise mit Frit und FredAuf Lesereise mit Frit und Fred
Auf Lesereise mit Frit und Fred
 
Mastering Cargo Cult
Mastering Cargo CultMastering Cargo Cult
Mastering Cargo Cult
 
Conway’s Law & Soziologie in der Software-Architektur
Conway’s Law & Soziologie in der Software-ArchitekturConway’s Law & Soziologie in der Software-Architektur
Conway’s Law & Soziologie in der Software-Architektur
 
Beyond User Stories - Backlogs priorisieren, wenn es anspruchsvoll wird
Beyond User Stories - Backlogs priorisieren, wenn es anspruchsvoll wirdBeyond User Stories - Backlogs priorisieren, wenn es anspruchsvoll wird
Beyond User Stories - Backlogs priorisieren, wenn es anspruchsvoll wird
 
Mastering Cargo Cult - Dunning, Kruger & die Agile Bias Curve
Mastering Cargo Cult - Dunning, Kruger & die Agile Bias CurveMastering Cargo Cult - Dunning, Kruger & die Agile Bias Curve
Mastering Cargo Cult - Dunning, Kruger & die Agile Bias Curve
 
Gut genug - Rahmenbedingungen für agile Architekturen
Gut genug - Rahmenbedingungen für agile ArchitekturenGut genug - Rahmenbedingungen für agile Architekturen
Gut genug - Rahmenbedingungen für agile Architekturen
 
Beyond Agile – Ungewissheit mit der Real Option Theory meistern
Beyond Agile – Ungewissheit mit der Real Option Theory meisternBeyond Agile – Ungewissheit mit der Real Option Theory meistern
Beyond Agile – Ungewissheit mit der Real Option Theory meistern
 
Backlog Priorisierung 2020: Wertmodelle & Simulationen von Intangibles zur Pr...
Backlog Priorisierung 2020: Wertmodelle & Simulationen von Intangibles zur Pr...Backlog Priorisierung 2020: Wertmodelle & Simulationen von Intangibles zur Pr...
Backlog Priorisierung 2020: Wertmodelle & Simulationen von Intangibles zur Pr...
 
Backlog Priorisierung mit Cost of Delay & Monte Carlo Simulationen
Backlog Priorisierung mit Cost of Delay & Monte Carlo SimulationenBacklog Priorisierung mit Cost of Delay & Monte Carlo Simulationen
Backlog Priorisierung mit Cost of Delay & Monte Carlo Simulationen
 
Der hyperbolische Thread-Koeffizient
Der hyperbolische Thread-KoeffizientDer hyperbolische Thread-Koeffizient
Der hyperbolische Thread-Koeffizient
 
Broken by Design
Broken by DesignBroken by Design
Broken by Design
 
Vom Projektleiter zum Product Owner
Vom Projektleiter zum Product OwnerVom Projektleiter zum Product Owner
Vom Projektleiter zum Product Owner
 
Die Testedimaryp - Über die Antimonie des agilen Testens in der Praxis
Die Testedimaryp - Über die Antimonie des agilen Testens in der PraxisDie Testedimaryp - Über die Antimonie des agilen Testens in der Praxis
Die Testedimaryp - Über die Antimonie des agilen Testens in der Praxis
 
Vom Projektleiter zum Product Owner
Vom Projektleiter zum Product OwnerVom Projektleiter zum Product Owner
Vom Projektleiter zum Product Owner
 
Antifragilität
AntifragilitätAntifragilität
Antifragilität
 
Technische Schulden - mit Notizen
Technische Schulden - mit NotizenTechnische Schulden - mit Notizen
Technische Schulden - mit Notizen
 
Technische Schulden
Technische SchuldenTechnische Schulden
Technische Schulden
 
Die Product Owner Toolbox
Die Product Owner ToolboxDie Product Owner Toolbox
Die Product Owner Toolbox
 
Agile Coach zu werden ist nicht schwer... - mit Notizen
Agile Coach zu werden ist nicht schwer... - mit NotizenAgile Coach zu werden ist nicht schwer... - mit Notizen
Agile Coach zu werden ist nicht schwer... - mit Notizen
 
Agile Coach zu werden ist nicht schwer...
Agile Coach zu werden ist nicht schwer...Agile Coach zu werden ist nicht schwer...
Agile Coach zu werden ist nicht schwer...
 

Softwarequalität - Einführung in eine neue Vorlesung

  • 1. Softwarequalität Einführung in eine neue Vorlesung Prof. Dr. Wolfgang Golubski Gerrit Beine, M.Sc. golubski@fh-zwickau.de mail@gerritbeine.com 1
  • 3. ROTI Maximise Your Return On Time Invested! 3
  • 5. Wolfgang Golubski, Prof. Dr. rer.nat. habil. ● Jahrgang 1960 ● Seit 2004 an der Westsächsischen Hochschule Zwickau ● Aktivitäten und Forschung auf den Gebieten ● Software-Entwicklung und -technologien und -Architekturen ● von Systems Engineering über Modellierung zum Programm ● Seit Anfang der 80er Software- und Tool-Entwicklung, auch im industriellen Umfeld ● Projektleitung in verschiedenen Vorhaben ● Objekt-orientierte Sprachen (Smalltalk-80, Eiffel, Java, JEE, etc.) und Methoden sowie Modell-getriebene Entwicklung ● Zahlreiche (wissenschaftliche) Veröffentlichungen zu den Themen „Programmiersprachen und Modell-getriebene Software-Entwicklung“ 5
  • 6. Gerrit Beine, M.Sc. ● Jahrgang 1980 ● Selbständig seit 1998, zunächst im Bereich Linux/Unix Support ● Ab 2000 Einführung von Agilen Methoden, Test Driven Development, Continuous Integration bei verschiedenen Unternehmen ● Nebenbei Informatik-Studium in Zwickau ● Ab 2006 Fokussierung auf ganzheitliche Softwarequalität ● Nebenbei Master-Studium in Zwickau ● 2008-2011 Software-Architekt bei AUDI ● Seit 2011 Scrum Master bei Saxonia Systems ● Dozent bei Open Source School (Test Driven Development, UML) ● Nebenbei MBA-Studium in Leipzig ● Seit einigen Jahre Speaker auf Linux- und Open Source Konferenzen ● Contributer für FreeBSD und openSUSE 6
  • 7. Und was qualifiziert uns für diese Vorlesung? 7
  • 9. Vorbereitung & Ablauf ● 2 Wochen vor jeder Vorlesung geben wir eine Reihe von Artikeln aus ● 1 Woche vor jeder Vorlesung muss jeder zu jedem Artikel drei qualifizierte Fragen stellen ● Denn: Ein Drittel der Vorlesung basiert auf Euren Fragen! ● Aktive Teilnahme ist Zulassungsvoraussetzung zur Prüfung! ● Wer mehr als einmal keine Fragen schickt, kann nicht an der Prüfung teilnehmen. ● Jede Vorlesung gliedert sich in drei Teile ● Theorieteil – aktueller Stand der Forschung, Begriffe, Hypothesen ● Praxisteil – was passiert im Projekt, Anwendung der Theorie ● Teilnahme – Diskussion und Beantworten der Fragen, Erfahrungsberichte 9
  • 10. Nach der Vorlesung... ...ist jeder verpflichtet seinen ROTI anzugeben! 10
  • 11. Und das Projekt sowie die Prüfung? ● Finden statt ● Projekt ● Jeder verfasst ein Paper. ● Zur Form: ● 8-12 Seiten A4 ● Arial, Schriftgröße 11 ● 1,5-zeilig ● Zum Inhalt: ● Aus der Vorlesung werden zwei Aspekte von Softwarequalität ausgewählt ● Aus seinem reichhaltigen Erfahrungsschatz wählt jeder ein Projekt ● Das Projekt wird unter diesen beiden Aspekten reflektiert ● Was lief gut? Was lief schlecht? ● Was würde man nach der Vorlesung anders machen? ● Prüfung: mündlich 11
  • 13. Softwarequalität aus unterschiedlichen Perspektiven ● Die Macht der Zahlen: Source Code Metriken ● Die falsch verstandene Methode: Testen wird überbewertet ● Qualitätsaspekte im Requirements Engineering ● Denn sie wissen nicht was sie tun: Modellierung ● Wir bauen auf, wir reißen nieder: Architektur und Qualität ● Retrospektiven: Auf dem besten Weg bleiben 13
  • 16. Qualität ● Was ist das ? ● Wer spielt mit ? 16
  • 17. Softwarequalität – was ist das? ● Qualität entsteht nicht von selbst. ● Qualität bezieht sich auf Produkte und Prozesse und Projekte. ● Qualität muss definiert werden. ● Qualität muss konstruiert werden. ● Versuch einer Definition (nach [Wallmüller]) ist die Summe aller relevanten Eigenschaften eines Software-Produkts, mit denen seine Kunden zufriedengestellt werden, und die Summe der dazu notwendigen Eigenschaften von Software-Prozessen wie z. B. erreichte Reifegrade, die zur Erstellung, zum Betrieb und zur Pflege gefordert werden. 17
  • 18. Softwarequalität – was ist das? ● Definition (ISO 9126) ist die Gesamtheit von Funktionen und Merkmalen eines Software-Produkts, das die Fähigkeit besitzt, angegebene oder implizierte Bedürfnisse zu befriedigen. ● Was fehlt für eine praktische Verwendung? ● Merkmale ● Aber was sind nun wieder Merkmale? ● Hier kann wieder ISO 9126 helfen ● Unterscheide funktionale und nicht-funktionale Anforderungen 18
  • 19. ISO/IEC 9126 bzw. ISO/IEC 25000 ● Eine Norm, die eins (von vielen) Modellen ist, dass Produktqualität und Qualitätsmerkmale beschreibt ● DIN ISO/IEC 25000 Software-Engineering – Qualitätskriterien und Bewertung von Softwareprodukten (SQuaRE) – Leitfaden für SquaRE http://www.ehealthkarriere.de/tag/iso-9126 19
  • 20. Qualitätsbegriff aus verschiedenen Sichten ● Produkt ● Qualität ist präzise messbar ● Anwender ● Qualität wird vom Anwender festgelegt ● Prozess (bzw. Hersteller) ● Qualität im Entwicklungs-/Herstellungsprozess durch Kontrolle, Audits, Inspektionen ● Preis/Nutzen ● Verhältnis von Kosten, Nutzen und Qualität 20
  • 21. Wechselwirkungen der Qualitätssichten [Wallmüller, Software Quality Engineering, Hanser-Verlag, 2011, S. 13] 21
  • 22. Software-Entwicklung Testen Implementierung Anforderungen Softwarequalität Modellierung Design Konfigurieren 22
  • 23. Prozessmodelle – nur ein paar [Wallmüller, Software Quality Engineering, Hanser-Verlag, 2011, S. 30] 23
  • 24. Qualitätsmanagement ● Qualitätsplanung ● Festlegen der Ziele, Prozesse und der notwendigen Ressourcen ● Qualitätslenkung ● Erfüllen der Qualitätsanforderungen ● Präventiv ● Konstruktiv ● analytisch ● Qualitätssicherung ● Prüfung des QM ● Dokumentation ● Zertifizierung ● Nachweis von Verbesserungsprogrammen inkl. Nachverfolgung ● Qualitätsverbesserung 24
  • 25. Qualitätsprobleme - Architektur "Hauptsache billig" E.Rauschenbach Deutscher Karikaturpreis 2003 25
  • 26. Qualitätsprobleme – Ist vs Soll Anforderungen des Implementierte Kunden Funktionalität 26
  • 28. Thesen von Praktikern ● Qualität kommt von Quälen ● Qualität wird nicht gesichert, Qualität wird produziert ● Qualität ist nicht verhandelbar ● Qualität ist ein Prozess ● Wer 80% anstrebt, bekommt auch nur 80% dieser 80% (das sind dann 64% ;-) ● Die Kosten für Qualität sind konstant, die Kosten für fehlende Qualität wachsen exponentiell ● Was an Qualität gespart wird, muss an Zeit investiert werden ● Man kann Qualität nicht in Software hineintesten 28
  • 29. Thesen von Praktikern ● Qualität kommt von Quälen ● Qualität wird nicht gesichert, Qualität wird produziert ● Qualität ist nicht verhandelbar ● Qualität ist ein Prozess ● Wer 80% anstrebt, bekommt auch nur 80% dieser 80% (das sind dann 64% ;-) ● Die Kosten für Qualität sind konstant, die Kosten für fehlende Qualität wachsen exponentiell ● Was an Qualität gespart wird, muss an Zeit investiert werden ● Man kann Qualität nicht in Software hineintesten 29
  • 30. Zwei Geschichten aus dem wahren Leben ● Die unerträgliche Leichtigkeit des Seins: 100% API-Dokumentation ● Der Scrum-Dopplereffekt: Test Driven Sprint Planning 30
  • 31. Das magische Dreieck ● Klassisches Projektmanagement definiert den Umfang von Projekten als konstant ● Zeit, Kosten, Qualität sind verhandelbar ● Auf Softwareprojekte praktisch nicht anwendbar ● Reduktion der Qualität führt immer zu einer Erhöhung der Kosten und Zeit ● Umfang sollte verhandelbar sein ● Qualität ist die einzige echte Konstante Quelle: http://it-wissenschaft.de/333/magisches-dreieck-kosten-zeit-oder-qualitat/ 31
  • 32. Wissen ist die einzige Ressource, die sich vermehrt, wenn man sie teilt. 32
  • 33. Schneller Wissensaufbau in Teams ● Aufteilen der Artikel ● Jedes Teammitglied bearbeitet einen Artikel ● Pro Artikel wird eine Zusammenfassung erstellt (s.u.) ● Die Zusammenfassung wird im Team besprochen und Fragen geklärt ● Anschließend kann jedes Teammitglied anhand der Zusammenfassung durch den Artikel navigieren und Details nachlesen ● Bearbeiten eines Artikels ● Artikel durchblättern und alle Überschriften in eine Mindmap packen ● Jeden Abschnitt durchlesen und Fakten extrahieren ● Worum geht es? Was wird erklärt? Warum ist das wichtig? ● Erkenntnisse unter der jeweiligen Überschrift in die Mindmap stecken ● Die Mindmap mit Verweisen ergänzen, wo es notwendig erscheint ● Grafiken und Diagramme vor dem Team komplett entwickeln 33
  • 34. Verwendung dieser Unterlagen ● Wir stellen diese Unterlagen unter der Creative Commons Lizenz CC-BY-NC-SA zur allen am Thema Interessierten Verfügung. ● Es ist erlaubt, die Unterlagen unter gleichen Bedingungen zu ● kopieren ● verteilen ● übertragen und ● adaptieren, wenn ● die ursprünglichen Autoren genannt werden und ● die Verwendung nicht zu kommerziellen Zwecken stattfindet. ● Details zur Lizenz sind hier zu finden: http://creativecommons.org/licenses/by-nc-sa/3.0/ 34