Modellbasiertes Testen mit UTP

Ähnliche Dokumente
Modellgetriebene Entwicklung von Pervasive Games

Model Driven Development im Überblick

Telling TestStories Modellbasiertes Akzeptanz Testen Serviceorientierter Systeme

Model Driven Architecture

MOF Meta Object Facility. Veranstaltungsvortrag im Rahmen der Projektgruppe ComponentTools

Ein Ansatz zum modellgetriebenen Integrationstest von EJB-basierten Informationssystemen

Model Driven Architecture

Modellgetriebene Softwareentwicklung

Grundlagen von MOF. Alexander Gepting 1

Modellgetriebene Entwicklung eingebetteter Systeme mit Eclipse

MDSD Einführung und Überblick

Software-Engineering im Sommersemester 2014

ER-Modelle zur klaren Begrifflichkeit bei der Testentwicklung

Themen. Software Design and Quality Group Institute for Program Structures and Data Organization

Vorlesung Software Engineering

Aktuelle Fortschritte von MDAbasierten Entwicklungsansätzen im Bereich Fahrerassistenzsysteme

Potentiale modellgetriebener Softwareentwicklung

Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick. 7. Februar 2013

2 Softwarearchitektur in der Organisationsstruktur 25

MDRE die nächste Generation des Requirements Engineerings

Erfahrungen mit der Einführung von modellbasierter Testspezifikation, Implementierung und Generierung bei einem deutschen Automotive OEM

UML 2.0 als Architekturbeschreibungssprache? Seminar: Architekturbeschreibungssprachen Manuel Wickert

Modell zur Einflussanalyse Ein Modell zur Einflussanalyse von Methodenänderungen in Entwicklungsprozessen

Metamodell und Beschreibungssprache

Requirements Engineering I

Strategien zur Testfallgenerierung aus UML-Zustandsautomaten

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

Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick. 11. Februar 2015

Untersuchung der Sprachkonformität und Vollständigkeit von UML 2.0 Werkzeugen

MDA-Praktikum, Einführung

U2TP UML Testing Profile Specification

Von UML 1.x nach UML 2.0

Basiswissen modellbasierter Test

22. Januar Gruppe 2: TOPCASED

Analyse und Entwurf von Softwaresystemen mit der UML

Model Querys zur Überprüfung von sicherheitsrelevanten Eigenschaften

Automatisierte Architekturanalyse unter Einsatz von UML 2.0 Modellen

Eclipse Modeling Framework Modellgetriebene Softwareentwicklung Prof. Andreas Schmidt

Software Factories WS 2017/18. Prof. Dr. Dirk Müller. 3 Modellgetriebene Softwareentwicklung

Steigerung der Testeffizienz Von modellgetriebener Entwicklung zum modellgetriebenen Testen

MDSD in der Praxis. Dr. Shota Okujava.

Basiswissen modellbasierter Test

Motivation Grundlagen Technologien Manipulation Ecore Genmodell Demo Persistenz Notification Ausblick GMF Fazit / Quellen

Entwicklung des Softwareengineerings im Bereich der IT-TK-Technologie. Stefan Bläsius und Gregorio Roper Berlin,

Bridging Microsoft Oslo and Eclipse EMF

Automatisierte Architekturanalyse mittels UML2.0 Diagrammen

Thema 5 Domain Specific Languages

Modellierung CORBA-basierter Anwendungssysteme mit der UML

Wiederverwendung von Transformationen

Modellbasierte Softwareentwicklung mit Sicherheitseigenschaften und UMLsec

UML Modellierung und Model Driven Architecture (MDA) für Java mittels Rational Software Architect (RSA)

Einführung in die Modellgetriebene Software-Entwicklung (Stichworte)

Dialogentwicklung mit Hilfe des Model Driven Architecture Ansatzes

Ausführbare UML Modelle multimodaler Interaktionsanwendungen Marcel Dausend 1, Mark Poguntke 2 1

Model Driven Architecture (MDA)

Modellgetriebene Softwareentwicklung. Gabriele Taentzer WS 2012/2013 Philipps-Universität Marburg

Modellbasierte Analyse realisierungstechnischer Einflüsse. auf hybride regelungs- und steuerungstechnische. Systeme im Fahrzeug

Code Generieren mit UML2

Modellgetriebene Entwicklung von Informationsintegrationssystemen. ??? Was. Gliederung. Entwurf eines IIS. Informationsintegrationssysteme (IIS) ???

Testfallgenerierung aus Statecharts und Interaktionsdiagrammen

Validierung von System- Architekturen

Von der Prozessanalyse zur Prozessautomatisierung

Model-Driven Testing

Was Sie schon immer über MBSE wissen wollten

Testen von Echtzeiteigenschaften für verteilte Ablaufsteuerungen

modellzentrierter Test

Requirements Engineering I

UnitTest mit dem SQL-Developer Testgetriebene Entwicklung mit Oracle Werkzeugen

Testframework für Eckelmann SFT

Modellgetriebene Softwareentwicklung

Definition von domänenspezifischen Sprachen mit Xtext: Einführung

Unified Modeling Language 2

SEA. Modellgetriebene Softwareentwicklung in der BA

Inhalt. Motivation Techniken des MDE. Fallbeispiele

Model Driven Architecture

Einführung in das Eclipse Modeling Framework (EMF)

Metamodellierung mit MOF und Ecore

Computergestützte Modellierung und Verifikation

Einfach generieren. Susanne Klar, Michael Klar. Generative Programmierung verständlich und praxisnah ISBN Inhaltsverzeichnis

Modellgetriebene Entwicklung einer Eclipse RAP-Anwendung unter Verwendung des Eclipse Modeling Frameworks

Werkzeugunabhängigkeit bei der Modellierung Schwierigkeiten und mögliche Lösungsansätze

10. Modellgetriebene Entwicklung Softwaretechnik (CNAM) Wintersemester 2009 / 2010 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik

Vortrag von: Ilias Agorakis & Robert Roginer

Tabellarischer Vergleich der. für modellbasiertes Testen aus Managementsicht. Dominik Beulen, Barış Güldalı, Michael Mlynarski

Entwicklung interaktiver Systeme mit Hilfe von Model Based User Interface Development und HCI Patterns

Modellgetriebene Testentwicklung (MDTD)

ActiveCharts. Verknüpfung von Modellen und Code bei der modellgetriebenen Softwareentwicklung mit UML 2.0

Modellbasiertes Testen

Ein Werkzeug zur Überdeckungsmessung für kontrollflussbezogene Testverfahren

Software Factories SS Prof. Dr. Dirk Müller. 3 Modellgetriebene Softwareentwicklung

1.4! Einführung. Systemmodellierung. Methoden und Werkzeuge

Thomas Freitag achelos GmbH SmartCard-Workshop achelos GmbH

Testen von graphischen Benutzeroberflächen. 24. Juni 2015

Modellgetriebene Softwareentwicklung reaktiver Systeme. Oliver Neumann 1

Inhaltsverzeichnis. Oliver Alt. Modellbasierte Systementwicklung mit SysML ISBN: Weitere Informationen oder Bestellungen unter

2.1 Motivation modellgetriebener Ansätze Die Geschichte der Softwareentwicklung ein historischer

An Overview of the Signal Clock Calculus

xii 5.3 Debugging Einplanung der Fehlersuche in Produkt und Prozess Vorbereitung und Ausführung des Debugging

Transkript:

Modellbasiertes Testen mit UTP Daniel Löffelholz 16. Dezember 2008

Einführung Motivation Grundlagen Modellbasiertes Testen Einordnung Vorgehen Technologien UML Testing Profile Beispiel Ausblick Anwendungsbeispiel Inhaltsverzeichnis

Motivation Steigende Komplexität von Softwaresystemen

Motivation Steigende Komplexität von Softwaresystemen Durch steigende Allgegenwärtigkeit (Ubiquitous Computing) auch steigender Anspruch an die Qualität

Motivation Steigende Komplexität von Softwaresystemen Durch steigende Allgegenwärtigkeit (Ubiquitous Computing) auch steigender Anspruch an die Qualität Neue Paradigmen gefordert!

Motivation Steigende Komplexität von Softwaresystemen Durch steigende Allgegenwärtigkeit (Ubiquitous Computing) auch steigender Anspruch an die Qualität Neue Paradigmen gefordert! Ingenieursmässiges Vorgehen: Abstraktion/Verwenden von Modellen

Motivation Steigende Komplexität von Softwaresystemen Durch steigende Allgegenwärtigkeit (Ubiquitous Computing) auch steigender Anspruch an die Qualität Neue Paradigmen gefordert! Ingenieursmässiges Vorgehen: Abstraktion/Verwenden von Modellen Hält mit Modellgetriebener Softwareentwicklung auch in der Softwareindustrie Einzug

Motivation Steigende Komplexität von Softwaresystemen Durch steigende Allgegenwärtigkeit (Ubiquitous Computing) auch steigender Anspruch an die Qualität Neue Paradigmen gefordert! Ingenieursmässiges Vorgehen: Abstraktion/Verwenden von Modellen Hält mit Modellgetriebener Softwareentwicklung auch in der Softwareindustrie Einzug Aber: Änderungen nicht nur bei der Entwicklung, sondern auch beim Testen nötig

Einführung Motivation Grundlagen Modellbasiertes Testen Einordnung Vorgehen Technologien UML Testing Profile Beispiel Ausblick Anwendungsbeispiel Inhalt

Verschiedenste Techniken zur Nutzung von Modellartefakten im Testprozess

Modellbasiertes Testen Erste Ansätze mit endlichen Automaten in den 60ern

Modellbasiertes Testen Erste Ansätze mit endlichen Automaten in den 60ern Bisher nicht durchgesetzt

Modellbasiertes Testen Erste Ansätze mit endlichen Automaten in den 60ern Bisher nicht durchgesetzt Grundvoraussetzung erst seit kurzer Zeit erfüllt

Modellbasiertes Testen Erste Ansätze mit endlichen Automaten in den 60ern Bisher nicht durchgesetzt Grundvoraussetzung erst seit kurzer Zeit erfüllt Schaffung einer einheitlichen Modellierungssprache (UML)

Modellbasiertes Testen Erste Ansätze mit endlichen Automaten in den 60ern Bisher nicht durchgesetzt Grundvoraussetzung erst seit kurzer Zeit erfüllt Schaffung einer einheitlichen Modellierungssprache (UML) Propagierung eines modellbasierten Entwicklungsansatzes (MDA)

Modellbasiertes Testen Erste Ansätze mit endlichen Automaten in den 60ern Bisher nicht durchgesetzt Grundvoraussetzung erst seit kurzer Zeit erfüllt Schaffung einer einheitlichen Modellierungssprache (UML) Propagierung eines modellbasierten Entwicklungsansatzes (MDA) Enthält kein explizites Testvorgehen

Modellbasiertes Testen Erste Ansätze mit endlichen Automaten in den 60ern Bisher nicht durchgesetzt Grundvoraussetzung erst seit kurzer Zeit erfüllt Schaffung einer einheitlichen Modellierungssprache (UML) Propagierung eines modellbasierten Entwicklungsansatzes (MDA) Enthält kein explizites Testvorgehen MDT benötigt seperate Modellierungstechnologien und Testprozessschritte

Modellbasiertes Testen Erste Ansätze mit endlichen Automaten in den 60ern Bisher nicht durchgesetzt Grundvoraussetzung erst seit kurzer Zeit erfüllt Schaffung einer einheitlichen Modellierungssprache (UML) Propagierung eines modellbasierten Entwicklungsansatzes (MDA) Enthält kein explizites Testvorgehen MDT benötigt seperate Modellierungstechnologien und Testprozessschritte

Vor- und Nachteile Eigenschaften der MDA werden übernommen

Vor- und Nachteile Eigenschaften der MDA werden übernommen (+) Automatisierungsmöglichkeiten

Vor- und Nachteile Eigenschaften der MDA werden übernommen (+) Automatisierungsmöglichkeiten (+) Wiederverwendung

Vor- und Nachteile Eigenschaften der MDA werden übernommen (+) Automatisierungsmöglichkeiten (+) Wiederverwendung (+) Abstraktion

Vor- und Nachteile Eigenschaften der MDA werden übernommen (+) Automatisierungsmöglichkeiten (+) Wiederverwendung (+) Abstraktion (-) Modellierungsoverhead

Vor- und Nachteile Eigenschaften der MDA werden übernommen (+) Automatisierungsmöglichkeiten (+) Wiederverwendung (+) Abstraktion (-) Modellierungsoverhead (-) Nicht für jede Anwendung geeignet

Modellbasiertes Testen II Zwei Möglichkeiten:

Modellbasiertes Testen II Zwei Möglichkeiten: Testen von Modellen mit Modellen

Modellbasiertes Testen II Zwei Möglichkeiten: Testen von Modellen mit Modellen Generieren vom Testsystem aus einem Testmodell

Modellbasiertes Testen II Zwei Möglichkeiten: Testen von Modellen mit Modellen Generieren vom Testsystem aus einem Testmodell

Statisches Testen Testen ohne Ausführung der Modelle Syntax: Korrektheit im Sinne der Modellierungsvorschrift - Meta-Modelle

Statisches Testen Testen ohne Ausführung der Modelle Syntax: Korrektheit im Sinne der Modellierungsvorschrift - Meta-Modelle Stil: Formal kaum möglich - Modellierungsstandards

Statisches Testen Testen ohne Ausführung der Modelle Syntax: Korrektheit im Sinne der Modellierungsvorschrift - Meta-Modelle Stil: Formal kaum möglich - Modellierungsstandards Semantik Konsistenz: Aufdecken von wiedersprüchlichen Aussagen der Teilmodelle

Statisches Testen Testen ohne Ausführung der Modelle Syntax: Korrektheit im Sinne der Modellierungsvorschrift - Meta-Modelle Stil: Formal kaum möglich - Modellierungsstandards Semantik Konsistenz: Aufdecken von wiedersprüchlichen Aussagen der Teilmodelle Vollständigkeit: Umsetzung der Anforderungen in das Modell

Dynamisches Testen Testen mit Ausführung der Modelle

Dynamisches Testen Testen mit Ausführung der Modelle Aktiv: Prüfung des Systemverhaltens mit definierten Testfällen

Dynamisches Testen Testen mit Ausführung der Modelle Aktiv: Prüfung des Systemverhaltens mit definierten Testfällen Passiv: Prüfung ob Systeminvarianten und Zustandsbedingungen eingehalten werden

Dynamisches Testen Testen mit Ausführung der Modelle Aktiv: Prüfung des Systemverhaltens mit definierten Testfällen Passiv: Prüfung ob Systeminvarianten und Zustandsbedingungen eingehalten werden

Von den Anforderungen zum Code Abstraktionsstufen passend zum MDA Guide der OMG

Von den Anforderungen zum Code Abstraktionsstufen passend zum MDA Guide der OMG Modelltransformationen bis zur Testcodegenerierung

Von den Anforderungen zum Code Abstraktionsstufen passend zum MDA Guide der OMG Modelltransformationen bis zur Testcodegenerierung Zwischen den Modellen: Generierung von Testmodellen und Anreicherung mit Testkonzepten

System- und Testmodelle Abbildung: Rollen der Modelle

Einführung Motivation Grundlagen Modellbasiertes Testen Einordnung Vorgehen Technologien UML Testing Profile Beispiel Ausblick Anwendungsbeispiel Inhalt

UML Testing Profile MOF-basiertes Metamodell für UML-Testing

UML Testing Profile MOF-basiertes Metamodell für UML-Testing Ging aus einem Request for Papers von 2001 hervor

UML Testing Profile MOF-basiertes Metamodell für UML-Testing Ging aus einem Request for Papers von 2001 hervor Ermöglicht UML-konforme Spezifikation von statischen und dynamischen Tests

UML Testing Profile MOF-basiertes Metamodell für UML-Testing Ging aus einem Request for Papers von 2001 hervor Ermöglicht UML-konforme Spezifikation von statischen und dynamischen Tests Ist mit existierenden Blackboxtest-Technologien verknüpfbar (z.b. JUnit, TTCN-3)

UML Testing Profile MOF-basiertes Metamodell für UML-Testing Ging aus einem Request for Papers von 2001 hervor Ermöglicht UML-konforme Spezifikation von statischen und dynamischen Tests Ist mit existierenden Blackboxtest-Technologien verknüpfbar (z.b. JUnit, TTCN-3)

Vorteile von Profilen Modelle und Profile können in Standard UML Tools ausgetauscht werden

Vorteile von Profilen Modelle und Profile können in Standard UML Tools ausgetauscht werden Tools müssen keine Funktionalität zur Veränderung des Metamodells (UML Sprachkern) anbieten

Vorteile von Profilen Modelle und Profile können in Standard UML Tools ausgetauscht werden Tools müssen keine Funktionalität zur Veränderung des Metamodells (UML Sprachkern) anbieten Viele UML-Basiskonzepte bleiben unangetastet und müssen nicht neu erlernt werden

Vorteile von Profilen Modelle und Profile können in Standard UML Tools ausgetauscht werden Tools müssen keine Funktionalität zur Veränderung des Metamodells (UML Sprachkern) anbieten Viele UML-Basiskonzepte bleiben unangetastet und müssen nicht neu erlernt werden

Beispiel: Mobile Gaming System UTP ist in vier Konzeptgruppen unterteilt:

Beispiel: Mobile Gaming System UTP ist in vier Konzeptgruppen unterteilt: Testarchitekturkonzepte: Konzepte bezogen auf Teststrukturund Testkonfiguration

Beispiel: Mobile Gaming System UTP ist in vier Konzeptgruppen unterteilt: Testarchitekturkonzepte: Konzepte bezogen auf Teststrukturund Testkonfiguration Testverhaltenkonzepte: Testfälle, Stimuli, Logging,...

Beispiel: Mobile Gaming System UTP ist in vier Konzeptgruppen unterteilt: Testarchitekturkonzepte: Konzepte bezogen auf Teststrukturund Testkonfiguration Testverhaltenkonzepte: Testfälle, Stimuli, Logging,... Testdatenkonzepte: Modellierung von Testdaten

Beispiel: Mobile Gaming System UTP ist in vier Konzeptgruppen unterteilt: Testarchitekturkonzepte: Konzepte bezogen auf Teststrukturund Testkonfiguration Testverhaltenkonzepte: Testfälle, Stimuli, Logging,... Testdatenkonzepte: Modellierung von Testdaten Testzeitkonzepte: Timeouts, Bearbeitungsdauer,...

Testpackage Abbildung: Test Package

Testfall Abbildung: Beispiel Aktivitätsdiagrammtest

Einführung Motivation Grundlagen Modellbasiertes Testen Einordnung Vorgehen Technologien UML Testing Profile Beispiel Ausblick Anwendungsbeispiel Inhalt

Anwendungsbeispiel Erstellen eines Testmodells für das Framework-PIM für das Pervasive-Gaming-Projekt

Anwendungsbeispiel Erstellen eines Testmodells für das Framework-PIM für das Pervasive-Gaming-Projekt Umsetzung des Gelernten

Anwendungsbeispiel Erstellen eines Testmodells für das Framework-PIM für das Pervasive-Gaming-Projekt Umsetzung des Gelernten Parallele Entwicklung zum MDA-Ansatz der OMG

Anwendungsbeispiel Erstellen eines Testmodells für das Framework-PIM für das Pervasive-Gaming-Projekt Umsetzung des Gelernten Parallele Entwicklung zum MDA-Ansatz der OMG Für die konkrete Anwendung: Generierung des Testcodes

Anwendungsbeispiel Erstellen eines Testmodells für das Framework-PIM für das Pervasive-Gaming-Projekt Umsetzung des Gelernten Parallele Entwicklung zum MDA-Ansatz der OMG Für die konkrete Anwendung: Generierung des Testcodes Fragestellungen: Was leisten Werkzeuge mit MDT-Unterstützung aktuell?

Anwendungsbeispiel Erstellen eines Testmodells für das Framework-PIM für das Pervasive-Gaming-Projekt Umsetzung des Gelernten Parallele Entwicklung zum MDA-Ansatz der OMG Für die konkrete Anwendung: Generierung des Testcodes Fragestellungen: Was leisten Werkzeuge mit MDT-Unterstützung aktuell? Anwendungsfallspezifisch: Entwicklung eines Frameworktestmodells

Anwendungsbeispiel Erstellen eines Testmodells für das Framework-PIM für das Pervasive-Gaming-Projekt Umsetzung des Gelernten Parallele Entwicklung zum MDA-Ansatz der OMG Für die konkrete Anwendung: Generierung des Testcodes Fragestellungen: Was leisten Werkzeuge mit MDT-Unterstützung aktuell? Anwendungsfallspezifisch: Entwicklung eines Frameworktestmodells Design-for-Testability des Systemmodells

Anwendungsbeispiel Erstellen eines Testmodells für das Framework-PIM für das Pervasive-Gaming-Projekt Umsetzung des Gelernten Parallele Entwicklung zum MDA-Ansatz der OMG Für die konkrete Anwendung: Generierung des Testcodes Fragestellungen: Was leisten Werkzeuge mit MDT-Unterstützung aktuell? Anwendungsfallspezifisch: Entwicklung eines Frameworktestmodells Design-for-Testability des Systemmodells

Risiken Mangelnde Softwareunterstüzung

Risiken Mangelnde Softwareunterstüzung Abhängigkeit vom zu testenden Modell

Risiken Mangelnde Softwareunterstüzung Abhängigkeit vom zu testenden Modell

Weiterführende Fragestellungen Ausführbarkeit von Testmodellen: xuml und UTP Testen von Verhaltensaspekten an Systemmodellen

Fragen Danke für die Aufmerksamkeit!