Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

18.11.2005 Software-Engineering II Eingebettete Systeme, Softwarequalität, Projektmanagement Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt.

Ähnliche Präsentationen


Präsentation zum Thema: "18.11.2005 Software-Engineering II Eingebettete Systeme, Softwarequalität, Projektmanagement Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt."—  Präsentation transkript:

1 Software-Engineering II Eingebettete Systeme, Softwarequalität, Projektmanagement Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer Institut für Rechnerarchitektur und Softwaretechnik

2 Folie 2 H. Schlingloff, Software-Engineering II Hinweis: Am Freitag entfällt die Vorlesung! (Projekttreffen IMMOS) Hinweis: Nächsten Freitag entfällt die Vorlesung ebenfalls! (Tagung M4M – Methods for Modalities) (Mittwoch findet sie aber statt!) (Übungsblattausgabe)

3 Folie 3 H. Schlingloff, Software-Engineering II nächstes Übungsblatt …

4 Folie 4 H. Schlingloff, Software-Engineering II SimuLink Modellierung durch Datenflussdiagramm jede Leitung entspricht einer Variablen

5 Folie 5 H. Schlingloff, Software-Engineering II

6 Folie 6 H. Schlingloff, Software-Engineering II Abstraktion Hauptstärke von SimuLink besteht in der Möglichkeit, Blöcke zusammenzufassen Abstraktion von Verhalten baumartige Navigation Parametrisierung Modulbibliotheken externe Erweiterungen Codeanbindung Modelltransformation und –entwicklung!

7 Folie 7 H. Schlingloff, Software-Engineering II Beispiel: Fensterheber

8 Folie 8 H. Schlingloff, Software-Engineering II Kurzüberblick über das IMMOS-Projekt Projekttitel: IMMOS – Eine integrierte Methodik zur modellbasierten Steuergeräteentwicklung für den Automobilbereich Laufzeit: Januar 2004 – Juni 2006 Ziele: Definition einer integrierten Software- Entwicklungsmethodik für Steuergeräte im KFZ und Erprobung dieser Methodik durch die Entwicklung eines automobilen Demonstrators Projektpartner: Fraunhofer FIRST, DaimlerChrysler AG, dSPACE GmbH, IT Power Consultants, FZi / Universität Karlsruhe, c-Lab / Universität Paderborn Mittel: 285 PM

9 Folie 9 H. Schlingloff, Software-Engineering II modellbasierte Entwicklung frühzeitige Erstellung eines ausführbaren Modells (Systemmodell) auf Grundlage der Anforderungen Test und Erprobung auf Modellebene Verfeinerung zum Implementierungs- modell automatische Code- generierung für Host und Target automatische Testgenerierung

10 Folie 10 H. Schlingloff, Software-Engineering II Aktivitäten und Artefakte Lastenheft formale Spezifikation Virtueller Prototyp Testfälle Target-Code Prototyping Modellierung Verifikation Codegenerierung Testgenerierung Zusätzlicher Code Zielsystem Integration Testausführung Testgenerierung Portierung Formalisierung Implementierungs- modell Verfeinerung Systemmodell

11 Folie 11 H. Schlingloff, Software-Engineering II Modellierungsformalismen herkömmliche Formalismen: Zustandsmaschinen, Diagramme, Petrinetze, StateCharts, Message Sequence Charts,... gut etabliert, Toolunterstützung vorhanden Wildwuchs, Varianten, mangelnde Konstanz Prognose: werden durch UML2.0 abgelöst werden UML 2.0 vereinigt verschiedene Arten von Diagrammen extrem mächtig, sehr umfangreich zu lernen fehlende Semantik, verschiedene Ausbaustufen Matlab / Simulink / Stateflow te ilweise gut eingeführt und bekannt limitierte Ausdrucksfähigkeit nur eine Quelle logische und algebraische Modelle, z.B. TLA, ASM/ASML, CSP nahe an natürlichsprachlichen Formulierungen Forschungsbedarf

12 Folie 12 H. Schlingloff, Software-Engineering II Pause! Bist du sicher, dass du kein Modell brauchst?

13 Folie 13 H. Schlingloff, Software-Engineering II Noch einer Google model cartoon

14 Folie 14 H. Schlingloff, Software-Engineering II Codegenerierung Ziel: automatische Übersetzung von Modellen in ausführbaren (C-) Code zwei kommerzielle Produkte verfügbar Real Time Workshop (The MathWorks) TargetLink (dSPACE GmbH) Codegenerator ist Compiler für Modelle Wiederverwendung schnelle Prototyp- und Produkterstellung erhöhte Zuverlässigkeit gegen Programmierfehler automatische Optimierung des generierten Codes Wie kann man sicherstellen, dass der generierte Code das Erwartete leistet? Quelle: dSPACE GmbHThanks for the slides: Daniela Weinberg

15 Folie 15 H. Schlingloff, Software-Engineering II Prinzip

16 Folie 16 H. Schlingloff, Software-Engineering II Beispiel Schaltsystem mit Schwellwert 0.5 physikalisches Modell (SimuLink) Implementierungsmodell (TargetLink) Äquivalenz?

17 Folie 17 H. Schlingloff, Software-Engineering II generierter Code Zweierpotenz-Skalierung; 128 * 2 -8 = 0.5 Void switch_system(Void) { /* Switchswitch_system/switch_primitive */ if (Sa1_Input2_ >= 128 /* 0.5 */) { /* # combined # Outport: switch_system/OutputPort */ Sa1_OutputPort_ = Sa1_Input1_; } else { /* # combined # Outport: switch_system/OutputPort */ Sa1_OutputPort_ = Sa1_Input1_; }

18 Folie 18 H. Schlingloff, Software-Engineering II Codeabsicherung Qualitätssicherung auf jeder Ebene notwendig! Implementation Model (fixed - point) C Code Codegenerator Compiler (Linker) Host PC Target Physical Model (floating - point) Cross-compiler (Linker /Loader) (b) Code- Generator (c) generierter Code (a) Modell (d) Code Ausführung

19 Folie 19 H. Schlingloff, Software-Engineering II QS auf Modellebene Modellierungsrichtlinien Qualität des Implementierungsmodells ausschlaggebend für Qualität des generierten Codes Richtlinien und Muster existieren (z.B. MathWorks Automotive Advisory Board - MAAB guidelines) Toolunterstützung zur Umsetzung der Richtlinien - demnächst Vorteile - Lesbarkeit - Wartbarkeit - Wiedervervendbarkeit - Testbarkeit

20 Folie 20 H. Schlingloff, Software-Engineering II modellbasierter Test Simulation /Ausführung des Modells und generierten Codes in verschiedenene Entwicklungsphasen MiL (Model in the Loop) SiL (Software in the Loop) PiL (Processor in the Loop) HiL (Hardware in the Loop) test output result comparison physical model implementation model test stimuli C code (target) ECU MiL (physical model) MiL (impl. model) SiL PiL C code (host)

21 Folie 21 H. Schlingloff, Software-Engineering II Szenarien für Testautomatisierung Requirements Modell Code Testsuite Requirements Modell Code Testsuite UseCases

22 Folie 22 H. Schlingloff, Software-Engineering II Absicherung von Codegeneratoren Probleme häufige Generationenfolge von Prozessoren und Codegeneratoren Notwendigkeit zusätzlicher Absicherung Ansatz in IMMOS Validationssuite für Codegeneratoren Graph-Transformationen als logische Basis Modellgenerator Testfallgenerator Transformationsregeln Simulator Modell Codegenerator Code Comparator SimulationsergebnisseAusführungsergebnisse Target

23 Folie 23 H. Schlingloff, Software-Engineering II Im Beispiel LHS RHS r test model test vector test vector generator Reactis, ET-Tool test cases optimization test module Input1(t) Input2(t) test model test vectors model generator ModeSSa optimization rule


Herunterladen ppt "18.11.2005 Software-Engineering II Eingebettete Systeme, Softwarequalität, Projektmanagement Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt."

Ähnliche Präsentationen


Google-Anzeigen