Professioneller Software-Test Damit Software funktioniert, wie sie soll Jan Overbeck 23. April 2010 OUTPUT DD ANECON Software Design und Beratung G.m.b.H. Alser Str. 4/Hof 1 A-1090 Wien Tel.: +43 1 409 58 90 www.anecon.com office@anecon.com
Professioneller Software-Test Vorstellung Warum Testen? Testen Probieren Rollen und Standards Projektbegleitung
ANECON G.m.b.H. mit 4 privaten Eigentümern Partner: Gründung im Jänner 1998 Standort Wien Standort Dresden seit 01/2010 eigenständige GmbH MitarbeiterInnen 2009: über 90 Jahresumsatz 2009: 8,5 Mio. excl. Tochterunternehmen aforms2web, 2007 gegründet ca. 50% SW-Entwicklung, ca. 50% SW Testen In Österreich Marktführer für SW-Test-Dienstleistungen 3 ANECON 2010 Professioneller Software-Test Jan Overbeck
Jan Overbeck ( und wie er zum Testen kam) Studium der Informatik an der TU Berlin (Testen? Keine Spur) Promotion an der TU Wien ( Integration Testing for Object-Oriented Software ) 1994 1998: Berater (Testen? Keine Spur) 1998 heute: Gründer und Geschäftsführer der ANECON Seit 2001: Verantwortlich für den Aufbau des Geschäftsfeldes Software-Testen (2009) 2010 : Aufbau und Geschäftsführung der deutschen ANECON Testen verkaufen ist wie Mission! 4 ANECON 2010 Professioneller Software-Test Jan Overbeck
Professioneller Software-Test Vorstellung Warum Testen? Testen Probieren Rollen und Standards Projektbegleitung
Motivation - Warum Testen? 31.03.2009 - Abwrackprämie - Online-Reservierung Wegen der hohen Zahl der Anfragen war die Website kaum zu erreichen. Bestätigungsemails beinhalteten Daten anderer Antragsteller (Adresse, Fahrzeugtyp, KFZ-Ident-Nummer,...). Daten der Antragsteller wurden unverschlüsselt an den Server gesendet 30.10.2007 Deutsche Telekom In der Nacht vom 29. zum 30. Oktober 2007 kam es bei der Deutschen Telekom zu bundesweiten Ausfällen und Fehlverbindungen bei Sprachdiensten im Kommunikationssystem, weil eine aktualisierte Server- Software fehlerhaft war. 31.12.2008 Microsoft Am 31. Dezember 2008 versagten alle 30-Gigabyte-Varianten des Zune-MP3- Players. Der Grund für das Chaos: 2008 war ein Schaltjahr. Der Zune hatte einen Programmierfehler, der den einen zusätzlichen Tag im Jahr zu einem Grund für einen Systemabsturz machte. 6 ANECON 2010 Professioneller Software-Test Jan Overbeck
Motivation - Warum Testen? Steigende Bedeutung von IT/Software im täglichen Leben höhere Abhängigkeit, gesteigerte Erwartungshaltung Einbindung des Anwenders (Kunde, Lieferant) in zentrale Prozesse, z.b.: E-Government Gebrauchstauglichkeit, Funktionalität, Bedienbarkeit und Sicherheit entscheiden unmittelbar über Erfolg Immer höhere Vernetzung und Komplexität Verteilte Architekturen und Service-Gedanke (SOA) Immer wieder neue Technologien Medienbruchfreiheit Auch Fehler bekommen damit größere Bedeutung! 7 ANECON 2010 Professioneller Software-Test Jan Overbeck
Der Nutzen von Tests Quantitativ Kostenersparnis durch Vorbeugen, Aufdecken und Beheben während der Entwicklungsphase Qualitativ Reputation, Image gesteigertes Vertrauen Schutz vor Haftungsansprüchen reibungslose Releases Gewinn neuer Aufträge Risikominimierung Strukturierte, systematische Vorgehen zur Testfallermittlung So wenig wie möglich so viel wie nötig Testfortschritt messbar machen 8 ANECON 2010 Professioneller Software-Test Jan Overbeck
Professioneller Software-Test Vorstellung Warum Testen? Testen Probieren Rollen und Standards Projektbegleitung
ISO 9126 Qualitätsmodell externe und interne Qualität Funktionalität Zuverlässigkeit Benutzbarkeit Effizienz Änderbarkeit Übertragbarkeit 10 ANECON 2010 Professioneller Software-Test Jan Overbeck
Funktionale Testmethoden Black-Box Testfallableitung White-Box Testfallableitung Auch genannt: spezifikationsorientiertes Testen strukturelles Testen Testfallableitung: Tests, bei denen Testfall und Testdaten aus der funktionalen oder nicht-funktionalen Spezifikation (auch modellhaft) des Testobjekts abgeleitet werden ohne die (Programm) Struktur auszuwerten. Tests, bei denen Testfall und Testdaten aus der Struktur des Testobjekts (z.b. Design oder Code) abgeleitet werden ohne die Spezifikationen zu beachten. Methoden: - Äquivalenzklassenmethode, Grenzwertanalyse - Entscheidungstabellen - Zustandsanalyse - Anwendungsfall-basiertes Testen - Klassifikationsbäume - Anweisungs-überdeckungstest - Zweigüberdeckungstest - Bedingungs-überdeckungstest - Pfadüberdeckungstest 11 ANECON 2010 Professioneller Software-Test Jan Overbeck
Nicht-Funktionale Testmethoden Last- und Performancetests Ressourcenauslastung Antwortzeiten Stressverhalten Bottlenecks Sicherheitstest Funktionale Sicherheit (Rechte, Rollen) Technische Sicherheit (Penetration tests, Angriffe) Benutzbarkeitstest Barrierefreiheit Styleguide-Konformität Erlernbarkeit Verständlichkeit Prüfung der Dokumentation Prüfung auf Änderbarkeit/Wartbarkeit 12 ANECON 2010 Professioneller Software-Test Jan Overbeck
Professioneller Software-Test Vorstellung Warum Testen? Testen Probieren Rollen und Standards Projektbegleitung
Rollen und Funktionen im Software-Test Kunde/Fachbereich Mitarbeit im Testteam Know How Transfer Aufbau Testorganisation beim Kunden Testmanager (Teil-) Projektleitung, Testkonzept, Testplanung und -controlling Testanalyst und koordinator Koordiniert und unterstützt den Fachbereich bei der Erstellung der Testdesigns (Testszenarien, Testfälle) Betreuung der Testdurchführung und Controlling der Testpläne Testspezialist, Tester Planung und Durchführung spezifischer Tests (Schnittstellen, Migration, Performance, etc.) Test-Automatisierer Erstellung und Betreuung automatisierter Testabläufe Testsupport Bereitstellen der Testumgebungen, Testsysteme Ausführung automatisierter Tests Technische Hilfestellungen 14 ANECON 2010 Professioneller Software-Test Jan Overbeck
Etablierte Standards IEEE + ISO Standards Beschreiben Dokumente und Prozesse Sehr gut auf Praxis abbildbar ISTQB - International Software Testing Qualifications Board Ziel: Einen international akzeptierten Rahmen für professionelle Software- und Systemtester zu schaffen Entwickelt hierfür die Zertifizierung ISTQB Certified Tester Vertreten durch über 40 nationale Testing Boards mit (z.b.: German Testing Board) 15 ANECON 2010 Professioneller Software-Test Jan Overbeck
ISTQB Certified Tester Über 130.000 zertifizierte Tester weltweit Detaillierte Lehrpläne Testmanagement Funktionale und Nicht-funktionale Testmethoden Blackbox- und Whitebox-Verfahren Statische Analysen Reviewtechniken Testautomatisierung Testwerkzeuge Testprozessverbesserung 16 ANECON 2010 Professioneller Software-Test Jan Overbeck
Professioneller Software-Test Vorstellung Warum Testen? Testen Probieren Rollen und Standards Projektbegleitung
Fehler in den Requirements sind besonders teuer! Quelle: Steve McConnell, Windows Tech Journal 18 ANECON 2010 Professioneller Software-Test Jan Overbeck
Fehler in den Requirements sind besonders häufig! Fehler in den Anforderungen, die nur durch den Systemtest aufgedeckt werden Konzeptmängel 44% Oberflächenmängel 10% Schnittstellenmängel 5% Versionsmängel 3% Datenbankmängel 4% Versäumnismängel 6% Quelle: H. Sneed; Analyse auf Basis von 6000 Fehlern Codiermängel 28% Fehler im Code können zum Großteil im Unit- Test aufgedeckt werden 19 ANECON 2010 Professioneller Software-Test Jan Overbeck
Kommunikationswege Analyse Development Test 20 ANECON 2010 Professioneller Software-Test Jan Overbeck
Verkürzung der Wege durch Parallelisierung RE & SWT Analyse Development Test- Vorbereitung Test- Durchführung 21 ANECON 2010 Professioneller Software-Test Jan Overbeck
Rechtzeitige Testvorbereitung sichert inhaltliche Anforderungsqualität Testfälle lassen keinen Interpretations- Spielraum Eingabewerte - Aktionen - Erwartetes Ergebnis Unklarheiten müssen im Vorfeld geklärt werden Systematische Klärung führt zu Verbesserung der Anforderungen - implizit - rechtzeitig! Fragenkatalog parallel zur Testvorbereitung pflegen Klärung durch Requirements Engineer Rückfluss in Anforderungsdokumente 22 ANECON 2010 Professioneller Software-Test Jan Overbeck
Requirements Engineering & Software Test - Eine Allianz für die Qualität Zwei Disziplinen - ein gemeinsames Ziel Produkt muss die Kundenbedürfnisse erfüllen! Requirements Engineer Hört und antizipiert die Kundenbedürfnisse Gibt sie in verständlicher Sprache weiter Legt Grundbaustein Software Tester Muss Kunde und dessen Bedürfnisse verstehen um deren Erfüllung überprüfen zu können Sichert Grundbaustein und schafft Bewertbarkeit 23 ANECON 2010 Professioneller Software-Test Jan Overbeck
QAMP = Ausbildungsstandard für Certified Tester + Requirements Engineer Qualitativ hochwertige Anforderungen (IREB) Konsistent, vollständig, testbar Genaue Grundlage für Aufwands- und Ressourcenplanung Weniger Rückfragen bei der Testfallspezifikation und -durchführung Problematische Bereiche können frühzeitig durchleuchtet werden (Performance, Sicherheit) Wahrscheinlichkeit für schwere Fehler sinkt Frühe Auseinandersetzung mit den Anforderungen (ISTQB) Einarbeitung der Tester in die Fachlichkeit kann früh beginnen Qualitätssicherung der Anforderungen durch Testersicht (Eindeutigkeit, etc.) Testideen und Testfälle können frühzeitig entwickelt werden In den Anforderungen gefundene Fehler sparen Kosten 24 ANECON 2010 Professioneller Software-Test Jan Overbeck
ASQF-Fachgruppe Sachsen http://www.asqf.de Nächster FG-Abend: 5. Mai, TU-Dresden ISTQB Certified Tester Foundation Level 21.-24. Juni, Dresden CONQUEST 2010 20.-22. September, Dresden ANECON Software Design und Beratung G.m.b.H. Alser Straße 4 / Hof 1 A-1090 Wien www.anecon.com office@anecon.com Tel.: +43 1 409 58 90-0 Fax: -998 Der Systemtest Von den Anforderungen zum Qualitätsnachweis Sneed, Baumgartner, Seidl 2. Auflage, HANSER Verlag, 2008