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

Slides:



Advertisements
Ähnliche Präsentationen
Das V - Modell - Überblick
Advertisements

Eine dynamische Menge, die diese Operationen unterstützt,
Tipps & Tricks zu benutzerdefinierten Animationspfaden
Informatik 12 | DAES Compilerbau Wintersemester 2010 / 2011 Dr. Heiko Falk Technische Universität Dortmund Lehrstuhl Informatik 12 Entwurfsautomatisierung.
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
Software-Engineering II Eingebettete Systeme, Softwarequalität, Projektmanagement Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt.
Prof. Dr. Holger Schlingloff
Eingebettete Systeme Qualität und Produktivität
Modellbasierte Software-Entwicklung eingebetteter Systeme
Eingebettete Systeme Qualität und Produktivität
Prof. Dr. W. Conen 15. November 2004
„Ansicht Arbeitsbereich“ ist die nutzerspezifische Ansicht, in der alle Dokumente aufgelistet sind, die dem angemeldeten Benutzer zugeordnet sind. D.h.
Finale Semantik und beobachtbares Verhalten
Can Bus Diagnose.
Qualitätssicherung von Software Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin und Fraunhofer FIRST.
Modellbasierte Software-Entwicklung eingebetteter Systeme
Prof. Dr. Holger Schlingloff
Software-Engineering II Eingebettete Systeme, Softwarequalität, Projektmanagement Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt.
Prof. Dr. Holger Schlingloff
Prof. Dr. Holger Schlingloff
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.
Prof. Dr. Holger Schlingloff
Numerik partieller Differentialgleichungen
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Aufgaben des Testens Vergleich des Verhaltens einer Software mit den an sie gestellten.
FH-Hof Deadlocks Richard Göbel. FH-Hof Deadlock - Definition Menge von Prozessen ist an einem Deadlock beteiligt: wenn jeder Prozess in dieser Menge auf.
Algorithmentheorie 04 –Hashing
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (02 – Funktionenklassen) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (02 – Funktionenklassen) Tobias Lauer.
Kapitel 5 Stetigkeit.
Von Molekülen zu Systemen
Briefkopfbogen anpassen
Ehrenmedaillen ermitteln
Folie 1 Kapitel II. Vom Raumbegriff zu algebraischen Strukturen Neubeginn: Herleitung des Begriffs Vektorraum aus intuitiven Vorstellungen über den Raumbegriff.
Variationsformalismus für das freie Teilchen
Vorgehensmodelle: Schwergewichtige Modelle
Prof. Dr. Gerhard Schmidt pres. by H.-J. Steffens Software Engineering SS 2009Folie 1 Objektmodellierung Objekte und Klassen Ein Objekt ist ein Exemplar.
Spezifikation von Anforderungen
11. Vorlesung: Dynamische Konzepte am Fallbeispiel
Gleichgewichtsreaktionen
Bestandsmeldung erstellen Im Programm Powerpoint wird die Präsentation mit F5 gestartet und mit Esc beendet. Mit einem Klick der linken Maustaste oder.
Hi Zusammen! Ich möchte eine Graphik in PP erstellen, die wie ein Tacho funktioniert. Das heisst, das Tacho ist gegeben, aber der Pfeil soll sich durch.
Effiziente Algorithmen
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Einführung in die Programmierung Wintersemester 2013/14 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Box Funktionen. Verschieben Sie drei Beispieldateien in die Box, die Sie für Ihren Kunden erstellt haben und öffnen Sie diese Wählen Sie eines der Beispiele.
Ehrennadeln ermitteln Wenn Sie diese Präsentation im Internet-Explorer ablaufen lassen wollen, so klicken Sie bitte auf das Leinwandsymbol unten rechts.
Allgemeine Funktionalitätsbeschreibung
Allgemeine Funktionalitätsbeschreibung
Petrinetze 1. Einführung Informatik : wesentlich Modellierung von
1 Albert-Ludwigs-Universität Freiburg Rechnernetze und Telematik Prof. Dr. Christian Schindelhauer Informatik III Christian Schindelhauer Wintersemester.
Modellbasierte Software-Entwicklung eingebetteter Systeme
Lektion 1 - Lektion 2 - Lektion 3 - Lektion 4
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.
Modellbasierte Software-Entwicklung eingebetteter Systeme
Eingebettete Systeme Qualität und Produktivität Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer.
07b Mathematik Lösungen ZAP 2007.
09 Mathematik Lösungen ZAP 2007a.
Dr. Wolfram Amme, Semantik funktionaler Programme, Informatik II, FSU Jena, SS Semantik funktionaler Programme.
 Präsentation transkript:

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

Folie 2 H. Schlingloff, Software-Engineering II Übersicht 0. Einleitungsbeispiel (Mars Polar Lander) 1. Eingebettete Systeme 1.1. Definitionen (eingebettetes System, Realzeit, Prozess, Steuerung, …) 1.2. Anforderungsanalyse - allgemeine Vorgehensweise - Beispiel Türsteuergerät - systematische Ansätze

Folie 3 H. Schlingloff, Software-Engineering II TSG-Sitz: Verhaltensbeschreibung (1) Generell: Die Sitzeinstellung kann nur verwendet werden, wenn das entsprechende Konfigurationsbit gesetzt ist. Ein Verstellen der Sitzposition über die Sitztaster ist nur möglich, wenn die dem TSG zugeordnete Vordertür geöffnet ist (F_OFFEN = 1). Das Verstellen der Sitzposition über das Benutzermanagement (betrifft nur Fahrerseite) ist auch bei geschlossener Tür möglich. Die Sitzposition wird entweder entsprechend der vom Benutzermanagement gesendeten Positionsangaben oder den Sitztasten eingestellt. Dabei gilt das Prinzip, dass immer die zuletzt benutzte Taste (Benutzermanagement oder Sitztaste) die Bewegung des Sitzes bestimmt. Ist die Batteriespannung BATT während der Sitzverstellung kleiner als 10V, so werden die Sitze nicht bewegt bzw. wird die Sitzbewegung abgebrochen. Statt dessen wird die Meldung B_LOW_SITZ = 1 generiert.

Folie 4 H. Schlingloff, Software-Engineering II TSG-Sitz: Verhaltensbeschreibung (2) Bewegung des Sitzes: Zur Bewegung des Sitzes werden die in Tabelle 3 (Seite 19) angegebenen Spannungen auf die Sitzmotoren gelegt. Die Bewegung wird solange durchgeführt wie Ist–Wert und Soll–Wert nicht übereinstimmen (bei Anfahren einer Sitzposition über das Benutzermanagement) bzw. die Sitztasten gedrückt werden (bei Verstellen der Sitzposition über die Sitztasten) und der Wert der Sitzposition keine Unterbrechung erkennt. Bewegung über Sitztasten: Bei der Verwendung der Sitztasten können maximal zwei Bewegungsrichtungen gleichzeitig verwendet werden. Wird während der Sitzverstellung über die Sitztasten eine Taste des Benutzermanagements gedrückt, so wird die Sitzverstellung über Tasten abgebrochen und die Sitzverstellung über das Benutzermanagement begonnen. Bewegung über Benutzermanagement: Die Sitzverstellung über das Benutzermanagement ist nur möglich, solange die Fahrzeuggeschwindigkeit (FZG V) kleiner als 5 km/h ist. Überschreitet die Fahrzeuggeschwindigkeit 5 km/h, so wird die Sitzbewegung sofort abgebrochen.

Folie 5 H. Schlingloff, Software-Engineering II TSG-Sitz: Verhaltensbeschreibung (3) Es sind zwei Fälle zu unterscheiden: Fall 1: (Auswahl einer Einstellung über Benutzermanagementtaste) In diesem Fall ist anzunehmen, dass der Fahrer bereits auf dem Fahrersitz sitzt. Um die Bewegung so angenehm wie möglich zu gestalten, sind folgende Regeln bei der Ansteuerung der Sitzposition zu beachten: Zuerst werden die Bewegungen durchgeführt, die eine Entspannung der Sitzposition zur Folge haben, d.h. das Vergrößern der Entfernung Sitz–Lenkrad, das Flacher–Stellen des Lehnenwinkels, das Absenken der Sitzfläche (vorne und hinten) sowie das Öffnen der Schalung. Anschließend werden die entgegengesetzten Bewegungen durchgeführt. Es dürfen zu einer Zeit maximal zwei Richtungen gleichzeitig bewegt werden. Dabei gilt die Reihenfolge Entfernung Sitz–Lenkrad, Lehnenwinkel, Schalung, Sitzfläche vorne, Sitzfläche hinten.

Folie 6 H. Schlingloff, Software-Engineering II TSG-Sitz: Verhaltensbeschreibung (4) Fall 2: (Auswahl einer Einstellung über Funksender) In diesem Fall soll die gewünschte Sitzposition so schnell wie möglich eingenommen werden. Dazu werden alle Sitzmotoren gleichzeitig angesteuert. Fehler: Wird während der Ansteuerung eines Sitzmotors über den Zeitraum von 1 sec. keine Änderung des entsprechenden Positionswerts beobachtet, so wird die Ansteuerung des Motors beendet und der Fehlercode 0x31 in den Fehlerspeicher eingetragen. Timeout: Wird ein Timeout der CAN–Botschaft FGZ_V erkannt, so wird der Fehlereintrag 0x14 gesetzt. Für die weitere Arbeitsweise des TSG wird angenommen, dass die Geschwindigkeit 10 km/h beträgt, bis die CAN–Botschaft wieder vorliegt.

Folie 7 H. Schlingloff, Software-Engineering II TSG: Weitere Bestandteile der Spec Form und Belegung der Stecker Charakteristik (Mechanik und Elektrik) der Taster Beschreibung der Beleuchtungs- elemente und Motoren Bussysteme (CAN-B) und –Signale Elektrische und mechanische Spezifikation Betriebsspannung, Stromverbrauch, Ruhestrom Gehäuseabmessungen, Befestigungspunkte Speicher Daten im Permanentspeicher Fehlerspeicher Prüfroutinen (BIST)

Folie 8 H. Schlingloff, Software-Engineering II Und jetzt wieder zum Elfenbeinturm In der Praxis werden solche Dokumente aus bereits vorhandenen Vorlagen durch Änderung einzelner Teile erstellt. Unsystematische Vorgehensweise Mischung vieler Belange Möglichkeit von Auslassungsfehlern Requirements-Management-Systeme unterstützen die Aufschreibung und Verfolgung von Anforderungen (Hyperlinks) unterstützen nicht die systematische Erstellung und die formale Semantik von Anforderungen

Folie 9 H. Schlingloff, Software-Engineering II Systematik: Erstellung des Lastenheftes 1. Identifikation der relevanten Umgebungsgrößen physikalische Eigenschaften: Masse, Druck, Temperatur, … gewünschte Benutzungsschnittstelle: Schalter, Displays, Interaktionsformen 2. Repräsentation durch mathematische Variablen wichtig: Verbindung zwischen Variablen und ihrer Bedeutung genau dokumentieren! (z.B. Länge in m, mm oder in) 3. Eigenschaften der Variablen festlegen mögliche Wertebereiche, Randbedingungen Relationen zwischen den Variablen

Folie 10 H. Schlingloff, Software-Engineering II Die relevanten Variablen sind im Allgemeinen zeitabhängig Funktionen über der Zeit! Zustand: Wert aller Funktionen zu einem gegebenen Zeitpunkt Trajektorie: Veränderung des Zustandes in der Zeit Festlegung: überwachte und geregelte Variablen (monitorierte und kontrollierte Größen) geregelte Variable: Wert wird von der Regelung eingestellt überwachte Variable: Wert beeinflusst das Systemverhalten Achtung: manche Umgebungsgrößen sind beides! Realzeitsystem: Uhrzeit ist überwachte Größe

Folie 11 H. Schlingloff, Software-Engineering II das einfachste Beispiel informelle Anforderungen: Wenn f < min, Zulauf einschalten Wenn f > max, Zulauf ausschalten Stellvertretend für Heizungsthermostat, Batterieladegerät, Dämmerungslicht, … Füllstandsanzeiger Zulauf Ablauf max min VariableTypBeschreibung Werteber eichEinheit Bemerku ng fmFüllstand0-100mm zcZulauf0-1 prozentuale Öffnung a Ablauf0-1 nicht zugänglich minkonstantMinimalfüllstand86mm maxkonstantMaximalfüllstand95mm

Folie 12 H. Schlingloff, Software-Engineering II Festlegung in Systemspezifikation Randbedingungen von der Natur oder vom Auftraggeber vorgegeben - z.B. physikalische Beschränkungen - z.B. Altsysteme, zu beachtende Restriktionen etc. Verantwortlichkeit des Auftraggebers! Steuerfunktionalität Abbildung von überwachten in gesteuerte Größen i.A. mehrdeutig, relational; Definitionsbereich von Randbedingungen eingeschränkt, Wertebereich gibt zulässige Trajektorien an Verantwortlichkeit des Systemingenieurs

Folie 13 H. Schlingloff, Software-Engineering II im Beispiel Randbedingungen 0 f(t) h 0 < f(t) < h f´(t)= k 1 *z(t) – k 2 *a(t) Steuerfunktionalität als Klauseln f(t) min z(t) = 1 f(t) max z(t) = 0 als partielle Funktion 1 falls f(t) min z(t) = 0 falls f(t) max undef sonst als Abbildung C ={(f(t), z(t)) | (f(t) min z(t) = 1) (f(t) max z(t) = 0)} Füllstandsanzeiger Zulauf Ablauf max min

Folie 14 H. Schlingloff, Software-Engineering II Trajektorienbereiche intendierte, erlaubte und verboten t

Folie 15 H. Schlingloff, Software-Engineering II im Beispiel Zulauf sei kontinuierlich regelbar (0 z(t) 1); der Füllstand sollte möglichst nahe an max gehalten werden intendiertes Verhalten: je näher der Füllstand bei max ist, desto mehr wird der Zulauf geschlossen erlaubtes Verhalten: voller Zulauf bis max erreicht wird, dann zu (ruiniert auf Dauer das Ventil) verboten: max wird irgendwann überschritten Füllstandsanzeiger Zulauf Ablauf max min

Folie 16 H. Schlingloff, Software-Engineering II Black-Box-Sicht Die Systemspezifikation darf nur die nach außen sichtbaren Größen (überwachte und gesteuerte Variablen) verwenden! interne Variablen der Regelung versteckt, interne Zustände nicht sichtbar Implementierungsfreiheit

Folie 17 H. Schlingloff, Software-Engineering II mathematische Verhaltensbeschreibung Wdh.: Zustand = Wert aller relevanten Variablen zu einem gegebenen Zeitpunkt Zustand der Umgebung ist für das System (nur) durch überwachte Variablen gegeben Systemzustand setzt sich aus überwachten, gesteuerten und internen Variablen zusammen Ein Realzeitsystem (Zeit ist überwachte Größe) kehrt niemals in den selben Zustand zurück Modus (engl.: mode) Menge von äquivalenten Zuständen Modalpartitionierung (mode class) Partitionierung der Menge der Zustände in Modi

Folie 18 H. Schlingloff, Software-Engineering II statt Zustandsübergängen betrachten wir Übergänge von einem Modus in einen anderen Im Beispiel Umgebungszustand=Füllhöhe f(t) Modalpartitionierung={A:f(t) min, B:min<f(t)<max, C:f(t) max} mögliche Moduswechsel: A B, B C, C B, B A Beschreibung von Modi? In jedem Modus können gewisse Konditionen (engl. Condition: Aussage, Gegebenheit, Proposition) zutreffen oder auch nicht

Folie 19 H. Schlingloff, Software-Engineering II Def. Kondition: boolesche Funktion über der Zeit, die mit Hilfe von Umgebungsvariablen definiert ist Beispiel: voll(t) = f(t) max, leer(t) = f(t) min Def. Ereignis (event): Umschalten einer oder mehrerer Konditionen, : Schalten auf wahr bzw. auf falsch Beispiel: voll(7): max wird zum Zeitpunkt 7 erreicht Def. Historie: Folge von Ereignissen Für jeden konkreten Systemablauf gibt es genau eine Historie endliche Variabilität: In jedem endlichen Zeitabschnitt passieren nur endlich viele Ereignisse (non-Zeno-Eigenschaft) Der Modus eines Systems wird durch den Anfangszustand und die Historie eindeutig bestimmt Beispiel: voll(7), voll(9), leer(13), leer(16)