Validas Model Validation AG

Slides:



Advertisements
Ähnliche Präsentationen
integrative process management solutions
Advertisements

Phasen und ihre Workflows
Elodie Legros, Tobias Rötschke, Andy Schürr Fachgebiet Echtzeitsysteme
Eingebettete Systeme Qualität und Produktivität
Software-Engineering II Eingebettete Systeme, Softwarequalität, Projektmanagement Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt.
Prof. Dr. Holger Schlingloff
IT-Projektmanagement
Kooperierende autonome Fahrzeuge
Seminar Software-Engineering für softwareintensive Systeme
Qualitätssicherung von Software Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin und Fraunhofer FIRST.
Modellbasierte Software- Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.
Stefanie Selzer - Pascal Busch - Michael Kropiwoda
Dynamische Testverfahren
LE LM 10 - LO3 Verfahren zur Qualitätssicherung
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Aufgaben des Testens Vergleich des Verhaltens einer Software mit den an sie gestellten.
Beispiel: Wasserfallmodell als einfaches Phasenmodell
Universität Stuttgart Institut für Kernenergetik und Energiesysteme LE P MuSofT Erkundungsumgebung Entwicklung eines komponentenbasierten Systems WS 03/04.
Java: Objektorientierte Programmierung
Seminar Modellgetriebene Softwareentwicklung Einführung Seminar modellgetriebene Softwareentwicklung WS 05/06 Dipl.-Inf. Nadine Fröhlich Prof. Dr.-Ing.
Modellierung komplexer Realität mit Objekten
Fehlerabdeckung/ Regressionstest1 Testen und Analysieren von Software Fehlerbehebung und Re-Engineering Fehlerabdeckung/ Regressionstest Vortragende:
UML-basierte Modellierung von Multimediaanwendungen
Explizite und editierbare Metainformationen für Software Muster.
Projekt Web Engineering
Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl
OO Analyse und Entwurf für Anwender
UML Begleitdokumentation des Projekts
Unified Modeling Language Einführung zu UML Was ist „UML“?
Vorlesung Gestaltung von soziotechnischen Informationssystemen - RequirementsEngineering und Contextual Design- Thomas Herrmann, Lehrstuhl Informations-
Institut für Theoretische Informatik TU Carolo-Wilhelmina zu Braunschweig Teamprojekt in Software Systems Engineering und Theoretischer Informatik Einsatz.
Referat „COMET-Basis“
Entwicklung verteilter eingebetteter Systeme - Einführung
Vorgehensmodelle: Schwergewichtige Modelle
Spezifikation von Anforderungen
12. Vorlesung: Aktivitätsdiagramme
Zusammenfassung der Vorlesung
Unified Modeling Language Repetition / Einführung zu UML
Zentralübung Automotive Software Engineering – Übungsblatt 8
Grundlagen ExecutionModel Simulationsumgebung
Binde & Wallner Engineering GmbH
Architekturen und Techniken für computergestützte Engineering Workbenches.
Verteidigung der Bachelor-Thesis Objektorientierte Geschäftsprozessmodellierung mit BPMN und UML Patrick Heydorn.
NDK Enterprise Technologien Informationen Infrastruktur und Fallstudie Daniel Nydegger Studienleiter Enterprise System Entwicklung.
UML-Kurzüberblick Peter Brusten.
Innovator Die Komponenten.
UML UML mit SiSy® Vorgehensmodell Dokumentation HTML-Export
UML Modellierung des Verhaltens von Klassen und Objekten
Projektmanagement Ziel und Umfang eines Softwareprojektes definieren
Fachkonzepte in der UML
Enterprise Achitect (Sparx Systems) Marius Rudolf
Informatik und Programmieren 3
AK Simulationswerkzeuge für das RE R. Schmid / Folie 1 Evaluation von simulationsfähigen RE-Werkzeugen Reto Schmid Institut für Informatik,
Vienna University of Technology Pirker Simon 1. Überblick Definition Motivation Vorteile Entwurf von VP Pirker Simon 2.
1 Ausgangslage Vorgehensweise: Informell, pragmatisch, stark graphisch orientiert. Systemanalytischer Ausgangspunkt: Klassischer Systembegriff als Ansammlung.
Von UML 1.4 zu UML 2.0 InfoPoint vom Mittwoch
Arbeitsbereich „Rechnernetze und verteilte Systeme“
Modellbasierte Software-Entwicklung eingebetteter Systeme
Software Engineering Grundlagen
Unified Process Historisch-Kulturwissenschaftliche Informationsverarbeitung Übung: Planung von Softwareprojekten Dozent: Christoph Stollwerk WS 2014/2015.
VirtualPatt 2000 Interaktives 3D-Schachspiel
Modellbasierte Software- Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.
Modellbasierte Software- Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.
OOSE nach Jacobson Sebastian Pohl/ST7 Betreuer: Prof. Dr. Kahlbrandt.
Modellierung: MATLAB – Simulink - Stateflow
MDA – Model Driven Architecture
Informatik in den dualen Studiengängen Prof. Dr. Michael Löwe.
1 Objektorientierter Entwurf E-R-Modellierung: Ausschließlich strukturelle Aspekte Verhaltensaspekte noch unberücksichtigt:  Interaktionen zwischen Objekten.
© Till Hänisch, 2002 BA Heidenheim Vorgehensmodelle Wie entsteht Software ?
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Entwurf Dr. Wolfgang Wörndl
 Präsentation transkript:

Dr. Oscar Slotosch: Testmodellierung und Testautomatisierung für Embedded Realtime Systeme 1. Validas AG 2. Modelle im Entwicklungsprozess 3. Testautomatisierung 4. Realtime Erweiterungen

Validas Model Validation AG DGLR 11.10.2001 Gegründet 4/2000 Arbeitsgebiete: Entwicklung & Consulting bei Modellierung Validierung (Testgenerierung) Softwareentwicklung Tools Embedded Systeme Stärken der Validas ausgezeichnete Produkte hochqualifiziertes und motiviertes Team ehrlich & technisch Kontakte zu namhaften europäischen Unternehmen Sitz: Software Campus, München Validas Beteiligungsmodell

Kunden und Projekte Giesecke & Devrient Testsequenzen für Smartcards DGLR 11.10.2001 Giesecke & Devrient Testsequenzen für Smartcards EADS ADA-Codegenerierung und Testfälle aus Modellen Daimler Chrysler Research DOORS-Kopplungen BSI Vermarktung von Quest Knorr-Bremse Testsequenzerzeugung BMW, ESG UML/RT-Schulungen Validas Beteiligungsmodell

Ausgezeichnete Produkte OMER2-Award 2nd Prize Ausgezeichnete Produkte DGLR 11.10.2001 Modellierung Validation Framework Validas Beteiligungsmodell

Durchgängiger Entwicklungsprozess DGLR 11.10.2001 Klassische Phasenmodelle: Analyse Design Implementierung Test Aufgabe: Permanente Integration von QS-Maßnahmen Lösung: Modelle integrieren Modellierung Validierung Code-Generierung Modelle Beteiligungsmodell

Inkrementeller Prozess DGLR 11.10.2001 Requirements Modelle Modell 1 Modell 2 Modell 3 Modell n Modelle für Code-Erzeugung Qualitätssicherung Implementierung Beteiligungsmodell

Modellierungswerkzeug AutoFocus DGLR 11.10.2001 Modelle Entwicklung an der TU München (seit ‘96) Graphische Beschreibungstechniken “UML-RT light” Graphische Simulation und Animation Multi-User Frei verfügbar: http://autofocus.in.tum.de Semantische Fundierung zur Verifikation und Validierung Beteiligungsmodell

Modellieren mit AUTOFOCUS (TUM) DGLR 11.10.2001 Beschreibungstechniken (Sichten) Struktur: System Structure Diagrams (SSDs) Verhalten: State Transition Diagrams (STDs) Interaktion: Extended Event Traces (EETs) Daten: Data Type Definitions (DTDs) Allen Sichten gemeinsam: Hierarchie Konzeptuelles und semantisches Modell Integrierbar Modelle Beteiligungsmodell

Modellarten der UML / AutoFocus DGLR 11.10.2001 Verhalten Struktur Klassendiagramme Modelle Aktivitätsdiagramme Objektdiagramme Modell Deploymentdiagramme Zustandsdiagramme Komponentendiagramme Use Case-Diagramme OCL Sequenzdiagramme Kollaborationsdiagramme Beteiligungsmodell

Simulation Beteiligungsmodell AutoFocus Process Modelling DGLR 11.10.2001 AutoFocus Process Modelling Beteiligungsmodell

Testautomatisierung Testdurchführung Testdokumentation DGLR 11.10.2001 Testdurchführung Modell <-> System Abdeckung messen Testdokumentation Testfallermittlung Sequenzen ableiten Such-Verfahren Testautom. Beteiligungsmodell

Validation Framework Beruht auf dem AutoFocus-Komponentenmodell DGLR 11.10.2001 Beruht auf dem AutoFocus-Komponentenmodell Angestoßen durch das BSI (Quest) Zahlreiche Techniken und Anwendungen Integration bestehender bewährter Werkzeuge Innovative Eigenentwicklungen Testautom. Beteiligungsmodell

Werkzeugarchitektur SMV SATO, CHAFF OCL VSE DOORS CTE ADA Java Matlab DGLR 11.10.2001 SMV SATO, CHAFF OCL VSE Testautom. DOORS CTE ADA Java Matlab C Prolog Modellierung, Validierung, Codegenerierung  korrekte Systeme, effiziente Prozesse Präzise & konzise synchrone Semantik  Grundlage für fortgeschrittene Validierung Beteiligungsmodell

Vollständige Methoden DGLR 11.10.2001 Model-Checking: SMV, Mucke Bounded Model-Checking: SATO, CHAFF Abstraktionstechniken: Validator Theorem-Beweiser: VSE II Typprüfung: Validator Determinismus-Check: Validator Konsistenz-Checks: OCL Code-Erzeugung: C, Java, Prolog, Ada Testautom. Beteiligungsmodell

Unvollständige Methoden DGLR 11.10.2001 Simulation: AutoFocus Testen Transitions-Touren: Quest Transitions-Checker: SATO, CHAFF Testfallermittlung: Bounded Model-Checking Constraint-Solving Testdurchführung / Regressionstests Prototyping: MSC2STD Testautom. Beteiligungsmodell

Testsequenz-Erzeugung DGLR 11.10.2001 Modellbasiert Strukturell Besuch aller STD-Zustände Ausführung aller STD-Transitionen Funktional Ausgabe einer bestimmten Nachricht z.B. “bestimmten Geldbetrag abheben” in einem ATM-Modell Testautom. Beteiligungsmodell

Beispiel: Transitionstour DGLR 11.10.2001 Testautom. Beteiligungsmodell

Constraint-basiertes Testen DGLR 11.10.2001 Contraint-Logic Programming (Prolog mit Constraint-Solver) Symbolische Modellausführung Suche von Ausführungen mit bestimmten Eigenschaften Vorteile: Flexible Testfallspezifikation (Prolog) Geeignet für große und sogar zustandsunendliche Systeme Erzeugung mehrerer Testsequenzen durch Backtracking Testautom. Beteiligungsmodell

Testdurchführung Abgleich EET  Code Interaktive Testdurchführung DGLR 11.10.2001 Abgleich EET  Code Interaktive Testdurchführung Java-Code laden (Java Beans-Interface) Ausführung mit Java Reflection Automatische Testdurchführung und Regressionstests: Testdaten und –treiber erzeugen Code-Erzeugung aus Modell Programme mit Testdaten ausführen Anwendbar für C und Java-Code Graphisch: AutoFocus-Simulation mit Testdaten steuern Testautom. Beteiligungsmodell

Test Data Format Test Data Format (.tdf) Semantik: DGLR 11.10.2001 Test Data Format (.tdf) Textuell; eine Zeile pro Zeitintervall Format: {inp?Val;}*{out!Val;}* Ports der zu testenden Komponente zugeordnet Keine Variablen, Wiederholung, Verzweigung  Aufgabe von Testmanagement-Werkzeugen Semantik: Eingaben an zu testende Komponente anlegen Ausgabewerte prüfen Flexible Anbindungen, z.B. SmartCards Testautom. Beteiligungsmodell

Beispiel Testdurchführung DGLR 11.10.2001 Testautom. Beteiligungsmodell

Projekt MOBASIS DGLR 11.10.2001 MOdellBASIerte Entwicklung Sicherheitskritischer Systeme Partner: EADS, TUM, Validas Laufzeit: 9/00 - 4/02 Ergebnisse: Ada Codegenerator für AutoFocus (EF konform) Verbesserung Testgenerierung Anbindung Testtools (Rational) Abdeckung (MCDC) der generierten Testfälle messen Testautom. Beteiligungsmodell

Ada Codegenerator Embedded Code (statisch: RAM/ROM) Parametrisierbar DGLR 11.10.2001 Embedded Code (statisch: RAM/ROM) Parametrisierbar max. McCabe Wert Inline Pragmas Wertebereiche Separate, ... Abschätzungen für Statische Bits McCabe-Werte Files, Packages worst-case Zyklen strukturierter, lesbarer Code Zertifizierungsmöglichkeit wird geprüft Testautom. Beteiligungsmodell

Realtime Erweiterungen DGLR 11.10.2001 Prozess Erweiterungen Funktionale Schritte (Modelle, Simulation, Tests,..) Zeitliche Erweiterungen Methoden Erweiterungen Modelle (Struktur, Verhalten, Tests) Testgenerierung Testdurchführung Codegenerierung Werkzeuge Erweiterungen Echtzeit Beteiligungsmodell

„Modelle“ für Echtzeit DGLR 11.10.2001 Struktur Zeitleitungen Verhalten Zeitkomponenten Echtzeituhr Timer Wiederholungsrate Realisierung Modellierungsmethode Stereotypes Echtzeit Beteiligungsmodell

Testmodelle für Echtzeit DGLR 11.10.2001 System Sequenzen erweitern zu Achsen, Nachrichten Zeit-Ticks (Gleichzeitigkeit) Wiederholungen Bedingungen für Meßwerte Zeitdauern Echtzeitannotationen Start?True <=1ms Echtzeit Status!Busy 1-* Value!X {X<=2} Status!Ready Beteiligungsmodell

Erweitertes Test Data Format DGLR 11.10.2001 Zeilenorientiert (wie tdf) Wiederholungen (Schleifen) Format: begin {Wdh} Zeile* end Variablen & Bedingungen Nur für Ausgaben Format: { Cond(Var);} Timer Definition/Start [TName] Abfrage: { TCond(TName);} TCond: <,>,<=,>=, us, ms, s, min, h, d Echtzeit Beteiligungsmodell

Realtime Prozess Modelle zeitabhängig machen Testsequenzen generieren DGLR 11.10.2001 Modelle zeitabhängig machen Testsequenzen generieren Realtime-Annotationen an Testsequenzen Manuell Entsprechend den Timing Requirements Code & Testtreiber generieren Tests durchführen Abdeckung messen Echtzeit Beteiligungsmodell

Zusammenfassung Einfache Modelle Echtzeit Erweiterungen DGLR 11.10.2001 Einfache Modelle klare Semantik effizienter Code viele Validierungsmöglichkeiten Echtzeit Erweiterungen Prozess Methoden Modelle Werkzeuge Validas Werkzeuge & Methoden Offene Werkzeugarchitektur Anbindung Ada Anbindung Testtools Summary Beteiligungsmodell

Andere Anwendungen BSI: “Storm Surge Barrier” (Model Checking) DGLR 11.10.2001 BSI: “Storm Surge Barrier” (Model Checking) G&D: Smartcards (Constraint-Solving, MC) EADS: Vorflügel-Steuerung (Test, Ada) TUM: Mars Polar Lander (Simulation, Validierung hybrider Systeme) MOBASIS: Mabuchi-Motor (hybrid, Matlab) OMER2: Autositz (Code-Erzeugung; Validierung) Summary Beteiligungsmodell