Modellbasierte Software-Entwicklung eingebetteter Systeme

Post on 20-Jan-2016

26 views 0 download

description

Modellbasierte Software-Entwicklung eingebetteter Systeme. Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer Institut für offene Kommunikationssysteme FOKUS. Gibt’s hier etwa Fragen?. Was versteht man unter Modellprüfung (Model Checking)? - PowerPoint PPT Presentation

transcript

Modellbasierte Software-Entwicklung eingebetteter Systeme

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

und

Fraunhofer Institut für offene Kommunikationssysteme FOKUS

Folie 2H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme

Gibt’s hier etwa Fragen?

• Was versteht man unter Modellprüfung (Model Checking)?

• Modellierung von Echtzeit mit UML Zustandsmaschinen?

• Timed Automata?

• Semantik?

• Erweiterte Syntax?

Folie 3H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme

Folie 4H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme

Verifikation

• In wie weit sind zeitbeschriftete Automaten analysierbar?• Kann man entscheiden ob ein bestimmter Zustand

erreichbar ist?Excerpted from http://arpont.imag.fr/~tdang/Cours-Timed-Hyb/region-graph-ta-short.pdf

Folie 5H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme

Idee: Äquivalenzklassenbildung

• Partitionierung des unendlichen Zustandsraumes in endlich viele „Regionen“

• alle Zustände einer Region weisen „ähnliches“ Verhalten auf

Folie 6H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme

Quotienten

• Def. Quotientenautomat bezüglich einer Partitionierung der Zustandsmenge Abstraktion von gewissen Variablen (kleinerer

Wertebereich oder ganz weglassen) Zustände im Quotientenautomat sind

Äquivalenzklassen von Zuständen im ursprünglichen Vergröberung der Verhaltensbeschreibung: Menge

aller möglichen Abläufe (akzeptierter Wortschatz) wird größer

Gesucht: Abstraktion die die Sprache nicht vergrößert

• Bei Zeitautomaten Abstraktion der Uhrenvariablen? Reduktion des Wertebereichs der Uhren?

Folie 7H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme

Sprachschatz für Zeitautomaten

• Wdh.: Jeder Pfad durch das Transitionssystem ist ein Ablauf des Automaten Def.: Pfad = ((l0, v0) –c0–>(l1, v1) –c1–>(l2, v2) –c2–

>…);l ist Ort, v ist Uhrenbelegung, c Ereignis oder Dauer

Bei Zeitschritten vi+1=vi+t,bei Kontrollschritten vi+1=vi [r:=0]

Ist diese Granularität erforderlich? z.B. (l0 –c0–>l1–c1–>l2–c2–>l3 …) ausreichend?oder (c0––>c1––>c2––>c3––>…) ?oder überhaupt nur (e0e1e2e3…) ?

Folie 8H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme

Sprachschatz für Zeitautomaten

• Def. Sprache eines Automaten zeitlos: Menge aller (endlichen oder unendlichen) Wörter (ohne

Berücksichtigung Uhren) zeitabhängig: Menge von Folgen (e0 –d0–>e1–d1–>e2–d2–>e3 …) Sprache des uhrlosen Automaten enthält zeitlose Sprache

• Def. Äquivalenz von Automaten erzeugte Sprachen sind gleich zwei verschiedene Äquivalenzbegriffe zeitabhängig äquivalente Automaten sind auch zeitlos äquivalent

• Bsp. zeitlos äquivalent, aber nicht zeitabhängig äquivalent

a b ax:=0

x>10b

Folie 9H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme

Regionen und Zonen

•endliche Partitionierung des Zustandsraumes

Definition Regionenäquivalenz: Sei cmax die größte im Automaten vorkommende Konstante.

v R u gdw• der integrale Teil aller Uhrenbelegungen ist gleich bzw. beidesmal >cmax.• der fraktionale Teil ist beidesmal =0 oder beidesmal >0• falls x<cmax und y<cmax, dann beidesmal xy oder beidesmal yx

x

y

Eine Region (Äquivalenzklasse)

1 2 3

1

2

Folie 10H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme

Zonen

• endliche Mengen von Ungleichungen

• alle möglichen Beziehungen zwischen allen Uhrenvariablen

• Es reicht, sich auf Linearkombinationen von Variablen (c=k1*c1+…+kn*cn) zu beschränken

Definition: w Z w’ gdw

w und w’ erfüllen die selben Bedingungen der Form xi < c, xi = c, xi – xj < c, xi –xj =cwobei ccmax

Folie 11H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme

Endlichkeit des Zustandsraumes

• Die Relationen haben einen endlichen Index d.h. es gibt nur endlich viele erreichbare Regionen / Zonen d.h. der Regionen/Zonengraph ist endlich

• Beweisidee (Regionen) folgt aus der Definition von R: endlich viele integrale Teile

cmax und endlich viele Vergleiche der fraktionalen Teile

• Beweisidee (Zonen) bei endlich vielen rationalen Zahlen gibt es nur endlich viele

Linearkombinationen (Summierungsmöglichkeiten), die kleiner als eine vorgegebene Schranke sind

im Automaten werden nur endlich viele Konstante erwähnt daher gibt es nur endlich viele unterschiedlich erfüllte

Bedingungen der angegebenen Art

Folie 12H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme

Konstruktion des Regionengraphen

• Der Regionengraph als (endlicher) Automat ist zeitlos äquivalent zum ursprünglichen Zeitautomaten

• erfüllt die selben Sicherheitseigenschaften

x

y

Successor regions, Succ(r)

r

1 2 3

1

2

Reset region

r[y:=0]

r[x:=0]

Folie 13H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme

Beispiel

• |Regionen| = |Orte| * |Konstante| * |Uhren|! • i.A. exponentiell in der Anzahl der Uhren und Konstanten

(PSPACE-vollständig)

Folie 14H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme

UppAal, Kronos, Rabbit…

• Tools zur Konstruktion des Regionengraphen animierte Simulation temporale Verifikation

• unterschiedliche interne Repräsentation Mengen von Ungleichungen BDDs Differenzmatrizen, difference bound matrices

http://www.cs.auc.dk/~kgl/ARTES/sld041.htm