Modellbasierte Software-Entwicklung eingebetteter Systeme

Post on 21-Mar-2016

46 views 4 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. Wochenquiz. Was sind BDDs, IBDs? Gemeinsamkeiten & Unterschiede? - PowerPoint PPT Presentation

Transcript of Modellbasierte Software-Entwicklung eingebetteter Systeme

Modellbasierte Software-Entwicklung eingebetteter Systeme

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

undFraunhofer Institut für offene Kommunikationssysteme FOKUS

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

Wochenquiz

• Was sind BDDs, IBDs? Gemeinsamkeiten & Unterschiede?• Wozu werden Zusicherungsdiagramme verwendet?• Wie kann man Strategien formalisieren?• Welche Vorgehensmodelle kennen Sie?• Welche Sichten auf ein eingebettetes System werden modelliert?

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

A Development Process Model1. Read the requirements specification2. Put all information into an

abstract class diagram of the subject domain3. Identify all actors in a use case diagram4. Define sequences of interaction

for the use cases in sequence diagrams5. Put sequence diagrams in

activity diagrams / state machines6. Derive a system class model7. Design a communication diagram

to define concrete interaction8. Derive a design class model9. Derive an implementation class model10. Generate code

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

Example: Extended Care System• System to connect patients and health care people• Main purpose: provide quick help in the case of an emergency

e.g., a fall to the ground, cardiac arrest, apnea or general immobility

scenario: collapse of the patient (e.g., while walking)• Correctness: call help iff help is needed

if help is needed, a call must be issued there must not be false emergency calls

• Idea sensors attached to the body recognize abnormal condition (e.g.,

powerful acceleration, change in the barometric altitude, higher heart rate, ...)

sensors exchange and consolidate their measurement results call an emergency service provider for further processing the alarm

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

System Structure of the ECSComponents• Ventricular Assist Device (VAD)

blood pump with controller and control laptop

has to be protected from misusage

• Body Area Network (BAN) different sensor nodes

attached to the body wireless communication, ad-hoc networking, leader election not a medical device (not used for diagnosis or therapy)

• Telematics Systems (TMS) telematic module, server, client software online monitoring, alert handling, data logging data protection

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

Challenges• Requirements specification• Design and evaluation of system architectures• Interface definitions

• Not handled: early validation security analysis testing and testability functional safety

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

Boundaries of the System

•modeled by a ibd (context diagram)•service provider as part of the environment

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

Goals and Requirements

•Modeled via requirements diagrams

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

Use Cases

•Main use cases of the system

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

Scenario “Collapse”

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

Structural Investigation of Requirements

• Information to be exchanged in a class model

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

Functional Decomposition

•Deployment of functionality onto nodes

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

Architecture

•Package diagram for the distribution

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

Towards an Implementation

• Sensor behavior as activity / state machine diagrams

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

A Concrete Interaction Scenario

•SD

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

3.2 physikalische Modellierung

1. Identifikation der relevanten Umgebungsgrößen2. Repräsentation durch mathematische Variablen3. Eigenschaften / Relationen der Variablen

festlegen 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)

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

Beispiel Füllstandsregelung

• Randbedingungen Füllhöhe ändert sich als Funktion von Zu- und Ablauf Überlauf wenn voll, kein Auslauf wenn leer

• informelle Anforderungen für Steuerung des Zulaufs Füllstand soll zwischen min und max gehalten werden

- Wenn f < min, Zulauf einschalten- Wenn f > max, Zulauf ausschalten

• Stellvertretend für Heizungsthermostat, Batterieladegerät, Dämmerungslicht, …

Füllstands-anzeiger

Zulauf

Ablauf

max

min

Variable Typ BeschreibungWertebereich Einheit

Bemerkung

f m Füllstand 0-100 mm  

z c Zulauf 0-1   prozentuale Öffnung

a   Ablauf 0-1   nicht zugänglich

min konstant Minimalfüllstand 86 mm  

max konstant Maximalfüllstand 95 mm  

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

Modellierung mit Scicos• Idee

Flussdiagramme (wie ibd) Blöcke tragen mathematische Semantik (wie par)

• Verbindungen signalisieren Ströme Kontinuierliche Daten wie Strom, Spannung, Fluid, Masse, … Diskrete Daten wie Events Umformung der Eingangsströme in Ausgangsströme

• Industriestandard: Simulink• Alternative Scicos / Xcos

Aufbauend auf numerischer Mathematik-Software Scilab des INRIA Modellierung durch Zusammenschalten von Blöcken IDE: ScicosLab

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

Beispiel Wassertank• f´(t)= k1*z(t) – k2*a(t)• 0 ≤ f(t) ≤ max