Eingebettete Systeme Qualität und Produktivität

Slides:



Advertisements
Ähnliche Präsentationen
Temporale Logiken: LTL und CTL
Advertisements

Eingebettete Systeme Qualität und Produktivität
Modellbasierte Software-Entwicklung eingebetteter Systeme
Modellbasierte Software-Entwicklung eingebetteter Systeme
Eingebettete Systeme Qualität und Produktivität
Prof. Dr. Holger Schlingloff
Qualitätssicherung von Software (SWQS)
Software-Engineering II Eingebettete Systeme, Softwarequalität, Projektmanagement Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt.
Prof. Dr. Holger Schlingloff
Qualitätssicherung von Software (SWQS)
Modellbasierte Software-Entwicklung eingebetteter Systeme
Eingebettete Systeme Qualität und Produktivität
Bounded Model Checking II
Eingebettete Systeme Qualität und Produktivität
Institut für Informatik Abt. Intelligente Systeme
8. Formale Sprachen und Grammatiken
Hauptseminar Modellüberprüfung Kathrin Ott
Einführung in Berechenbarkeit und Formale Sprachen
Grammatiken, Definitionen
Einige entscheidbare bzw. rekursiv aufzählbare Sprachen
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Reduktionen Def: L · L (L ist reduzierbar auf.
Algorithmen und Komplexität
Proseminar “Software Pioneers” (Prof. Dr. Heike Wehrheim)
1 Computergestützte Verifikation Teil II Infinite State Systems.
Qualitätssicherung von Software (SWQS) Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin und Fraunhofer FOKUS : Software Model Checking.
Qualitätssicherung von Software Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin und Fraunhofer FIRST.
Qualitätssicherung von Software
Software-Engineering II Eingebettete Systeme, Softwarequalität, Projektmanagement Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt.
Prof. Dr. Holger Schlingloff
Management großer Softwareprojekte - Auswertung der Fragebögen - Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin, Institut für Informatik Fraunhofer.
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.
Eingebettete Systeme Qualität und Produktivität
Prof. Dr. Holger Schlingloff
Management großer Softwareprojekte Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin, Institut für Informatik Fraunhofer Institut für Rechnerarchitektur.
Software Verification 2 Automated Verification Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität and Fraunhofer Institut für.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (02 – Endliche Automaten) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (12 – Kellerautomaten, PDA) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (04 – Automaten mit ε-Transitionen) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (03 – Nichtdeterminierte endliche Automaten) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 3 Einführung in die Theoretische Informatik (17 –Turingmaschinen) Prof. Dr. Th. Ottmann.
Symbolisches Model Checking mit Binary Decision Diagrams
Christian Schindelhauer
Christian Schindelhauer
Grundkurs Theoretische Informatik
Endliche Automaten Informatik JgSt. 13, Abitur 2009
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Eine Präsentation von Lena Sauter & Corinna Nawatzky
Formale Sprachen Reguläre Sprachen Rudolf FREUND, Marian KOGLER.
Automaten, formale Sprachen und Berechenbarkeit II SoSe 2004 Prof. W. Brauer Teil 1: Wiederholung (Vor allem Folien von Priv.-Doz. Dr. Kindler vom WS 2001/02.
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Christian Schindelhauer Wintersemester 2006/07 3. Vorlesung
Informatik III Christian Schindelhauer Wintersemester 2006/07
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Christian Schindelhauer Wintersemester 2006/07 2. Vorlesung
Informatik III Christian Schindelhauer Wintersemester 2006/07
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Modellbasierte Software-Entwicklung eingebetteter Systeme
Modellbasierte Software-Entwicklung eingebetteter Systeme
Modellbasierte Software-Entwicklung eingebetteter Systeme
7. Formale Sprachen und Grammatiken
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.
Modellbasierte Software- Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.
Inhalt Einordnung und Funktion der lexikalische Analyse Grundlagen
Modellbasierte Software- Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.
Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.
Modellierung: MATLAB – Simulink - Stateflow
Dr. Wolfram Amme, Semantik funktionaler Programme, Informatik II, FSU Jena, SS Semantik funktionaler Programme.
 Präsentation transkript:

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 2.6.2009

War wir bislang hatten Einführungsbeispiel (Mars Polar Lander) Automotive Software Engineering Domänen-Engineering Modellbasierte Entwicklung Anforderungsdefinition und -artefakte Lastenheft TSG Ziele und Szenarien Strategien Modellierung physikalische Modellierung Anwendungs- und Verhaltensmodellierung Berechnungsmodelle, zeitabhängige & hybride Automaten 2.6.2009

Marwedel‘s Models of Computation http://ptolemy.berkeley.edu/ 2.6.2009

Your Toy Modelling Language? Automaten (NFA, FSM, Transitionssystem, Zustandsdiagramm, StateChart, …) Def.: A=(Σ,S,δ,S0,Sf) Σ (endl.) Alphabet; evtl. Sonderzeichen Σ S (endl.) Zustandsmenge δ Transitionsrelation δ  S  Σ  S S0 Anfangszustände (Sf Endzustände) δ* als transitive Hülle der Transitionsrelation Scott & Rabin: akzeptierte bzw. generierte Sprache 2.6.2009

Beispiele Probleme mit dieser Modellierungsart? Lichtschalter: off on klick Lichtschalter: hi ok drain gain lo Füllstand: Probleme mit dieser Modellierungsart? 2.6.2009

Automaten mit Ausgabe Mealy-Automat Moore-Automat Σ = I  O oder Σ = I  O oder Σ = (I  {})  (O  {}) Transformation von Eingabewörtern in Ausgabewörter Moore-Automat Σ als reines Eingabe-Alphabet Output-Funktion out von S nach O ineinander transformierbar (siehe wikipedia) 2.6.2009

Erweiterte Automaten V=(v1,…,vn) endliche Menge von Variablen über den Domänen (Wertebereichen, Typen) D1,…,Dn Transition enthält Zuweisungen Aktion v´=t bedeutet Variable v erhält den Wert des Terms t Schalten von Transitionen durch Bedingungen eingeschränkt guard ist aussagen- oder prädikatenlogische Formel über den Variablen V und gewissen elementaren Prädikaten / Vergleichen oft: boolesche Kombination von (Un-)Gleichungen x<c, x≤c, x=c Allgemeine Form: event [guard] / action vgl. UML Zustandsdiagramme 2.6.2009

Beispiel: Bounded Counter inc dec x:=0 inc [x<3] x´= x+1; inc [x=3] dec [x=0] dec [x>0] x´= x-1; konzisere Darstellung (falls Domänen endlich!) 2.6.2009

Modellierung von Realzeit Realzeitkonzepte in UML Zustandsdiagrammen after (time) als Trigger absoluter Zeitpunkt als Trigger Informelle Semantik die Transition wird t Zeiteinheiten nach dem Zeitpunkt zu dem sie aktiv wird ausgeführt die Transition wird zur angegebenen Uhrzeit ausgeführt Vielfach nicht ausreichend keine Mindest- / Höchstwartezeiten keine Möglichkeit mehrere Uhren zu verwenden Zustand 1 Zustand 2 after (5 ms) / Aktivität 2.6.2009

Timed Automata Timed Automata (zeitbeschriftete Automaten) erweitern das Konzept klassischer endlicher Automaten um (Stopp-)Uhren Uhren laufen ständig (kein Anhalten) alle Uhren laufen mit der selben Geschwindigkeit (perfekte Uhren, t´=1) Uhren können durch Transitionen auf 0 zurückgesetzt werden Uhren können das Schalten von Transitionen beeinflussen Eine Uhr x. Keine Invariante an s1, also kann das System beliebig lang in s1 bleiben. Beim Übergang zu s2 mit a wird die Uhr auf 0 zurückgesetzt. In s2 läuft die Uhr. Frühestens 1 Zeiteinheit später ist der Übergang zu s möglich, spätestens 2 Zeiteinheiten später muss er stattfinden. S1 S2 x<2 a / x:=0 b [x>1] 2.6.2009

Anwendungsbeispiel Doppelklick-Schalter Zusatzanforderung Klick an, klick aus Wenn zweimal hintereinander schnell geklickt wird, heller Zusatzanforderung Schalte nach spätestens 300 s wieder dunkler Mehr über timed automata: Rajeev Alur, Tom Henzinger R. Alur and T.A. Henzinger. Real-time logics: complexity and expressiveness. Information and Computation 104(1):35-77, 1993 R. Alur and D.L. Dill. A theory of timed automata. Theoretical Computer Science 126:183-235, 1994 http://www.cis.upenn.edu/~alur/Talks/sfm-rt-04.ppt (lesen!) off low bright klick x:=0 x>3 x  3 y300 y>300 y:=0 2.6.2009

Und nun etwas formaler Gegeben eine Menge von Zeitvariablen X. Eine zeitabhängige Bedingung ist eine boolesche Kombination von Formeln der Art x<c, xc (rationales c) Ein zeitbeschrifteter Automat ist ein Tupel bestehend aus endlicher Menge L von Orten oder Plätzen (locations) Teilmenge L0 von Anfangsorten endliches Alphabet  von Ereignissen endliche Menge  von Uhren (-variablen) Invariante Inv(s) für jeden Ort (zeitabhängige Bedingung, optional) endliche Menge E von Transitionen bestehend aus Quelle, Zielort Ereignis aus dem Alphabet (optional) zeitabhängige Bedingung (optional) Menge von Uhren die zurückgesetzt werden (optional) 2.6.2009

Semantik Jedem zeitbeschrifteten Automaten wird ein zustandsunendliches Transitionssystem zugeordnet Zustände: (l, v) wobei l ein Ort und v eine Belegung der Uhren mit reellen Werten ist die Inv(l) erfüllt Anfangszustände: (l0,(0,…,0)) Zustandsübergänge Kontrollschritt: (l,v) –a–>(l´,v´) falls ein Übergang (l,a,g,r,l´) existiert mit v erfüllt g und v´=v[r:=0] Zeitschritt: (l,v) –d–>(l´,v´) falls l´=l und v´=v+d und sowohl v als auch v´ erfüllen Inv(l) Jeder Pfad durch das Transitionssystem ist ein Ablauf des Automaten Achtung: z.B. bei inkonsistenten Bedingungen leere Menge 2.6.2009

2.6.2009

Beobachtungen und Erweiterungen Simulation schnell, einfach manuell der zufallsgesteuert Modellprüfung für Zeitautomaten ist entscheidbar Stoppuhren  unentscheidbar reelle Konstante  unentscheidbar variable Geschwindigkeiten unentscheidbar Hybride Automaten geringfügige Erweiterungen  Spezialprobleme entscheidbar Rechteckautomaten Automaten mit „Uhrenschlupf“ Keine kontinuierliche Veränderung von Werten zur Modellierung werden mächtigere Konzepte benötigt 2.6.2009

Beschreibung von Veränderung V=(v1,…,vn) reellwertige Variablen kontinuierliche Wertveränderung beschrieben durch (lineare) Differentialgleichung V´= (v1´, …,vn´); V.= (v1., …,vn.) diskrete und kontinuierliche Wertveränderung B(V): Menge der Bedingungen über den Variablen V, d.h. boolesche Kombination von atomaren Formeln über V z.B. x<c, x≤c, x=c z.B. x-y<c, x-y≤c z.B. x´=x+1, x2+3x+9=0 z.B. x. = -1 z.B. x. * y. =0 2.6.2009

Hybride Automaten Wie oben, nur mit kontinuierlichen Variablen Def.: A=(V, , S, δ, s0, Inv, Flow) V Menge von (kontinuierlichen) Variablen,  endliches Alphabet von Ereignissen (events) S (endl.) Menge von Modi (Zustand = Modus + Variablenbelegung) δ Transitionsrelation δ  S EventsGuardsActions S, wobei Events = , Guards = B(V) und Actions = B(V,V´) s0 Anfangsmodus, mit initialer Variablenbelegung Inv: SB(V) Verweil-Bedingung für einen Modus Flow: SB(V,V.) Wertveränderung der Variablen in einem Modus, beschrieben durch lineare Differentialgleichung (v.=c oder v.=f(v)) 2.6.2009

Beispiel: Thermostat Beispiel Füllstandsregelung? 2.6.2009

Beispiel Füllstandsregelung Füllstandsanzeiger Zulauf 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 mid full emty ok high low Strecke Regelung f=h / f.= – k2a f=0 / f.= k1z f<h / f.= k1z – k2a f>0 / fmax / z=0 f<max fmin / z=1 f>min 2.6.2009