Seminar-Präsentation IT-Consulting-Seminar Abnahme und Test 31. Mai 2002 08:30 Uhr FH-Dortmund von Lars Liebermann
2) Testen am Beispiel von Software Themenübersicht 1) Phasenmodell 2) Testen am Beispiel von Software Einführung Grundlegendes Fehler (Einteilung/Terminologie/Arten) Gesetze Testprinzipien Testphasen Testarten Testaktivitäten 3) Abnahme
Klassisches Phasenmodell Dokumentation Problemanalyse / Systemanalyse Auftragsunterlagen Istanalyse Sollkonzeption Durchführbarkeitsprüfung Pflichtenheft/Anforderungsdef. Entwurf (Design) Spezifikationen / Module / Schnittstellen Systementwurf Komponentenentwurf Programm / Programmdokumentation Implementierung Test (Test & Debugging) Korrigiertes Programm / Testprotokolle Komponenten Integration Leistung Abnahmeprotokoll Installation Systemeinführung Systemabnahme Benutzerhandbuch Betrieb und Wartung Betriebs/Wartungsprotokoll
Grundlegende Fragen beim „Testen“ Was ist Software-Testen? „Testen ist der Prozess, ein Programm mit der Absicht auszuführen, Fehler zu finden“ [Myers 1989] Warum soll man testen? Vorhandene Fehler können später zu erheblichen Kosten und Schäden führen Wer soll testen? Entwicklungs- und Testphasen möglichst getrennt halten Was sollen wir testen? Möglichst jeden Lebenszyklus und nicht nur die Codierphase Wann sollen wir testen ? Kontinuierlicher Prozess im Lebenszyklus (Meilensteine)
Allgemeine Bemerkungen 50% des Entwicklungsprozess fürs Testen Fehlerwahrscheinlichkeit verhält sich proportional zu gefundenen Fehlern Debuggen ≠ Testen
Einteilung von Fehlern Fehler können unterschiedlich klassifiziert werden: Entwicklungsphase Schwierigkeit Konsequenzen Beispiel: Kosmetisch Anders wäre es angenehmer/schöner Mittelschwer Performance-Einbußen Schadend Schwer Katastrophal
Fehlerterminologie
Fehlerarten
Gesetze für das Testen von Software 1.Gesetz: Das Pestizid-Paradoxon Jede Methode, die man anwendet, um Fehler zu vermeiden oder zu finden, hinterlässt einen gewissen Rest von raffinierteren Fehlern, gegen welche die eingesetzte Mehtode nichts ausrichten kann. 2.Gesetz: Die Komplexitätsschranke Die Komplexität der Software (und damit auch die Komplexität der Fehler) wächst über unsere Fähigkeit hinaus, die Komplexität zu meistern.
Testprinzipien Ein notwendiger Bestandteil eines Testfalls ist die Definition der erwarteten Werte oder des Resultats Gründliche Überprüfung der Ergebnisse eines jeden Tests Testfälle müssen für ungültige und unerwartete ebenso wie für gültige und erwartete Eingabedaten definiert werden. Vermeidung von Wegwerftestfällen Planen Sie kein Testverfahren unter der stillschweigenden Annahme, dass keine Fehler gefunden werden.
Testphasen Definition: „Testphasen sind sachlich und zeitlich in sich geschlossene Abschnitte des Testens, in denen für bestimmte Software-Produkte defnierte Testaufgaben durchgeführt werden“. [Schmitz 1982] Entwicklungstest - Bausteintest - Verfahrentest - Installationstest - Systemtest Abnahmetest - Benchmarktest - Pilottest - Paralleltest Betriebstest Wartungstest
Testarten Nach der Art der Testfallermittlung: aufgabenorientiert (funktionsorientiert) produktorientiert (strukturorientiert) Nach der Art der Testausführung: statischem Testen dynamischen Testen Nach dem Umfang der Testauführung: repräsentativen Test schwachstellenorientiertem Test schadensausmaß-orientierten Test Weitere Testarten
Testaktivitäten Testplanung Festlegung von Aufgaben, Ziele und Vorgehensweise Testdurchführung Enthält alle Testdaten und realisiert erstellten Testplan Testvorbereitung Testausführung Testauswertung Testkontrolle Überwachung und Steuerung des Testprozess Testdokumentationserstellung Permanente Erfassung der Vorgehensweise beim Testen (Daten und Ergebnisse)
Testdurchführung Testvorbereitung Checklisten Verwendungsnachweise von Elementen Testfallermittlung Testdatenerstellung Soll-Ergebnis-Ermittlung Testumgebung Testprozedur Testausführung Statische Testausführung Dynamische Testausführung Testauswertung Ergebnisprüfung Testergebnisprotokollierung Erstellen der Teststatistik
Abnahme Vorabnahme (im weitesten Sinne) Abnahme des Pflichtenheftes (Vertragsgrundlage) Interne Abnahmen (Generalprobe) Werksabnahme (Freigabe zur Inbetriebnahme) Aufgabe: formale Abschluss des Projekts Anerkennung durch das Unternehmen “Entlastung” des Projektleiters Auflösung Projektteam evtl. Prämienausschüttung Vorgehensweise: Zu Beginn des Projekts muss genau definiert werden, wie die Projektabnahme erfolgt. Zum Ende des Projekts muss die Projektabnahme erfolgen, um das Projekt formal zu beenden. Ohne formale Abnahme kein Projektabschluss. Die Erklärung der Abnahme sollte im jeden Fall schriftlich erfolgen.
Ende der Präsentation Vielen Dank für Eure Aufmerksamkeit Bei Rücksprachen wendet Euch bitte an: Lars Liebermann Am Reißberg 30a 58791 Werdohl Tel. 0 23 92 / 72 26 75 E-Mail: webmaster@lars-liebermann.de Weitere Informationen (Quellenangaben): Institut für Wirtschaftsinformatik der Johannes Kepler Universität Linz Mediasupervision Institut für Projektmanagment und Wirtschaftsinformatik (IPMI) Dr. Otto Schlichtherle (http://www.logistics-it-consulting.net/)
Auflistung verschiedender Testarten Abnahmetest Ästhetiktest Belastungstest Blackbox-Test Ergonomietest Funktionstest Grafiktest Inhaltstest Installationstest Interface Analyse Kompatibilitätstest Leistungstest Lokalisationstest Mastertest Onlinetest Regressisonstes Risikotest Sicherheitstest Speichertest Stabilitätstest Whitebox-Test zurück
Checkliste zurück