Softwareentwicklung & Testprozess

Slides:



Advertisements
Ähnliche Präsentationen
IT-Projektmanagement
Advertisements

Lieferantenbeurteilung
Informationswirtschaft II
1 Referenzmodelle für HISinOne Dr. Uwe Hübner, 02. Juli 2009.
Lexikon der Qualität Begriffe in Verbindung mit Qualität und ISO9000 finden sie auch im Lexikon der Qualität erläutert (
Qualität „Qualität ist die Gesamtheit von Eigenschaften und Merkmalen eines Produkts oder einer Tätigkeit, die sich auf deren Eignung zur Erfüllung gegebener.
V - Modell Anwendung auf große Projekte
IT-Projektmanagement
Vorgehensmodell - Wasserfallmodell
Prof. Dr. Liggesmeyer, 1 Software Engineering: Dependability Prof. Dr.-Ing. Peter Liggesmeyer.
Von David Keß, Heinrich Wölk, Daniel Hauck
Das „Vorgehensmodell“
Software Assurance Services – Angebote für klein- und mittelständische Unternehmen, Verfügbar ab März 06.
LE LM 10 - LO3 Verfahren zur Qualitätssicherung
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Der Rational Unified Process - Einführung Inhalt Prozessmodelle Der Rational Unified.
Fehler und ihre Kosten Inhalt Software und ihre Fehler
Prozessqualität und Produktqualität
Schulung der Mitarbeiter
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Links Links sind im Text angegeben. Weitere Links werden kontinuierlich eingefügt.
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Regeln für Tester - best practice 1 Prüfe das eigene Programm nie als Einziger Testen.
Es gibt viele Arten von Risiken
Navigieren / Suchen 12.Oktober Kann ein Browser das? 12.Oktober Bei findet man für das Wort browsehttp://dict.leo.org.
Deklaratives Debugging (Seminar Software Engineering) Tim Sender Deklaratives Debugging Seminar Software Engineering.
Der Testprozess als Bestandteil des SE Prozesses:
Entwicklung von Benutzerschnittstellen
Erstsemesterprojekt „Ertragsanalyse von thermischen Solaranlagen“
Forschungsprozess Car
OO Analyse und Entwurf für Anwender
Einstiegsunterricht - Informatik -. Möglichkeiten des Einstiegsunterricht Benutzung und Analyse eines dokumentierten Systems Einführung in die Programmierung.
Schulz & Löw Consulting GmbH
Tino Reindanz - FSU Jena Seminar Aktive Datenbanken – SS 2007 Folie 1 Seminar Aktive Datenbanken Rule Development Rule Development for Active Database.
Hessisches Kultusministerium Das hessische Beraterprojekt - Vom Kerncurriculum zum Schulcurriculum - Innovationsstrategien.
Vorgehensmodelle: Schwergewichtige Modelle
Das Wasserfallmodell - Überblick
University of Applied Sciences Übung Objektorientierte Programmierung II Dipl.-Inf. (FH) Markus Vogler.
CRM - Software für das effiziente Kontaktmanagement Präsentation für
Prototypentwicklung für ein Testmanagementsystem
©ASAP Digital Solutions Erfolgsfaktoren in modernen (IT) Unternehmen.
Telecooperation/RBG Technische Universität Darmstadt Copyrighted material; for TUD student use only Grundlagen der Informatik I Thema 16: Ausnahmebehandlung.
Software-Technik „Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige.
PMExcellence - Module P M E x c e l l e n c e - d e r W e g z u h e r v o r r a g e n d e n P r o j e k t e n Basismodul: Grundlagen des Projektmanagements.
Wasserfallmodell und Einzelbegriffe
Der Führungskreis.
Automatisierte Worterkennung (Autocorrect) Automatisierung in der Medientechnik, Labor, KulturMediaTechnologie Lucia Winsauer SS14.
Rational Unified Process
Testvorbereitungen, Unit Test
Referentin: Sofia Michaela Klonovsky
Weg mit Fehlern, die kein Entwickler versteht …
Was ist Quality Function Deployment?
Test-Driven Development
Silver Monkey Rollout Center
Entwicklungsstufen von der Idee zum Business Case
imbus - Software-Qualität in der Medizintechnik
made by Aberer, Spiegel & Tschegg
Test 1 Test 2 Test 3. Test 4 Test 5 Test 6 Test 7 Test 8 Test 9.
Performanz- und Lasttests Formale Methoden
Semesterprojekt Präsentation Thema 1 Test-Arten
Formale Methoden Semesterprojekt Präsentation Thema 1 Test-Arten Fernstudium Master WI, MWI 10F Jan te Kock,
Testsysteme für Automatisierte Softwaretests Seminarvortrag von Rica Wedowski.
© Copyright INFORM GmbH Seminarvortrag im Studiengang Scientific Programming von Nicole Küpper am Analyse des Updatevorgangs und Auswahl.
Seminararbeit Release Management von Web-Systemen Minh Tran Lehrstuhl für Software Engineering RWTH Aachen
Systems Requirements & Achitectur ENG 2 & ENG 3 Training Kunde,
07.01 Weiterbildungsmanagement Management- prozesse Geschäfts- prozesse Unterstützungs- prozesse Innovations- prozesse Optimierungs- prozesse Struktur.
, Jens Rettig1 Einsatz von Versionsverwaltungstools im ORACLE – Umfeld Dipl.-Inform. Jens Rettig
Software-Delivery auf Knopfdruck IBM Cloud & DevOps.
Semesterprojekt „Formale Methoden“ Thema: Management des Testens Fakultät für Wirtschaftswissenschaften Tina Michel Sven Soward Alexander Lehmann.
Test.
Arbeitsplatz SmartPhone
DevOps Michael Minh Pham.
 Präsentation transkript:

Softwareentwicklung & Testprozess Schwerpunkt Testprozess Anne Katrin Salig

Agenda Testphasen und –ergebnisse Automatisierung von Tests Fehlermanagement Zusammenfassung

Testphasen und -ergebnisse 5 Phasen / min. 1 Ergebnis Testinitialisierung  wesentliche Ziele, Testobjekte, Ergebnisse, Aktivitäten Testplanung  Zusammenstellung der Testszenarien, Testmethoden und Testumgebung Testdurchführung  Ausführung der Testfälle Testauswertung  Auswertung des Testergebnisses  Rücksprung auf Testdurchführung bei fehlerhaftem Testergebnisse Testabschluss  Dokumentation der durchgeführten Testaktivitäten und des Ergebnisses Vgl. Steinweg, Carl: Management der Softwareentwicklung, S. 340

Automatisierung von Tests Regressionstests Prüft nach Systemveränderungen auf neue Defekte im Quellcode Vorteile Hohe Effizienz Zustand des Softwaresystems = Grundlage für weitere Planungen Durchführung  bestehende Version des Systems verändert wurde Sicherstellung, dass nach der Weiterentwicklung oder Fehlerkorrektur im Quellcode keine neuen Defekte/Fehler entstanden sind Effizienz  Rolle des Testers = Entwickler (Zeitersparnis) Planung  weitere Informationen aus Testergebnissen und Fehlerberichten für Projektplanung (Projektfortschritt)

Automatisierung von Tests Ergebnisarten des Regressionstests Erfolg (Success) Fehler (Error) Fehlschlag (Failure) Test ist erfolgreich, wenn Ist- und Sollergebnisse übereinstimmten Abweichungen müssen weiter ausgewertet werden Erfolg  Ist- und Soll stimmen überein  Testfall = erledigt Fehler  Testlauf vollständig durchgeführt  aber Ist & Soll stimmen nicht überein (z.B. abweichende Werte) Fehlschlag  Testlauf nicht durchgeführt, z.B. Programmabsturz

Automatisierung von Tests Oberflächentests Funktionale Eigenschaften der GUI Nicht: Intuitive Benutzerführung Einhaltung von Style-Guides Rahmenbedingungen Eingabemöglichkeiten Ablaufgeschwindigkeit Benutzerschnittstelle Signifikante Änderungen der GUI Funktionale und temporale Eigenschaften der GUI werden getestet Führt Button gewünschte Funktionen aus / Werte aus Eingabefeldern ziehen Vorteil  Ansteuerung der Applikation durch die Testumgebung wie durch einen realen Benutzer Geprägt durch Rahmenbedingungen: Auswahl von Menge an Eingabemöglichkeiten und Optionen auf der GUI Keine beliebige Beschleunigung des Ablaufs Zahlreiche Interaktionen mit der Benutzerschnittstelle Anpassung der Oberflächentests nach GUI-Änderungen

Automatisierung von Tests Capture-Replay-Tests Testroboter für die GUI Aufzeichnung manuell getätigter Bedienschritte Prinzip des Videorekorders Gliederung in folgende Phasen: Capture – Program – Replay Aufzeichnung der während einer Testsitzung manuell durchgeführten Bedienschritte

Automatisierung von Tests Capture Bedienung der Anwendung mit zeitgleicher Protokollierung von Tastatur- und Mauseingaben (x,y)-Koordinate  primitive Systeme Referenz des identifizierten GUI-Objektes  GUI-Änderungen leichter handhabbar Program Erzeugung skriptähnlichen Ablaufplans  Reproduktion der getätigten Eingaben Erweiterung um Checkpoints zum Vergleich von Soll & Ist Replay Reproduktion der generierten Skript-Datei An Checkpoint gelangte Aktion wird auf Fehler überprüft Vgl. Hoffmann, Dirk: Software-Qualität, S. 475

Fehlermanagement Techniken und Methoden, die einen strukturierten Umgang mit Software-Anomalien innerhalb des Entwicklungs- prozesses gewährleisten Software-Anomalien = Auffälligkeiten, die als möglicher Softwarefehler interpretiert werden können Ablage der Anomalien in einer Fehlerdatenbank Bug-Tracking-System

Fehlermanagement Aufbau mit allen Zugriffsgruppen Tester  stellte Fehler ein Entwickler  behebt festgestellte Fehler Management  Infos über Projektforschritt Optional: Kunde  Einstellen von Fehlern / Einsehen Bearbeitungsstatus Vgl. Hoffmann, Dirk: Software-Qualität, S. 478

Fehlermanagement Merkmale der Bug-Tracking-Systeme Identifikationsmerkmale Ident-Nr., Name & Version des Testobjekts, … Klassifikationsmerkmale Priorität, Schwere der Anomalie, … Beschreibungsmerkmale Genaue Fehlerbeschreibung, zusätzliche Dateien, … Identifikationsmerkmale  Hard-/Softwareumgebung Klassifikationsmerkmale  Aktueller Bearbeitungszustand Probleme  Merkmale Schwere d. Anomalie/Priorität: Häufig eine Gleichsetzung der Merkmale Ineffizienz bei Auswahl 5+ Kategorien für Priorität  max. drei bis vier Kategorien

Fehlermanagement Bugzilla Freeware, die in vielen Open-Source-Projekten Anwendung findet Beispiele für Bearbeitungsstatus von Fehlern Unconfirmed New Assigned Resolved Verified Closed Bearbeitungsstatus = Klassifikationsmerkmal Unconfirmed  initial, neu eingestellte Anomalie (Fehler?) New  Fehler bestätigt Assigned  Zuweisung an Entwickler (Korrektur) Resolved  Anslyse erfolgt / Fehlerbeschreibung in DB eingepflegt Verified  Korrektur wurde überprüft und akzeptiert / Fehlerbericht vorbereitet Closed  Fehlerbericht wurde geschlossen / Dokumentation durch Speicherung zur Nachverfolgung

Fehlermanagement Crash Reports Schwerwiegendes Verhalten im produktiven Betrieb Bearbeitung mit höherer Priorität Berichtserstellung durch Kunden Manuell über Fehlerdatenbank Automatisch durch Software nach Bestätigung durch Nutzer Bsp. Windows Error Reporting Meldung der kundenseitigen Anomalien über manuelle o. automatische Berichtserstellung Manuell  Zugriff auf Fehler-DB des Herstellers / Zugriff mit Rechteeinschränkungen Autom  Integriert in SW / durch Bestätigung wird Fehler an Hersteller gesendet

Zusammenfassung Organisation des Testprozess unabdingbar Strukturierter Ablauf während der Testdurchläufe muss gegeben sein Automatisierung von Regressions- und Oberflächentests fördern die Effizienz Jedoch hoher Aufwand in der Vorbereitung Fehlerbehebung durch Fehlerdatenbank unterstützen die Kommunikation bzgl. Bearbeitungsstatus

Literatur & Quellen Hoffmann, Dirk W.: Software-Qualität, Heidelberg 2008. Benutzerhandbuch HP Quality Center, Hewlett-Packard Development Company, Palo Alto 2009. Steinweg, Carl: Management der Softwareentwicklung, 6. Auflage, Wiesbaden 2005. Spillner, Andreas: Basiswissen Softwaretest – Aus- und Weiterbildung zum Certified Tester, 4. Auflage, Heidelberg 2010. Pezzé, Mauro et al.: Software testen und analysieren – Prozesse, Prinzipien und Techniken, München 2009.

Vielen Dank!