Software Qualitätssicherung durch systematischen Softwaretest



Ähnliche Dokumente
Automatische Testfallgenerierung aus Modellen. 8. Neu-Ulmer Test-Engineering-Day Martin Miethe

Einsatz automatischer Testdatengenerierung im modellbasierten Test

Automatic Generation of Testcases for System Level Tests. Dr. Martin Beißer, sepp.med gmbh

Softwaretechnik. Vertretung von Prof. Dr. Blume Fomuso Ekellem WS 2011/12

Testautomatisierung. Lessons Learned. qme Software. Gustav-Meyer-Allee Berlin. Telefon 030/ Telefax 030/

Testmanagement in IT-Projekten

Qualitätssicherung im Lebenszyklus des itcs. Anspruch und Wirklichkeit.

Diplomarbeit. Konzeption und Implementierung einer automatisierten Testumgebung. Thomas Wehrspann. 10. Dezember 2008

Testen Prinzipien und Methoden

Medizinprodukt 1.0. Lehren aus der Neuentwicklung von Medizinprodukte-Software. Matthias Hölzer-Klüpfel

T1 - Fundamentaler Testprozess

Qualitätsmanagement. Grundlagen

Kompetenz. rund um. Ihren. Entwicklungsprozess. Über uns. Technische Software. Modellbasierter Test. Prüfplätze. Automatisierung.

Thomas Freitag achelos GmbH SmartCard-Workshop achelos GmbH

T2 Fundamentaler Testprozess

Hauptseminar Automotive Software Engineering Testen, Rapid Prototyping und x in the loop

Testphase. Das Testen

Softwaretechnikpraktikum SS Qualitätsmanagement I. 1. Überblick. Qualität. Qualitätsmerkmal

your engineering partner boost your development

Modellbasierte Softwareentwicklung

Effiziente Testautomatisierung in agilen Projekten

Programmiertechnik II

Softwarequalitätssicherung

Notwendigkeit der Testautomatisierung? Neue Ideen, Konzepte & Werkzeuge

Einführung von Testautomatisierung reflektiert. Erkenntnisse eines Linienmanagers zu Herausforderungen und Fallgruben

Vector Software. Test Automation mit VectorCAST während der gesamten Softwareentwicklung W H I T E P A P E R

Testen im Software- Entwicklungsprozess

Telling TestStories Modellbasiertes Akzeptanz Testen Serviceorientierter Systeme

Qualitätsmanagement im Projekt

Testen heute und in der Zukunft Ergebnisse der ersten unabhängigen Marktstudie für 6 Länder

Systematisches Testen von Software

Prozessbewertung und -verbesserung nach ITIL im Kontext des betrieblichen Informationsmanagements. von Stephanie Wilke am

Jens Borchers. Kritische Erfolgsfaktoren beim Abnahmetest in Redevelopment- Projekten Erfahrungen aus einem Großprojekt

Quality Point München

Testen. SEPR Referat: Testen - Oliver Herbst

Komponententest. Testen von Software Systemen. Übung 02 SS 2009 Version:

Tester als Coach ein Erfolgsmodell

Projektmanagement und Softwarequalität

Probeklausur. Lenz Belzner. January 26, Lenz Belzner Probeklausur January 26, / 16

,$ -. "+0 *+*+ ! / -#$%$. #$%'' $ () 1 2$ #$%$! 1 2$3 )!

Systematische Software-Qualität mittels einer durchgängigen Analyse- und Teststrategie

Validierung und Verifikation!

Qualitätssicherung. Was ist Qualität?

Testmanagement. Q-Day. Frank Böhr Fraunhofer IESE

Projektmanagement. Vorlesung von Thomas Patzelt 9. Vorlesung

FUTURE NETWORK REQUIREMENTS ENGINEERING

Auswahl alter Klausuraufgaben aus einer ähnlichen Vorlesung Maßgeblich für die Prüfung sind die Vorlesungsinhalte!

Entwicklungsbegleitender Test mechatronischer Systeme

Qualitätssicherung (Testen) im Application Life Cycle

Durchgängiger Software- und Systemtest einer hochdynamischen Antriebsregelung

Software-Qualität im Rahmen modellgetriebener Softwareentwicklung

Aufbau und Betrieb eines Testcenters

Prozess-Modelle für die Softwareentwicklung

Der frühe Tester fängt den Bug

Teststrategie festlegen und Teststufen aufeinander abstimmen

Agilität und systematischer Test

Software- Qualitätsmanagement

Bringing Software Engineering Science into Practice

Wieviel Usability Engineering braucht das Software Engineering?

Senior Consulting. Senior Consulting Strategical, Conceptual and Technical Consulting Seite 1

Softwarequalität: Einführung. 15. April 2015

Einführung von Test-Prozessen laut TMMi. Egon Valentini 1. März 2010

Modellierung von Echtzeitsystemen mit dem UML CASE Tool Telelogic Tau G2 Developer

IIBA Austria Chapter Meeting

Agile Software-Entwicklung im Kontext der EN50128 Wege zum Erfolg

Automatisierte GUI Tests in fachlichen Teststufen Patrick Möller

Senior Consulting. Senior Consulting Strategical, Conceptual and Technical Consulting Seite 1

Projektmanagement Vorlesung 14/ 15: Wiederholung ausgewählter Themen zur Klausurvorbereitung. Prof. Adrian Müller, PMP, PSM-1, CSM FH Kaiserslautern

Semantik von Formeln und Sequenzen

9001 weitere (kleinere) Änderungen

Professionelles Software-Testing Hilfreiches Tool bei Konflikten

Standard Inhaltsverzeichnis für Testvorschrift

Testanalyse und Testautomation bei der ImmobilienScout24

Softwarequalität: Zusammenfassung und Ausblick. 17. Juli 2013

Lean Modeling - Datenmodelle und Geschäftsregeln einfach und präzise mit natürlicher Sprache spezifizieren

AUFBAU EINER TESTORGANISATION

Comparison of Software Products using Software Engineering Metrics

Software Test- und Analyse-Tools für Produktivität und Qualität.

Erhebung von Anforderungen an den Einsatz von ebusiness-standards in kleinen und mittleren Unternehmen

Machbar? Machbar!

Solvency II. Komplexität bewältigen

Informationssystemanalyse Problemstellung 2 1. Trotz aller Methoden, Techniken usw. zeigen Untersuchungen sehr negative Ergebnisse:

Seamless Model-based Engineering of a Reactive System

Whitebox-Tests: Allgemeines

Software-Entwicklung

Institut für Computational Engineering ICE. N ä h e r d ra n a m S ys t e m d e r Te c h n i k d e r Z u ku n f t. w w w. n t b.

9001 Kontext der Organisation

Testplan. Hochschule Luzern Technik & Architektur. Software Komponenten FS13. Gruppe 03 Horw,

Dr. Klaus Lamberg, Michael Beine

Automatisiertes End-to-end Testen von Enterprise Applikationen

MappingTestTool. Werkzeug für automatisierte Mappingtests auf SAP PI / PO

Test-Strategien. Grundsätzliches Blackbox-Testen Whitebox-Testen Graybox-Testen Ablauf von Tests Zusammenfassung. HS Mannheim

WIE WIRKLICH IST DIE WIRKLICHKEIT WIE SCHNELL WERDEN SMART GRIDS WIRKLICH BENÖTIGT? DI Dr.techn. Thomas Karl Schuster Wien Energie Stromnetz GmbH

Die Welt der SW-Qualität Ein Streifzug in 30 Minuten! Johannes Bergsmann Eigentümer

intence automotive electronics Ausführbare Spezifikation Der Weg zu besseren Anforderungen

Social Media. Marketing und Kommunikation mit Facebook, Twitter, Xing & Co.

PRÜFUNG FÜR ELEKTROINGENIEURE. Softwaretechnik I. Musterlösung SS Ohne Gewähr -

Universität Paderborn Die Universität der Informationsgesellschaft. Validierung und Verifikation (inkl. Testen, Model-Checking, Theorem Proving)

Testfälle und Anderes aus Modellen generieren. Dr. Martin Beißer, sepp.med gmbh

IT OUTSOURCING. Wie die IT durch Transparenz zum internen Dienstleister wird. Herford, , Steffen Müter

Transkript:

Software Qualitätssicherung durch systematischen Softwaretest Innovative Techniken und aktuelle Herausforderungen Dr. Bernhard Peischl Softnet Austria Institut für Softwaretechnologie Technische Universität Graz 1/18

Sichten auf Software Qualität Die Gesamtheit und Ausprägung von Eigenschaften und Merkmalen eines SW-Produktes bezüglich seiner Eignung, festgelegte und vorausgesetzte Interne Metriken Erfordernisse zu erfüllen. Externe Metriken Quality in Use Metriken ISO 9126 2/18

Softwarequalität und Fehlerraten Möglichst wenige Post-Release Bugs Übliche Fehlerraten Applikationssoftware: 25 Bugs / 1.000 LOC Gute Software: 2 Bugs / 1.000 LOC Sicherheitsrelevante Software < 1 Bug / 10.000 LOC Fehlerreduktion notwendig um Qualität zu erhöhen Kosten zu senken Kundenzufriedenheit zu erhöhen Allgemein akzeptiert Fehler möglichst früh finden (Kosten) 3/18

Kosten der Fehlerbehebung 4/18

Wie findet man Software Fehler? Inspektionen und Reviews Automatische Statische Analysen Syntaktische Analyse (Regeln) Semantische e Analysen (erweiterte e Typ-Prüfung) üu Formale Techniken Verifikation Theoretisch sehr leistungsfähig, praktisch eingeschränkt In der Praxis derzeit nur sehr punktuell verwendbar Eher eng definierte Anwendungsgebiete Hazard Analysen, Eventbaum Analysen 5/18

Qualitätsattribute und Software Test (1) Testen SW erfüll Qualitätsattribut wenn Test durchgeht Welche Teile des Systems werden getestet? Unit-Tests Komponententests Integrationstests Systemtests In welcher Phase des Entwicklungsprozesses? Validierung durch Abnahmetest Verifikation durch Unit-Tests, Regressions-Tests, etc. 6/18

Qualitätsattribute und Software Test (2) Welches Qualitätsattribut wird überprüft? Lasttests (Antwortzeit, Datendurchsatz) Usability Test (Benutzbarkeit) Robustheitstest Funktionale Korrektheit Welche Techniken sind anzuwenden? Standards entscheiden im Zweifelsfall, welche Verfahrensweisen, Methoden und Techniken als Stand der Technik bzw. als Stand von Wissenschaft und Technik zu betrachten sind. 7/18

Notwendige, minimale Anforderungen Absolut notwendig entspr. aller maßgeblichen Standards: Funktionsorientierte Testplanung für alle Testphasen Reproduzierbarkeit von Testergebnissen => automatische Regressionstests Weitgehender Konsens Ergänzende strukturorientierte ti t Abdeckung (mindestens Zweigüberdeckungstest) In kritischen Anwendungsbereichen gründliche struktur- orientierte Tests (z.b. RTCA DO 178-B, MCDC Abdeckung) 8/18

Testautomatisierung - Was ist machbar? Disziplinierte Bewertung des Testprozesse z.b. TPI (Test Process Improvement) Automatische Testausführung End-to-End d Test bei Benutzerschnittstellen e ttste e Hardware in the Loop (HiL) Testautomatisierung Testportfolio Management Generierung von Testabläufen und zugehörigen Testdaten aus Modellen Bereitstellung der (Ingenieurs)Modelle Teststrategie bzw. Festlegen des Testzieles (Fokussierung) Toolbox Unterstützung (z.b. CADP) 9/18

Herausforderung GUI Testing (1) End-to-End Test einer Applikationssoftware Unterschiedliche Benutzeroberflächen Robustheit gegenüber konkrete Positionen von UI Elementen ( Makro-Rekorder ) Dynamisches Auftreten von UI Elementen Schwerwiegende UI-relevante Post-Release Bugs Smart Monkey Wissen über User Interface (Modell) Einfache Modellierung damit ROI gegeben Automatische Modellerstellung (Capture Tool) Random Walk durch Modell 10/18

Herausforderung GUI Testing (2) 11/18

Herausforderung Konformitäts-Test (1) Überprüfung der Konformität der Implementierung gegenüber einer Spezifikation Welche Konformitätsrelation? Isomorphismus? IOCO, SIOCO? Input-Output Conformance (IOCO) Ausgangsevents der Implementierung Ausgangsevents der Spezifikation Fokussierung der Testfallerstellung t Test Purpose Verschiedene Teststrategien 12/18

Tools - Konformitäts-Test (2) Prototypisches Tool / Sprache Modell / Test Generation Engine Methode Lutess Lustre - Lurette Lustre - GATeL Lustre CLP Autofocus Autofocus CLP Conformance Kit - FSM Phact - FSM TVEDA SDL, Estelle FSM AsmL AsmL FSM Cooper Basic LOTOS LTS TGV LOTOS, SDL, UML LTS TorX LOTOS, Promela, FSP LTS STG NTIF LTS AGEDIS UML/AML LTS Test Composer SDL LTS, FSM AutoLink SDL - 13/18

Herausforderung Teststrategie Umsetzung über Test Purpose Notwendige Teile (LTS, on the fly ) Verschiedene Strategien (Szenarien, Abdeckung, Fehler) Umgesetzte Strategien Szenarien-basiert (Lastenheft) Fehler-basiert (Error Seeding) Abdeckungs-basiert (Abdeckung der Spezifikation) Random (TorX, längere Testfälle) Strategiet Länge Anzahl Coverage [%] Produkt A Produkt B Zeit Testfalls Testfälle Funktion CD Decision Random 10.95 5000 73 38 42 4 5 4 Sek. Szenario-b. 4.53 5408 78 36 40 4 9 1 Sek. Fehler-b b. 478 4.78 72 70 30 32 4 6 45 Min. 14/18

Herausforderung Eingebettetes System Quellen für Nicht-Determinismus Abstraktion bzw. Modellierung Technisch, h Physikalisch h 15/18

Konsequenzen für Testautomatisierung Automatische Generierung Komplexität der Suche ist hoch Testtheorie muss baum-artige Testfälle unterstützen Input Output Conformance (IOCO) Automatisierung der Testausführung Unterstützung baum-artiger Testfälle durch Testtreiber Praktisch: Modell läuft als Beobachter mit Test Recovery Oft werden nur lineare Sequenzen unterstützt Eingriff in operative Testumgebung 16/18

Ingenieursdenke und Modelle Domänenexperten und Modellierung Eindeutiges Wording Hier entstehen viele Missverständnisse Testmodell Verhaltensmodell Testfallgenerierung, Herausforderung Modelltransformation Ausgangsbasis UML Statechart Statechart Umgebungsmodelle Symbolisch (STS, EFSM) vs. Enumerativ (LTS) 17/18

Schlussfolgerung Test ist essentiell in SW-Qualitätssicherung Weitestgehender Konsens Funktionsorientierte Testplanung Strukturorientierte tu t e te Abdeckung und Reproduzierbarkeit (Regression) Test von Software ist komplexes Gebiet Innovatives, heterog. Feld (Ausführung, Generierung) Automatisierung der Testfallgenerierung (heute machbar) Reife Research Prototypen, t aber keine durchgängige Toolchain No one size fits all solution (Teststrategie) Anzahl der Post-Release Bugs reduzierbar 18/18

Fragen? Danke für Ihre Aufmerksamkeit k! 19/18