13.6.2009 Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut...

16
13.6.2009 Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer Institut für Rechnerarchitektur und Softwaretechnik

Transcript of 13.6.2009 Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut...

Page 1: 13.6.2009 Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.

13.6.2009

Eingebettete SystemeQualität und Produktivität

Prof. Dr. Holger SchlingloffInstitut für Informatik der Humboldt Universität

und

Fraunhofer Institut für Rechnerarchitektur und Softwaretechnik

Page 2: 13.6.2009 Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.

13.6.2009 Folie 2H. Schlingloff, Eingebettete Systeme

War wir bislang hatten

1. Einführungsbeispiel (Mars Polar Lander)2. Automotive Software Engineering

• Domänen-Engineering• Modellbasierte Entwicklung

3. Anforderungsdefinition und -artefakte• Lastenheft TSG• Ziele und Szenarien• Strategien

4. Modellierung• physikalische Modellierung• Anwendungs- und Verhaltensmodellierung• Berechnungsmodelle, zeitabhängige & hybride Automaten• Datenflussmodelle

Page 3: 13.6.2009 Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.

13.6.2009 Folie 3H. Schlingloff, Eingebettete Systeme

Beispiel Füllstandsregelung

FüllstandsanzeigerZulauf

Ablauf

max

min

Randbedingungen 0 f(t) h

0 < f(t) < h f. (t)= k1*z(t) – k2*a(t)

Steuerfunktionalität f(t) min z(t) = 1 f(t) max z(t) = 0

f<h /

f.= k1z – k2a

f>0 /

f.= k1z – k2a

f=h /

f.= – k2a

f=0 /

f.= k1z

ok

high

low

f<max

f>min

fmax /z=0

fmin /z=1

Strecke Regelung

mid

full

emty

Page 4: 13.6.2009 Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.

13.6.2009 Folie 4H. Schlingloff, Eingebettete Systeme

Katze-und-Maus-Problem

• fängt die Katze die Maus oder nicht?(trifft die Abwehrrakete das Projektil oder nicht?)

Page 5: 13.6.2009 Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.

13.6.2009 Folie 5H. Schlingloff, Eingebettete Systeme

Modellierung

• Differentialgleichungssystem für diese Variablen

Ziel (xz,yz)

Katze

Geschwindigkeit vk

Position (xk(t),yk(t))

Konstante:vk, vm, xz, yz, xm(0), ym(0), xk(0), yk(0)

Geschwindigkeitsvektor Maus vm

2 = xm

2+ym2

xm = xz-xm(0) , ym = yz-ym(0) dmz= sqrt(xm

2+ ym2)

xm/ vm= xm/ dmz , ym/vm = ym/ dmz

Geschwindigkeitsvektor Katze vk

2 = xk

2+yk2

xk = xm-xk , yk = ym-yk dkm= sqrt(xk

2+ yk2)

xk/ vk= xk/ dkm , yk/ vk = yk/ dkm

Maus

Geschw. vm

Pos. (xm(t),ym(t))

Page 6: 13.6.2009 Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.

13.6.2009 Folie 6H. Schlingloff, Eingebettete Systeme

hybrider Automat

Konstante: vk, vm, xz, yz, xm(0), ym(0), xk(0), yk(0)

Variable: xm, ym, xk, yk, xk, yk

xm = xz-xm(0) , ym = yz-ym(0) dmz= sqrt(xm2+

ym2)

xm = xm * vm / dmz ym = ym * vm / dmz

xk = xm-xk yk = ym-yk dkm= sqrt(xk2+

yk2)

xk= xk * vk/ dkm yk= yk * vk/ dkm

start jagd

nahrung

rettung

*(xm,ym)=(xk,yk)

(xm,ym)=(xz,yz)

*:xm=xm(0), ym=ym(0),xk=xk(0), yk=yk(0),xm = …, ym=…xk=… yk=…

Page 7: 13.6.2009 Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.

13.6.2009 Folie 7H. Schlingloff, Eingebettete Systeme

Analysemöglichkeiten für HA

•Hybride Automaten sind Turing-mächtig

•Für eingeschränkte Klassen (B limitiert) sind gewisse Probleme (z.B. Erreichbarkeit für Rechteckautomaten) noch analysierbar

• Im Allgemeinen ist die Analyse sehr komplex

•Heuristiken konzentrieren sich auf die internen Datenrepräsentationen (Difference Bound Matrices, Regionengraphen etc.)

Page 8: 13.6.2009 Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.

13.6.2009 Folie 8H. Schlingloff, Eingebettete Systeme

Toolunterstützung

•HyTech: (eingeschränktes) Model Checking für hybride Automaten

•PHAVer: Polyhedral Hybrid Automaton Verifyer

• Interaktive Verifikation mit General-Purpose-Theorembeweiser (z.B. Isabelle)

•Synthese von Steuerungssoftware

•gRRT: neuere Arbeiten zur Testgenerierung

Page 9: 13.6.2009 Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.

13.6.2009 Folie 9H. Schlingloff, Eingebettete Systeme

Datenflussmodellierung

• Beispiel ist stark datenorientiert Kontrollfluss nur zum Abbruch

• Modellierung durch Datenflussdiagramm jede „Leitung“ entspricht einer Variablen Konstante als spezielle Variable

• Integratoren

• Rückkoppelungen

Page 10: 13.6.2009 Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.

13.6.2009 Folie 10H. Schlingloff, Eingebettete Systeme

Page 11: 13.6.2009 Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.

13.6.2009 Folie 11H. Schlingloff, Eingebettete Systeme

Simulationsergebnis

Page 12: 13.6.2009 Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.

13.6.2009 Folie 12H. Schlingloff, Eingebettete Systeme

Page 13: 13.6.2009 Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.

13.6.2009 Folie 13H. Schlingloff, Eingebettete Systeme

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!

Page 14: 13.6.2009 Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.

13.6.2009 Folie 14H. Schlingloff, Eingebettete Systeme

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 Codedas Erwartete leistet?

Quelle: dSPACE GmbHThanks for the slides: Daniela Weinberg

Page 15: 13.6.2009 Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.

13.6.2009 Folie 15H. Schlingloff, Eingebettete Systeme

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

resultcomparison

physical model

implementation model

test stimuli

C code (target)

ECU

MiL (physical model)

MiL (impl. model)

SiL

PiL

C code (host)

Page 16: 13.6.2009 Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.

13.6.2009 Folie 16H. Schlingloff, Eingebettete Systeme

Szenarien für Testautomatisierung

Requirements

Modell

Code

Testsuite

Requirements

Modell Code

Testsuite

UseCases