SlideShare une entreprise Scribd logo
1  sur  57
Qualität stinkt! Manchmal.
Die Evolution der Qualitätssicherung.

Torsten Franz. Nils Langner.
Developer Conference Hamburg, 08.11.2013
Warum.
Das goldene Warum-Schild.
Qualität stinkt! Manchmal.

Fragen stellen! Wir haben den Anspruch alles was wir machen auch Begründen zu

können.

2
Qualität stinkt! Manchmal.

Agenda.

Homo
Testnix.

Homo
Testus.

Homo
Qualitätus.

Homo
Futuris.

3
Qualität stinkt! Manchmal.

Wir.

4
Qualität stinkt! Manchmal.

Das kleine Wir.

 Leitung Qualitätsmanagement Gruner + Jahr
Digital GmbH Studium Informatik (B.Sc.) an der
Universität Freiburg


ISTQB zertifiziert






Softwareprojekte im Open-Source-Bereich
Autor für diverse Fachmagazine
Sprecher auf Konferenzen
Buchautor



Twitter: @phphatesme



Gewinner Malwettbewerb Grundschule Haag i. OB

5
Qualität stinkt! Manchmal.

Das kleine Wir.

 Qualitätsmanagement Gruner + Jahr Digital
GmbH
Sparkassenkaufmann


ISTQB zertifiziert





Ubuntu Member (Projekt: ubuntuusers.de)
Autor für diverse Fachmagazine
Sprecher auf Konferenzen



Twitter: @toddyfranz



Seepferdchen in der dritten Klasse

6
Qualität stinkt! Manchmal.

Das große Wir.

 Gruner + Jahr
Die Gruner + Jahr AG & Co KG ist Europas größtes Druck- und Verlagshaus.
500 Magazine und digitale Angebote Stern, Financial Times Deutschland, Eltern, Brigitte, Gala, Essen&Trinken, Neon,
Business Punk, Nido, Beef, Häuser, Schöner Wohnen, GEO, Capital, Börse Online, chefkoch, roomido
Mitarbeiter 11.585, in Hamburg circa 3.000



In der G+J Digital GmbH sind sämtliche Digital-Aktivitäten der Markenwebsites und deren Mobile- Auftritte von
Gruner + Jahr gebündelt.

7
Das große Wir.
Qualität stinkt! Manchmal.

Das große Wir.

 Gruner + Jahr
Die Gruner + Jahr AG & Co KG ist Europas größtes Druck- und
Verlagshaus.






Ganz toll.
Super nett.
Eine Menge Magazine.
Viel Spaß.
Yeah!

9
Qualität stinkt! Manchmal.

Homo Testnix.

Homo
Testnix.

Homo
Testus.

Homo
Qualitätus.

Homo
Futuris.

10
Qualität stinkt! Manchmal.

Homo Testnix. Evolution.
Banana?!?

11
Qualität stinkt! Manchmal.

Homo Testnix. Der Auftrag.

Aus Stern wird Stern.de.

12
Qualität stinkt! Manchmal.

Homo Testnix. Entwicklungsprozess.

Auftrag

Programmierung

Testen

Livestellen

13
Qualität stinkt! Manchmal.

Homo Testnix. Testen.

14
Qualität stinkt! Manchmal.

Homo Testnix. Bewertung.

Geschwindigkeit

•
•

Schnelle Reaktionszeiten
Minimaler „Deploymentprozess“

Qualität

•
•
•
•

Produkt nach einiger Zeit nicht mehr wartbar
Hohe Softwareerosion
Keine hohe Performance
Häufig Fehler im Livesystem

15
Qualität stinkt! Manchmal.

Homo Testnix. Umfrage.
Wer arbeitet nach
diesem Verfahren?

16
Qualität stinkt! Manchmal.

Homo Testus.

Homo
Testnix.

Homo
Testus.

Homo
Qualitätus.

Homo
Futuris.

17
Qualität stinkt! Manchmal.

Homo Testus. Evolution.
Schlechte Qualität,
keine Banana!?!

18
Qualität stinkt! Manchmal.

Homo Testus. Der Auftrag.

Aus Stern wird Stern.de.

19
Qualität stinkt! Manchmal.

Homo Testus. Entwicklungsprozess.

Programmierung
Auftrag

Abnahme

Livestellen

Testen

Falls man es nicht erkennt: Das soll Scrum sein.

20
Qualität stinkt! Manchmal.

Homo Testus. Testen.

21
Qualität stinkt! Manchmal.

Homo Testus. Testen.
Anwendungsfallbasierende Systemtests.
Motivation.
Überprüfung auf funktionale Korrektheit einer Anwendung bzw. einer Teilkomponente.

Beschreibung.
Testen anhand von Testplänen, welche aus den funktionalen Anforderungen abgeleitet werden. Dies kann
manuell oder automatisiert geschehen.

Softwarelebenszyklus.
•
•

Änderungsnachtest
Änderung am Source-Code triggert den Durchlauf eines Teil-Systemtests.
Vollständiger Regressionstest
Erstellung eines Releases triggert den Durchlauf eines vollständigen Systemtests.

Metriken.
Anzahl Fehler (absolut/prozentual), Steigung Fehlerrate.

Tools.
Confluence, Google-Docs, Excel, LiveTest2, Selenium, QF-Test, Jira

22
Qualität stinkt! Manchmal.

Homo Testus. Testen.

23
Qualität stinkt! Manchmal.

Homo Testus. Testen.
Last- und Performancetests.
Motivation.
Berechenbares Last- und Performanceverhalten ist wichtig für den Betrieb einer Webseite.

Beschreibung.
Testen der Antwortzeiten und Status der Seiten einer Webanwendung unter Last.

Softwarelebenszyklus.
Erstellung eines Releases triggert den Durchlauf eines Lasttests.

Metriken.
Anzahl Fehlercodes (absolut/prozentual), Anzahl Requests/Stunde, Antwortzeiten.

Tools.
Apache JMeter, Jmmd.

24
Qualität stinkt! Manchmal.

Homo Testus. Testen.

25
Qualität stinkt! Manchmal.

Homo Testus. Testen.
Unit Tests.
Motivation.
Korrekte Funktionsfähigkeit einzelner Module muss konstant
gewährleistet werden.
Beschreibung.
Ein Modultest wird angewendet, um die funktionalen Einzelteile
('Module') von Computerprogrammen zu testen, d. h. sie auf korrekte
Funktionalität zu prüfen.
Softwarelebenszyklus.
Permanent während der Entwicklung.

Metriken.
Anzahl Fehler (absolut/prozentual)
Tools.
PHPUnit, mocha, jsUnit, Bamboo.
26
Qualität stinkt! Manchmal.

Homo Testus. Testen.

27
Qualität stinkt! Manchmal.

Homo Testus. Testen.

BDD, Zephyr, Statische Codeanalyse, Ranorex, GrayLog2, Symfony Functional

Testing, LiveTest2, Pdepend, PHPCPD, Bamboo, Jenkins, CodeSniffer,
CodeFormatter, Zend Studio (standardisierte Entwicklungsumgebung),
Softwaremetriken, Testival, Code Reviews, Architektur Reviews, Visual
Regression Tests, php lint, XML-Validierung, Burb-Suite, Security-Audits,
Selenium, HTML-Validierung, JSON-Validierung, Dev/Stage/Live-Systeme, …

28
Qualität stinkt! Manchmal.

Homo Testus. Bewertung.

Geschwindigkeit

•
•

Langsame Entwicklung
Aufwendiger Deploymentprozess

Qualität

•
•
•

Kaum Softwareerosion
Hohe Performance
Wenige Fehler im Livesystem

29
Qualität stinkt! Manchmal.

Homo Testus. Umfrage.
Wer arbeitet nach
diesem Verfahren?

30
Qualität stinkt! Manchmal.

Homo Qualitätus.

Homo
Testnix.

Homo
Testus.

Homo
Qualitätus.

Homo
Futuris.

31
Qualität stinkt! Manchmal.

Homo Qualitätus. Evolution.
Mehr Qualität !=
Mehr Banana

32
Qualität stinkt! Manchmal.

Homo Qualitätus. Qualität.

„Grad, in dem ein Satz inhärenter Merkmale Anforderungen erfüllt.“
Norm EN ISO 9000:2005, „Qualitätsmanagementnorm“

„Übereinstimmung von Leistungen mit Ansprüchen.“
Gabler Wirtschaftslexikon

33
Qualität stinkt! Manchmal.

Homo Qualitätus. No Risk no Test.

34
Qualität stinkt! Manchmal.

Homo Qualitätus. Schnittmenge.

Funktionalität

Zuverlässigkeit

Effizienz

Testen

Relevant

Hohes Risiko

Übertragbarkeit
Benutzbarkeit

Wartbarkeit

Qualitätsmerkmale nach ISO/IEC 9126

35
Qualität stinkt! Manchmal.

Homo Qualitätus. Der Auftrag.

Aus Stern wird Stern.de.

36
Qualität stinkt! Manchmal.

Homo Testus. Entwicklungsprozess.

Programmierung
Auftrag

Abnahme

Livestellen

Testen

Falls man es nicht erkennt: Das soll Scrum sein.

37
Qualität stinkt! Manchmal.

Homo Testus. Bewertung.

Geschwindigkeit

•

Gesteigerte Geschwindigkeit durch Definition der Qualitätsziele und Risiken.

Qualität

•

Alles relevante und risikobehaftete abgedeckt.

38
Qualität stinkt! Manchmal.

Homo Qualitätus. Umfrage.
Wer arbeitet nach
diesem Verfahren?

39
Qualität stinkt! Manchmal.

Homo Futuris.

Homo
Testnix.

Homo
Testus.

Homo
Qualitätus.

Homo
Futuris.

40
Qualität stinkt! Manchmal.

Homo Futuris. Evolutionsschritt.

Dinge richtig machen
und die richtigen Dinge
machen ist etwas
Unterschiedliches.

41
Qualität stinkt! Manchmal.

Homo Futuris. Evolutionsschritt.
Chaos.

42
Qualität stinkt! Manchmal.

Homo Futuris. Evolutionsschritt.
Chaos.
Features / Functions used in a typical System
Always
7%
Often
13%
Never
45%
Sometimes
16%

Rarely
19%
Standish Group Study reported ad XP2002 by Jim Johnson

43
Qualität stinkt! Manchmal.

Homo Futuris. Evolutionsschritt.
Chaos.
Wenn es niemand
nutzt, muss es dann
effizient sein?

Wenn es niemand
nutzt, muss es dann
funktionieren?

Wenn es niemand
nutzt, muss es dann
wartbar sein?

Wenn es niemand
nutzt, muss es robust
sein?

44
Qualität stinkt! Manchmal.

Homo Futuris. Evolutionsschritt.
Chaos-Schnittmenge
Erfolgreich

Testen

Relevant
Hohes Risiko

45
Qualität stinkt! Manchmal.

Homo Futuris. Der Auftrag.

Aus Stern wird Stern.de.

46
Qualität stinkt! Manchmal.

Homo Futuris. Entwicklungsprozess.
Homo Testnix trifft Homo Qualitätus.

Hallo!
Banana ?!?

47
Qualität stinkt! Manchmal.

Homo Futuris. Entwicklungsprozess.
Phase 1
Auftrag

Phase 2

Programmierung

Testen

Livestellen

Programmierung
Auftrag

Abnahme

Livestellen

Testen

48
Qualität stinkt! Manchmal.

Homo Futuris. Entwicklungsprozess.
Umdenken.

49
Qualität stinkt! Manchmal.

Homo Futuris. Entwicklungsprozess.
Umdenken.

 Falls etwas erfolgreich ist, muss es neu gemacht werden (bzw. Refactoring).
 Features, die nicht erfolgreich sind, können/sollten abgeschaltet werden

„Technisch einfach, aber schwer in die Köpfe

der Projektbeteiligten reinzubekommen“
R. Fahrung, 2013

50
Qualität stinkt! Manchmal.

Homo Futuris. Bewertung.

Geschwindigkeit

•

Hohe und konstante Geschwindigkeit bei neuen Features.

Qualität

•

Hohe Qualität bei Komponenten, die bewiesen haben, dass sie es wert sind.

51
Qualität stinkt! Manchmal.

Homo Futuris. Umfrage.
Wer ist alles ein Homo
Futuris?

52
Qualität stinkt! Manchmal.

Fazit.

cydonna / photocase.com

53
Qualität stinkt! Manchmal.

Fazit. Evolution.

Homo
Testnix.

Homo
Testus.

Homo
Qualitätus.

Homo
Futuris.

54
Qualität stinkt! Manchmal.

Fazit.

 Es gibt jede Menge guter Testwerkzeuge auf dem Markt
 Was hohe Qualität für ein Produkt bedeutet entscheidet man selbst.
 Sehr große Teile einer Applikation werden nicht verwendet.
 Wichtige Bestandteile einer Applikation sollten hochwertig sein.

55
Qualität stinkt! Manchmal.

Fragen?

cydonna / photocase.com

56
Qualität stinkt! Manchmal.

Danke.

57

Contenu connexe

En vedette

Test Management & Automation with JIRA
Test Management & Automation with JIRATest Management & Automation with JIRA
Test Management & Automation with JIRAXpand IT
 
Jira as a Test Management Tool
Jira as a Test Management ToolJira as a Test Management Tool
Jira as a Test Management ToolXpand IT
 
1 Quality Assurance Presentation
1 Quality Assurance Presentation1 Quality Assurance Presentation
1 Quality Assurance Presentationguest337c19
 
ISO 9000
ISO 9000ISO 9000
ISO 900017somya
 
Quality Assurance and Software Testing
Quality Assurance and Software TestingQuality Assurance and Software Testing
Quality Assurance and Software Testingpingkapil
 
Introduction To Software Quality Assurance
Introduction To Software Quality AssuranceIntroduction To Software Quality Assurance
Introduction To Software Quality Assuranceruth_reategui
 
Qualitätsmanagement
QualitätsmanagementQualitätsmanagement
Qualitätsmanagementguest1a1762
 
Innovación sostenible azti
Innovación sostenible aztiInnovación sostenible azti
Innovación sostenible aztiRogelio Pozo
 
Apres 3e choisir_voie_domaine_mars_2014
Apres 3e choisir_voie_domaine_mars_2014Apres 3e choisir_voie_domaine_mars_2014
Apres 3e choisir_voie_domaine_mars_2014FCPEAusone
 
Non Profit Camp // Aachen // 31.01.2015
Non Profit Camp // Aachen // 31.01.2015Non Profit Camp // Aachen // 31.01.2015
Non Profit Camp // Aachen // 31.01.2015Oliver Weyer
 
Quand la nature se déchaine
Quand la nature se déchaineQuand la nature se déchaine
Quand la nature se déchaineguest84168a
 

En vedette (15)

Test Management & Automation with JIRA
Test Management & Automation with JIRATest Management & Automation with JIRA
Test Management & Automation with JIRA
 
Jira as a Test Management Tool
Jira as a Test Management ToolJira as a Test Management Tool
Jira as a Test Management Tool
 
Quality assurance
Quality assuranceQuality assurance
Quality assurance
 
1 Quality Assurance Presentation
1 Quality Assurance Presentation1 Quality Assurance Presentation
1 Quality Assurance Presentation
 
ISO 9000
ISO 9000ISO 9000
ISO 9000
 
Quality Assurance and Software Testing
Quality Assurance and Software TestingQuality Assurance and Software Testing
Quality Assurance and Software Testing
 
Introduction To Software Quality Assurance
Introduction To Software Quality AssuranceIntroduction To Software Quality Assurance
Introduction To Software Quality Assurance
 
Qualitätsmanagement
QualitätsmanagementQualitätsmanagement
Qualitätsmanagement
 
Presentation sejour hpi
Presentation sejour hpiPresentation sejour hpi
Presentation sejour hpi
 
Innovación sostenible azti
Innovación sostenible aztiInnovación sostenible azti
Innovación sostenible azti
 
Apres 3e choisir_voie_domaine_mars_2014
Apres 3e choisir_voie_domaine_mars_2014Apres 3e choisir_voie_domaine_mars_2014
Apres 3e choisir_voie_domaine_mars_2014
 
Non Profit Camp // Aachen // 31.01.2015
Non Profit Camp // Aachen // 31.01.2015Non Profit Camp // Aachen // 31.01.2015
Non Profit Camp // Aachen // 31.01.2015
 
Quand la nature se déchaine
Quand la nature se déchaineQuand la nature se déchaine
Quand la nature se déchaine
 
manuscrit these Ophelie Philipot
manuscrit these Ophelie Philipotmanuscrit these Ophelie Philipot
manuscrit these Ophelie Philipot
 
Interventio Orale
Interventio OraleInterventio Orale
Interventio Orale
 

Similaire à Qualität stinkt! Manchmal.

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
 
Low Budget Usability Testing Webtreff Konstanz Patric Schmid Benutzerzentrale
Low Budget Usability Testing Webtreff Konstanz Patric Schmid BenutzerzentraleLow Budget Usability Testing Webtreff Konstanz Patric Schmid Benutzerzentrale
Low Budget Usability Testing Webtreff Konstanz Patric Schmid BenutzerzentralePatric Schmid
 
Hightway to Hell - Responsive Webdesign Testen
Hightway to Hell - Responsive Webdesign TestenHightway to Hell - Responsive Webdesign Testen
Hightway to Hell - Responsive Webdesign TestenPeter Rozek
 
Der Agile Qualitätsbaukasten - PHP Unconference 2014
Der Agile Qualitätsbaukasten - PHP Unconference 2014Der Agile Qualitätsbaukasten - PHP Unconference 2014
Der Agile Qualitätsbaukasten - PHP Unconference 2014WebcsonsultsEU
 
Der Status Quo des Chaos Engineerings
Der Status Quo des Chaos EngineeringsDer Status Quo des Chaos Engineerings
Der Status Quo des Chaos EngineeringsQAware GmbH
 
Mobile App Testing In Agile Environment
Mobile App Testing In Agile EnvironmentMobile App Testing In Agile Environment
Mobile App Testing In Agile EnvironmentShlwagner
 
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
 
Exploratives Testen – ein Überblick und Praxisbeispiele
Exploratives Testen – ein Überblick und PraxisbeispieleExploratives Testen – ein Überblick und Praxisbeispiele
Exploratives Testen – ein Überblick und PraxisbeispieleSven Schirmer
 
Mobile App Testing In Agile Environment
Mobile App Testing In Agile EnvironmentMobile App Testing In Agile Environment
Mobile App Testing In Agile EnvironmentTestObject
 
Crowdsourced Mobile Testing – Alternative oder Ergänzung?
Crowdsourced Mobile Testing – Alternative oder Ergänzung?Crowdsourced Mobile Testing – Alternative oder Ergänzung?
Crowdsourced Mobile Testing – Alternative oder Ergänzung?Connected-Blog
 
Creasoft - Software QS Review
Creasoft - Software QS ReviewCreasoft - Software QS Review
Creasoft - Software QS ReviewCreasoft AG
 
Software-Tests in PHP-Anwendungen
Software-Tests in PHP-AnwendungenSoftware-Tests in PHP-Anwendungen
Software-Tests in PHP-AnwendungenGjero Krsteski
 
Testing untestable code - PHPUGFFM 01/11
Testing untestable code - PHPUGFFM 01/11Testing untestable code - PHPUGFFM 01/11
Testing untestable code - PHPUGFFM 01/11Stephan Hochdörfer
 
AG Softwaretechnik
AG SoftwaretechnikAG Softwaretechnik
AG SoftwaretechnikRoland M
 
Agile Teamarbeit - wie Startups Projekte managen und die Zusammenarbeit fördern
Agile Teamarbeit - wie Startups Projekte managen und die Zusammenarbeit fördernAgile Teamarbeit - wie Startups Projekte managen und die Zusammenarbeit fördern
Agile Teamarbeit - wie Startups Projekte managen und die Zusammenarbeit fördernSascha Böhr
 
Rails und Scrum in großen Projekten
Rails und Scrum in großen ProjektenRails und Scrum in großen Projekten
Rails und Scrum in großen ProjektenPhillip Oertel
 
Scrum und Agile Software Entwicklung
Scrum und Agile Software EntwicklungScrum und Agile Software Entwicklung
Scrum und Agile Software EntwicklungAniello Bove
 
Projekte mittels Scrum und agiler Software Entwicklung meistern
Projekte mittels Scrum und agiler Software Entwicklung meisternProjekte mittels Scrum und agiler Software Entwicklung meistern
Projekte mittels Scrum und agiler Software Entwicklung meisternINM AG
 
Testen mit, durch und in Scrum
Testen mit, durch und in ScrumTesten mit, durch und in Scrum
Testen mit, durch und in ScrumFrank Düsterbeck
 

Similaire à Qualität stinkt! Manchmal. (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
 
Low Budget Usability Testing Webtreff Konstanz Patric Schmid Benutzerzentrale
Low Budget Usability Testing Webtreff Konstanz Patric Schmid BenutzerzentraleLow Budget Usability Testing Webtreff Konstanz Patric Schmid Benutzerzentrale
Low Budget Usability Testing Webtreff Konstanz Patric Schmid Benutzerzentrale
 
Hightway to Hell - Responsive Webdesign Testen
Hightway to Hell - Responsive Webdesign TestenHightway to Hell - Responsive Webdesign Testen
Hightway to Hell - Responsive Webdesign Testen
 
Der Agile Qualitätsbaukasten - PHP Unconference 2014
Der Agile Qualitätsbaukasten - PHP Unconference 2014Der Agile Qualitätsbaukasten - PHP Unconference 2014
Der Agile Qualitätsbaukasten - PHP Unconference 2014
 
Der Status Quo des Chaos Engineerings
Der Status Quo des Chaos EngineeringsDer Status Quo des Chaos Engineerings
Der Status Quo des Chaos Engineerings
 
Mobile App Testing In Agile Environment
Mobile App Testing In Agile EnvironmentMobile App Testing In Agile Environment
Mobile App Testing In Agile Environment
 
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
 
Exploratives Testen – ein Überblick und Praxisbeispiele
Exploratives Testen – ein Überblick und PraxisbeispieleExploratives Testen – ein Überblick und Praxisbeispiele
Exploratives Testen – ein Überblick und Praxisbeispiele
 
Mobile App Testing In Agile Environment
Mobile App Testing In Agile EnvironmentMobile App Testing In Agile Environment
Mobile App Testing In Agile Environment
 
Crowdsourced Mobile Testing – Alternative oder Ergänzung?
Crowdsourced Mobile Testing – Alternative oder Ergänzung?Crowdsourced Mobile Testing – Alternative oder Ergänzung?
Crowdsourced Mobile Testing – Alternative oder Ergänzung?
 
Creasoft - Software QS Review
Creasoft - Software QS ReviewCreasoft - Software QS Review
Creasoft - Software QS Review
 
Software-Tests in PHP-Anwendungen
Software-Tests in PHP-AnwendungenSoftware-Tests in PHP-Anwendungen
Software-Tests in PHP-Anwendungen
 
Testing untestable code - PHPUGFFM 01/11
Testing untestable code - PHPUGFFM 01/11Testing untestable code - PHPUGFFM 01/11
Testing untestable code - PHPUGFFM 01/11
 
AG Softwaretechnik
AG SoftwaretechnikAG Softwaretechnik
AG Softwaretechnik
 
Agile Teamarbeit - wie Startups Projekte managen und die Zusammenarbeit fördern
Agile Teamarbeit - wie Startups Projekte managen und die Zusammenarbeit fördernAgile Teamarbeit - wie Startups Projekte managen und die Zusammenarbeit fördern
Agile Teamarbeit - wie Startups Projekte managen und die Zusammenarbeit fördern
 
Rails und Scrum in großen Projekten
Rails und Scrum in großen ProjektenRails und Scrum in großen Projekten
Rails und Scrum in großen Projekten
 
Scrum und Agile Software Entwicklung
Scrum und Agile Software EntwicklungScrum und Agile Software Entwicklung
Scrum und Agile Software Entwicklung
 
Projekte mittels Scrum und agiler Software Entwicklung meistern
Projekte mittels Scrum und agiler Software Entwicklung meisternProjekte mittels Scrum und agiler Software Entwicklung meistern
Projekte mittels Scrum und agiler Software Entwicklung meistern
 
Softwaretests: Motivation und Überblick
Softwaretests: Motivation und ÜberblickSoftwaretests: Motivation und Überblick
Softwaretests: Motivation und Überblick
 
Testen mit, durch und in Scrum
Testen mit, durch und in ScrumTesten mit, durch und in Scrum
Testen mit, durch und in Scrum
 

Qualität stinkt! Manchmal.

  • 1. Qualität stinkt! Manchmal. Die Evolution der Qualitätssicherung. Torsten Franz. Nils Langner. Developer Conference Hamburg, 08.11.2013
  • 2. Warum. Das goldene Warum-Schild. Qualität stinkt! Manchmal. Fragen stellen! Wir haben den Anspruch alles was wir machen auch Begründen zu können. 2
  • 5. Qualität stinkt! Manchmal. Das kleine Wir.  Leitung Qualitätsmanagement Gruner + Jahr Digital GmbH Studium Informatik (B.Sc.) an der Universität Freiburg  ISTQB zertifiziert     Softwareprojekte im Open-Source-Bereich Autor für diverse Fachmagazine Sprecher auf Konferenzen Buchautor  Twitter: @phphatesme  Gewinner Malwettbewerb Grundschule Haag i. OB 5
  • 6. Qualität stinkt! Manchmal. Das kleine Wir.  Qualitätsmanagement Gruner + Jahr Digital GmbH Sparkassenkaufmann  ISTQB zertifiziert    Ubuntu Member (Projekt: ubuntuusers.de) Autor für diverse Fachmagazine Sprecher auf Konferenzen  Twitter: @toddyfranz  Seepferdchen in der dritten Klasse 6
  • 7. Qualität stinkt! Manchmal. Das große Wir.  Gruner + Jahr Die Gruner + Jahr AG & Co KG ist Europas größtes Druck- und Verlagshaus. 500 Magazine und digitale Angebote Stern, Financial Times Deutschland, Eltern, Brigitte, Gala, Essen&Trinken, Neon, Business Punk, Nido, Beef, Häuser, Schöner Wohnen, GEO, Capital, Börse Online, chefkoch, roomido Mitarbeiter 11.585, in Hamburg circa 3.000  In der G+J Digital GmbH sind sämtliche Digital-Aktivitäten der Markenwebsites und deren Mobile- Auftritte von Gruner + Jahr gebündelt. 7
  • 9. Qualität stinkt! Manchmal. Das große Wir.  Gruner + Jahr Die Gruner + Jahr AG & Co KG ist Europas größtes Druck- und Verlagshaus.      Ganz toll. Super nett. Eine Menge Magazine. Viel Spaß. Yeah! 9
  • 10. Qualität stinkt! Manchmal. Homo Testnix. Homo Testnix. Homo Testus. Homo Qualitätus. Homo Futuris. 10
  • 11. Qualität stinkt! Manchmal. Homo Testnix. Evolution. Banana?!? 11
  • 12. Qualität stinkt! Manchmal. Homo Testnix. Der Auftrag. Aus Stern wird Stern.de. 12
  • 13. Qualität stinkt! Manchmal. Homo Testnix. Entwicklungsprozess. Auftrag Programmierung Testen Livestellen 13
  • 14. Qualität stinkt! Manchmal. Homo Testnix. Testen. 14
  • 15. Qualität stinkt! Manchmal. Homo Testnix. Bewertung. Geschwindigkeit • • Schnelle Reaktionszeiten Minimaler „Deploymentprozess“ Qualität • • • • Produkt nach einiger Zeit nicht mehr wartbar Hohe Softwareerosion Keine hohe Performance Häufig Fehler im Livesystem 15
  • 16. Qualität stinkt! Manchmal. Homo Testnix. Umfrage. Wer arbeitet nach diesem Verfahren? 16
  • 17. Qualität stinkt! Manchmal. Homo Testus. Homo Testnix. Homo Testus. Homo Qualitätus. Homo Futuris. 17
  • 18. Qualität stinkt! Manchmal. Homo Testus. Evolution. Schlechte Qualität, keine Banana!?! 18
  • 19. Qualität stinkt! Manchmal. Homo Testus. Der Auftrag. Aus Stern wird Stern.de. 19
  • 20. Qualität stinkt! Manchmal. Homo Testus. Entwicklungsprozess. Programmierung Auftrag Abnahme Livestellen Testen Falls man es nicht erkennt: Das soll Scrum sein. 20
  • 21. Qualität stinkt! Manchmal. Homo Testus. Testen. 21
  • 22. Qualität stinkt! Manchmal. Homo Testus. Testen. Anwendungsfallbasierende Systemtests. Motivation. Überprüfung auf funktionale Korrektheit einer Anwendung bzw. einer Teilkomponente. Beschreibung. Testen anhand von Testplänen, welche aus den funktionalen Anforderungen abgeleitet werden. Dies kann manuell oder automatisiert geschehen. Softwarelebenszyklus. • • Änderungsnachtest Änderung am Source-Code triggert den Durchlauf eines Teil-Systemtests. Vollständiger Regressionstest Erstellung eines Releases triggert den Durchlauf eines vollständigen Systemtests. Metriken. Anzahl Fehler (absolut/prozentual), Steigung Fehlerrate. Tools. Confluence, Google-Docs, Excel, LiveTest2, Selenium, QF-Test, Jira 22
  • 23. Qualität stinkt! Manchmal. Homo Testus. Testen. 23
  • 24. Qualität stinkt! Manchmal. Homo Testus. Testen. Last- und Performancetests. Motivation. Berechenbares Last- und Performanceverhalten ist wichtig für den Betrieb einer Webseite. Beschreibung. Testen der Antwortzeiten und Status der Seiten einer Webanwendung unter Last. Softwarelebenszyklus. Erstellung eines Releases triggert den Durchlauf eines Lasttests. Metriken. Anzahl Fehlercodes (absolut/prozentual), Anzahl Requests/Stunde, Antwortzeiten. Tools. Apache JMeter, Jmmd. 24
  • 25. Qualität stinkt! Manchmal. Homo Testus. Testen. 25
  • 26. Qualität stinkt! Manchmal. Homo Testus. Testen. Unit Tests. Motivation. Korrekte Funktionsfähigkeit einzelner Module muss konstant gewährleistet werden. Beschreibung. Ein Modultest wird angewendet, um die funktionalen Einzelteile ('Module') von Computerprogrammen zu testen, d. h. sie auf korrekte Funktionalität zu prüfen. Softwarelebenszyklus. Permanent während der Entwicklung. Metriken. Anzahl Fehler (absolut/prozentual) Tools. PHPUnit, mocha, jsUnit, Bamboo. 26
  • 27. Qualität stinkt! Manchmal. Homo Testus. Testen. 27
  • 28. Qualität stinkt! Manchmal. Homo Testus. Testen. BDD, Zephyr, Statische Codeanalyse, Ranorex, GrayLog2, Symfony Functional Testing, LiveTest2, Pdepend, PHPCPD, Bamboo, Jenkins, CodeSniffer, CodeFormatter, Zend Studio (standardisierte Entwicklungsumgebung), Softwaremetriken, Testival, Code Reviews, Architektur Reviews, Visual Regression Tests, php lint, XML-Validierung, Burb-Suite, Security-Audits, Selenium, HTML-Validierung, JSON-Validierung, Dev/Stage/Live-Systeme, … 28
  • 29. Qualität stinkt! Manchmal. Homo Testus. Bewertung. Geschwindigkeit • • Langsame Entwicklung Aufwendiger Deploymentprozess Qualität • • • Kaum Softwareerosion Hohe Performance Wenige Fehler im Livesystem 29
  • 30. Qualität stinkt! Manchmal. Homo Testus. Umfrage. Wer arbeitet nach diesem Verfahren? 30
  • 31. Qualität stinkt! Manchmal. Homo Qualitätus. Homo Testnix. Homo Testus. Homo Qualitätus. Homo Futuris. 31
  • 32. Qualität stinkt! Manchmal. Homo Qualitätus. Evolution. Mehr Qualität != Mehr Banana 32
  • 33. Qualität stinkt! Manchmal. Homo Qualitätus. Qualität. „Grad, in dem ein Satz inhärenter Merkmale Anforderungen erfüllt.“ Norm EN ISO 9000:2005, „Qualitätsmanagementnorm“ „Übereinstimmung von Leistungen mit Ansprüchen.“ Gabler Wirtschaftslexikon 33
  • 34. Qualität stinkt! Manchmal. Homo Qualitätus. No Risk no Test. 34
  • 35. Qualität stinkt! Manchmal. Homo Qualitätus. Schnittmenge. Funktionalität Zuverlässigkeit Effizienz Testen Relevant Hohes Risiko Übertragbarkeit Benutzbarkeit Wartbarkeit Qualitätsmerkmale nach ISO/IEC 9126 35
  • 36. Qualität stinkt! Manchmal. Homo Qualitätus. Der Auftrag. Aus Stern wird Stern.de. 36
  • 37. Qualität stinkt! Manchmal. Homo Testus. Entwicklungsprozess. Programmierung Auftrag Abnahme Livestellen Testen Falls man es nicht erkennt: Das soll Scrum sein. 37
  • 38. Qualität stinkt! Manchmal. Homo Testus. Bewertung. Geschwindigkeit • Gesteigerte Geschwindigkeit durch Definition der Qualitätsziele und Risiken. Qualität • Alles relevante und risikobehaftete abgedeckt. 38
  • 39. Qualität stinkt! Manchmal. Homo Qualitätus. Umfrage. Wer arbeitet nach diesem Verfahren? 39
  • 40. Qualität stinkt! Manchmal. Homo Futuris. Homo Testnix. Homo Testus. Homo Qualitätus. Homo Futuris. 40
  • 41. Qualität stinkt! Manchmal. Homo Futuris. Evolutionsschritt. Dinge richtig machen und die richtigen Dinge machen ist etwas Unterschiedliches. 41
  • 42. Qualität stinkt! Manchmal. Homo Futuris. Evolutionsschritt. Chaos. 42
  • 43. Qualität stinkt! Manchmal. Homo Futuris. Evolutionsschritt. Chaos. Features / Functions used in a typical System Always 7% Often 13% Never 45% Sometimes 16% Rarely 19% Standish Group Study reported ad XP2002 by Jim Johnson 43
  • 44. Qualität stinkt! Manchmal. Homo Futuris. Evolutionsschritt. Chaos. Wenn es niemand nutzt, muss es dann effizient sein? Wenn es niemand nutzt, muss es dann funktionieren? Wenn es niemand nutzt, muss es dann wartbar sein? Wenn es niemand nutzt, muss es robust sein? 44
  • 45. Qualität stinkt! Manchmal. Homo Futuris. Evolutionsschritt. Chaos-Schnittmenge Erfolgreich Testen Relevant Hohes Risiko 45
  • 46. Qualität stinkt! Manchmal. Homo Futuris. Der Auftrag. Aus Stern wird Stern.de. 46
  • 47. Qualität stinkt! Manchmal. Homo Futuris. Entwicklungsprozess. Homo Testnix trifft Homo Qualitätus. Hallo! Banana ?!? 47
  • 48. Qualität stinkt! Manchmal. Homo Futuris. Entwicklungsprozess. Phase 1 Auftrag Phase 2 Programmierung Testen Livestellen Programmierung Auftrag Abnahme Livestellen Testen 48
  • 49. Qualität stinkt! Manchmal. Homo Futuris. Entwicklungsprozess. Umdenken. 49
  • 50. Qualität stinkt! Manchmal. Homo Futuris. Entwicklungsprozess. Umdenken.  Falls etwas erfolgreich ist, muss es neu gemacht werden (bzw. Refactoring).  Features, die nicht erfolgreich sind, können/sollten abgeschaltet werden „Technisch einfach, aber schwer in die Köpfe der Projektbeteiligten reinzubekommen“ R. Fahrung, 2013 50
  • 51. Qualität stinkt! Manchmal. Homo Futuris. Bewertung. Geschwindigkeit • Hohe und konstante Geschwindigkeit bei neuen Features. Qualität • Hohe Qualität bei Komponenten, die bewiesen haben, dass sie es wert sind. 51
  • 52. Qualität stinkt! Manchmal. Homo Futuris. Umfrage. Wer ist alles ein Homo Futuris? 52
  • 54. Qualität stinkt! Manchmal. Fazit. Evolution. Homo Testnix. Homo Testus. Homo Qualitätus. Homo Futuris. 54
  • 55. Qualität stinkt! Manchmal. Fazit.  Es gibt jede Menge guter Testwerkzeuge auf dem Markt  Was hohe Qualität für ein Produkt bedeutet entscheidet man selbst.  Sehr große Teile einer Applikation werden nicht verwendet.  Wichtige Bestandteile einer Applikation sollten hochwertig sein. 55