Seminar Software-Engineering für softwareintensive Systeme

Slides:



Advertisements
Ähnliche Präsentationen
interaktiver Web Service Workflows
Advertisements

FDCML Field Device Configuration Markup Language systemneutrale XML-Beschreibung für Automatisierungskomponenten
programmiert April-Juni 2003 von Knut Riechmann
Ziele von EINI I + II Einführen in „Informatik“
der Universität Oldenburg
Integrations- und Funktionstests im Rahmen des V-Modelles
Programmieren im Großen von Markus Schmidt und Benno Kröger.
Dokumentation von Software Architekturen unter Berücksichtigung von IEEE 1471 Vortrag an der FH Regensburg © Dr. Ulrich Margull, 2004 Dr. Ulrich.
Inkrementelle Entwicklung von virtuellen Kooperationsstrukturen
Definition von Klassen in Java
Modellbasierte Software-Entwicklung eingebetteter Systeme
Eingebettete Systeme Qualität und Produktivität
Eingebettete Systeme Qualität und Produktivität
Kooperierende autonome Fahrzeuge
1 Energiebewusste Compilierung für digitale Signalprozessoren Markus Lorenz Peter Marwedel Universität Dortmund Lehrstuhl Informatik XII Projekt Prozessorarchitekturen.
Spec# Proseminar Assertions im SS 2007 Uni Paderborn Andreas Martens Betreuer: Dipl. Inform. Björn Metzler.
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
Eingebettete Systeme Qualität und Produktivität
Modellbasierte Software- Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.
Java: Objektorientierte Programmierung
Java: Dynamische Datentypen
Java: Referenzen und Zeichenketten
UML im Überblick – Dipl. Ing. Ulrich Borchert / FH Merseburg 1/22
SciAgents - Eine agentenbasierte Umgebung für verteilte wissenschaftliche Berechnungen Alexander StarkeSeminar Software Agenten
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (02 – Funktionenklassen) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (02 – Funktionenklassen) Tobias Lauer.
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerische Methoden, SS 01Teil II: Kp. 22/1 Grundmodelle.
Modellierung komplexer Realität mit Objekten
Seminar: Architekturbeschreibungssprachen
GROOVE Graphs for Object-Oriented Verification Seminar: SEFSIS Sommersemester 2006 Basil Becker
Explizite und editierbare Metainformationen für Software Muster.
RDF-Schema Seminar: „Semantic Web“ André Rosin,
DVG Klassen und Objekte
Objektorientierte Analyse und Design mit der Unified Modelling Language (UML) Sandra Meißl
UML Begleitdokumentation des Projekts
Mensch-Computer-Interaktion
TU-München LS für Informatik II (Prof. Eickel) Dr. Schreiber Programmierpraktikum SS-2001 Beyond Java - Automatische Generierung von Benutzungsoberflächen.
Konzeption und Realisierung von DSS
Institut für Theoretische Informatik TU Carolo-Wilhelmina zu Braunschweig Teamprojekt in Software Systems Engineering und Theoretischer Informatik Einsatz.
Objektorientierte Modellierung
Entwicklung verteilter eingebetteter Systeme - Einführung
Simulation komplexer technischer Anlagen
Vorgehensmodelle: Schwergewichtige Modelle
Das Wasserfallmodell - Überblick
Was umfaßt die CORBA Core Spezifikation? Welche zusätzlichen Komponenten muß ein ORB Produkt beinhalten? Core: CORBA Objekt Modell CORBA Architektur OMG.
University of Applied Sciences Übung Objektorientierte Programmierung II Dipl.-Inf. (FH) Markus Vogler.
Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerik partieller Differentialgleichungen, SS 01Teil.
Zusammenfassung der Vorlesung
Unified Modeling Language Repetition / Einführung zu UML
Einführung in die Programmierung
Analyse von Ablaufdiagrammen
Computerorientierte Physik VORLESUNG und Übungen Vorlesung Zeit: Mo., – Uhr Ort: Hörsaal 5.01, Institut für Physik, Universitätsplatz 5, A-8010.
Innovator Die Komponenten.
AK Simulationswerkzeuge für das RE R. Schmid / Folie 1 Evaluation von simulationsfähigen RE-Werkzeugen Reto Schmid Institut für Informatik,
EPROG Tutorium #6 Philipp Effenberger
Neuerungen in Java 5/6/7. Stefan Bühler für InfoPoint Überblick Java 5 neue Sprachfeatures Erweiterungen Klassenbibliothek Java 6 Erweiterungen.
Implementierung eines RDF Stores
Modellbasierte Software-Entwicklung eingebetteter Systeme
Meta-Modell für Story-Diagramme und Expressions
Technische Universität München Zentralübung Automotive Software Engineering – Übungsblatt 6.
Omniscient Debugging und Slicing für Java
Software Engineering Strukturierter Entwurf
Lernlandkarte OOP (ObjektOrientiertes Programmieren)
OOSE nach Jacobson Sebastian Pohl/ST7 Betreuer: Prof. Dr. Kahlbrandt.
Mag. Thomas Hilpold, Universität Linz, Institut für Wirtschaftsinformatik – Software Engineering 1 Algorithmen und Datenstrukturen 1 SS 2002 Mag.Thomas.
Modellierung: MATLAB – Simulink - Stateflow
Informatik in den dualen Studiengängen Prof. Dr. Michael Löwe.
Objektorientierte (OO) Programmierung
Technische Universität München, Informatik XI Angewandte Informatik / Kooperative Systeme Verteilte Anwendungen: Entwurf Dr. Wolfgang Wörndl
 Präsentation transkript:

Seminar Software-Engineering für softwareintensive Systeme ASCET MD / INTECRIO Seminar Software-Engineering für softwareintensive Systeme

Softwarewerkzeuge der Firma ETAS ASCET Überblick Softwarewerkzeuge der Firma ETAS ASCET Entwurf von Steuerungssoftware Unterstützt Prototyping und Simulation Codegenerierung für versch. Zielsysteme INTECRIO Integriert Steuerungsmodelle aus unterschiedlichen Anwendungen (ASCET MD, Matlab/Simulink, usw...)

Modularer Aufbau ASCET ASCET MD ASCET RP ASCET SE ASCET SE Entwurf & Simulation ASCET RP Rapid Prototyping & Testing ASCET SE Codegenerierung für ... ASCET SE ... unterschiedliche Zielsysteme

Arbeitsablauf in ASCET MD Spezifizieren einzelner Komponenten Module Klassen / Zustandsautomaten Testen der Einzelkomponenten durch Simulation Zusammenfassung der Komponenten zu einem Projekt Schedule für Gesamtsystem festlegen Testen des Gesamtsystems

Komponenten Klassen Module Mehrere Instanzen Nur eine Instanz Beliebige Parameter / ein Rückgabewert Keine Interprozess-kommunikation Module Nur eine Instanz Keine Parameter / Rückgabewerte Echtzeit-Interprozess-kommunkikation durch Messages Elemente: Variablen / Parameter Schnittstellen: Prozesse / Methoden / Variablen / Messages Algorithmen: spezifiziert durch Blockdiagramme / ESDL / C

Modellierung von Komponenten Blockdiagramme intuitiver für Ingenieure (Schaltplansemantik) größtenteils äquivalent zu ESDL ESDL an Java angelehnt für automotiven Bereich ausgelegt: nur Datentypen udisc, sdisc, cont, log (kein String!) keine Vererbung, keine Methodenüberladung ANSI C für BD und ESDL : zielspezifische Generierung des Codes hier : zielspezifische Programmierung erforderlich keine Datenkonsistenzprüfung durch ASCET MD

Elemente in Blockdiagrammen (1) Messages Parameter Variablen Arithmetische Operatoren + - x /... Vergleichsoperatorn < > = ... Logische Operatorn & | ! Bedingter Operator If (condition) Then trueValue; Else fasleValue; Komplexe Elemente

Elemente in Blockdiagrammen (2) Komplexe Elemente

Semantik von Blockdiagrammen Anschlüsse können verbunden werden Sequenznummern bestimmen Ausführungsreihenfolge

Vergleich Blockdiagramme / ESDL (1) ndiff = n_nominal - n; pi_value = Integrator.integrate(ndiff) + (ndiff * Kp); if (pi_value > air_low) { air_nominal = pi_value; } else { air_nominal = air_low; }

Vergleich Blockdiagramme / ESDL (2) While (i < 10) { c = b * c; i = i + 1; }

Zustandsautomaten History Werden wie Klassen behandelt Trigger als öffentliche Methode Reihenfolge der Transitionen festlegbar (Prioritäten) Werden wie Klassen behandelt Hierarchische Zustände Eintritts- / Austritts- und statische Aktionen

Arbeitsablauf in ASCET MD Spezifizieren einzelner Komponenten Module Klassen / Zustandsautomaten Testen der Einzelkomponenten durch Simulation Zusammenfassung der Komponenten zu einem Projekt Schedule für Gesamtsystem festlegen Testen des Gesamtsystems

Simulation Simulation einzelner Komponenten oder des Gesamtsystems Animierte Automaten Eingabe jederzeit modifizierbar Vielfältige Ausgaben Zahlenwerte Oszilloskop ...

Arbeitsablauf in ASCET MD Spezifizieren einzelner Komponenten Module Klassen / Zustandsautomaten Testen der Einzelkomponenten durch Simulation Zusammenfassung der Komponenten zu einem Projekt Schedule für Gesamtsystem festlegen Testen des Gesamtsystems

Projekt Task Projekte & Tasks Enthält alle Komponenten Legt Scheduling der Prozesse fest „Gehirn“ des eingebetteten Kontrollsystems Task Fasst Prozesse mit gleicher Frequenz zusammen Führt diese in fester Reihenfolge aus verschiedene Typen (Alarm-Tasks, Init-Tasks, ...) präemptiv / kooperativ / nicht-unterbrechbar

Scheduling Keine integrierte Schedulability Analyse! ( eigenes Werkzeug RTA-Trace)

INTECRIO Modellierungs-Tools unterschiedlich gut geeignet für bestimmte Aspekte (z.B. MatLab Differentialgleichungen zur Beschreibung der Umwelt) Verschiedene Notationen (nicht einheitlich wie z.B. UML) Zusammenführung verschiedener Modelle gewünscht Zwei Möglichkeiten Überführung der Modelle ineinander (gleiche Semantik nötig) Co-Simulation in einem Framework

Co-Simulation Generierter C-Code kann über ein Interface in INTECRIO integriert werden

Integration mehrerer Modelle Vorhandene Interfaces für ASCET und MatLab / SIMULINK Erweiterbar durch benutzerspezifizierte Interfaces INCODIO generiert Interface aus vorhandenem C-Code Verwendung mehrerer alternativer Modellierungen aus unterschiedlichen Tools Umschaltung zur Systemlaufzeit

Prototyping Verbindung mit ES1000-Testsystem Unterschiedliche Erweiterungskarten Schnittstellen Simulationskarten D/A-Wandler Verschiedene Analysefunktionen