Software Qualitätssicherung

Planung, Technik und Management von Software-Qualitätssicherungsmaßnahmen und Software-Tests

 

Seminardauer: 3 Tage

 

Ziel:
Die Teilnehmer erlernen das Erstellen von QS- und Testplan, das Abschätzen von Risiken , verschiedene Techniken der systematischen Testfallermittlung sowie den Einsatz von Qualitätsmetriken zur Erfolgkontrolle anhand von Beispielen und praktischen Übungen. Die Teilnehmer lernen die wichtigsten Konzepte und Verfahren bei Entwickler-Tests und fachlichen Tests während der Software-Entwicklung kennen und können Vor- und Nachteile der Automatisierung von Tests einschätzen.

Nach erfolgreicher Teilnahme kennen sie die Zusammenhänge von Software-Architektur, Qualitätssicherung und Testbarkeit von Programmen und verfügen über ein einfaches, flexibles und integriertes Vorgehensmodell zur Erstellung von Software hoher Qualität.

Zielgruppe:
Das Seminar wendet sich in gleicher Weise an fachliche Tester, Software-Entwickler und Testmanager.

Voraussetzungen:
Grundkenntnisse in der Programmierung sind wünschenswert aber nicht unbedingt erforderlich.

Methodik:
Der Unterricht wechselt zwischen Vortrag, Diskussion, Demonstration von Beispielen und praktischen Übungen.

 

Beschreibung:

Die Teilnehmer erlernen verschiedene Techniken der systematischen Testfallermittlung an Hand von Beispielen und praktischen Übungen. Sie können die zur Testbasis gehörenden Dokumente analysieren und darin enthaltene Anforderungen in zum Testen geeigneter Form formulieren. Die gefundenen Testfälle und Testdaten werden mit Hilfe von vorbereiteten Vorlagen dokumentiert.

 

Die Teilnehmer lernen die wichtigsten Konzepte und Verfahren bei technischen Tests während der Software-Entwicklung und bei der Automatisierung von Tests kennen. Sie können die Einsetzbarkeit der vorgestellten Techniken für ihre tägliche Arbeit beurteilen und kennen entscheidende Kriterien für eine bessere Testbarkeit von Software.

 

Das Seminar zeigt Hintergründe, Ziele und Vorgehensweisen des Qualitätsmanagements in der Softwareentwicklung auf und macht Vorschläge für Aufwandsabschätzung und Erfolgskontrolle. Es vermittelt darüber hinaus einen Überblick über aktuelle Strategien in der konstruktiven und analytischen Qualitätsicherung von Software.

 


Stoffverteilung:

 

Qualitätssicherung und Test

·  Qualitätsziele definieren

·  Konstruktive und analytische Qualitätssicherung

·  Qualität messen durch Tests
Testplanung

·  Testobjektliste erstellen

·  Risikobewertung

·  Testziele und Endekriterien festlegen
Die Testbasis

·  Analyse von fachlichen und technischen Konzepten

·  Anforderungen extrahieren, Abnahmekriterien festlegen

·  Detaillierung durch Entscheidungstabellen, Ablaufdiagramme und Zustandsautomaten

Testfälle und Testdaten

·  Äquivalenzklassenanalyse

·  Grenzwertanalyse

·  Einzelfallbetrachtung

·  Einflussfaktoren, Paarbildung
Datenkombinationstest

·  Ermittlung von Testfällen durch

·  Abdeckung aller Wirkungen

·  Abdeckung aller Testdaten

·  Abdeckung bestimmter Kombinationen von Testdaten
Testfälle und Testdaten beschreiben

·  Vorlage zur Testfallbeschreibung

·  Vorlage zur Testdatenbeschreibung

Der Lebenszyklustest

·  Zustandsdiagramme erstellen

·  Ermittlung von Testfällen durch
    -Abdeckung aller Zustände
    -Abdeckung aller Zustandsübergänge
    - Abdeckung aller auslösenden Ereignisse (Trigger)
Der Datenzyklustest

·  Die CRUD Matrix

·  Testfälle aus Funktionsketten zusammenstellen

Der Test von Anwendungsfällen und Geschäftsprozessen

·  Ablaufdiagramme erstellen

·  Ermittlung von Testfällen durch
    - Abdeckung aller Zweige
    - Abdeckung aller einfachen Zweigkombinationen
    - Weitere Abdeckungsmaße

Verfahren bei technischen Tests

·  Statische Code-Analyse

·  Inspektionen, Walk-Through

·  Überdeckungsgrad-Analyse, Code-Coverage

·  Profiling


Testautomation

·  Automatisiertes Unit-Testing

·  Funktionale Regressionstests

·  Last- und Performancetests

·  Software-Architektur und Testbarkeit

Testmanagement

·  Teststufen und Phasen

·  Zeit- und Ressourcenplanung

·  Testfälle optimieren und verfolgen

·  Fehlermanagement

·  Den Testerfolg messen
Weitere Teststrategien

·  Design-By-Contract, eingebettete Tests

·  Test-First Design

·  Exploratives Testen

·  Testen durch Benutzen

·  Testen durch Dokumentieren