22
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

Modellbasierte Software-Entwicklung eingebetteter Systeme

  • Upload
    catori

  • View
    36

  • Download
    0

Embed Size (px)

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. W-Fragen. Was versteht man unter cyber-physischen Systemen? - PowerPoint PPT Presentation

Citation preview

Page 1: Modellbasierte Software-Entwicklung eingebetteter Systeme

Modellbasierte Software-Entwicklung eingebetteter Systeme

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

und

Fraunhofer Institut für offene Kommunikationssysteme FOKUS

Page 2: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

W-Fragen

• Was versteht man unter cyber-physischen Systemen?• Welche besonderen Herausforderungen gibt es bei der Entwicklung von

ES?• Was ist ein Realzeitsystem?• Was ist der Unterschied zwischen weichen und harten

Realzeitanforderungen?• Wie ist der prinzipielle Hardware-Aufbau eines ES?• Wie werden ES programmiert?• Welche Software läuft auf einem ES?

Page 3: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

2. System- und Anforderungsanalyse

• Systemanalyse (systems engineering) Entwurfs- und Konstruktionsprozesse komplexer Systeme

• Anforderungsanalyse (requirements engineering) Prozesse zur Anforderungserhebung, -verwaltung und –

vernetzung

Frühe Phasen der Systementwicklung!Entwicklungs- bzw. Lebenslauf-begleitend!

nicht eingeschränkt auf eingebettete Systeme(z.B. ein Flughafenbau benötigt kompetente Systemanalysten)

Komplexität beherrschbar machen

Page 4: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

Motivation Systemanalyse

• Vergleich zum Vorgehen eines Ingenieurs: Plan auf Papier Analyse des Plans Bau des Systems

• Software: Wunschvorstellungen Implementierung und Test Ändern solange bis Ergebnis zufriedenstellend

Das kann‘s nicht sein! Wie werden Anforderungen systematisch erfasst und

verwaltet? Wie fließen sie in den Entwurf ein?

Page 5: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

Systemanalyse

• Systemanalyse ist der Prozess, ein komplexes System als Ganzes zu verstehen, zu entwerfen und zu entwickeln (im Gegensatz zur Komponentensicht). Wesentlich dafür ist die ganzheitliche Erfassung der Anforderungen, insbesondere bezüglich Integration und Betrieb des Systems im sozio-technischen Umfeld.

• Herangehensweise: alle verschiedenen Aspekte berücksichtigenauch nichttechnische Gesichtspunkte: Nutzerverhalten kaufmännische Aspekte Betrieb Verwaltung Entsorgung

• Betonung der Systemziele

• ständige Exploration mehrerer Lösungswege

• ganzheitliche Sicht auf Prozesse und Abläufe

Page 6: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

INCOSE

International Council of Systems Engineering

• Systems Engineering Professional Certification

• Systems Engineering Handbook“Systems engineering is an interdisciplinary approach and means to enable the realization of successful systems. It focuses on defining customer needs and required functionality early in the development cycle, documenting requirements, and then proceeding with design synthesis and system validation while considering the complete problem: operations, cost and schedule, performance, training and support, test, manufacturing, and disposal. Systems engineering considers both the business and the technical needs of all customers with the goal of providing a quality product that meets the user needs.”

Page 7: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

Abstraktionsebenen von Systemen

Hardware

Plattformen

Applikationen

Prozesse

Organisationen

Softwareengineering

Socio-technicalsystemsengineering

Quelle: http://Fifs.host.cs.st-andrews.ac.uk/Books/SE8/Syllabuses/ADVANCED-SE-SLIDES/Systems-1.ppt

Beispiel Herzschrittmacher

Page 8: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

Prozesse der Systemanalyse

Page 9: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

Aufwandsaufteilung

Page 10: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

Beispiel für einen Prozess

• Stakeholder requirements definition process (Lastenhefterstellung)

Page 11: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

Stakeholder (Akteure)

• alle Personen oder Organisationen, die direkt oder indirekt mit dem System zu tun haben („any entity (individual or organization) with a legitimate interest in the system“)

• Beispiel „Herzschrittmacher“: Patient Chirurg behandelnder Arzt Pflegepersonal Klinik Entwicklungs- und Herstellungsfirma Zulieferer Wartungstechniker Notfallambulanz TÜV ...

Systemdesigner Entwickler SW/HW Tester Systemintegrator Manualschreiber Softwarewartung Management Einkaufsabteilung Buchhaltung ...

Page 12: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

Anforderungen – für wen?

Use the requirements todevelop validation tests for

the system

Use the requirementsdocument to plan a bid forthe system and to plan the

system development process

Use the requirements tounderstand what system is to

be developed

System testengineers

Managers

Systemengineers

Specify the requirements andread them to check that they

meet their needs. Theyspecify changes to the

requirements

Systemcustomers

Use the requirements to helpunderstand the system and

the relationships between itsparts

Systemmaintenanceengineers

Page 13: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

Lastenheft (Anforderungsspezifikation)

•DIN 69901-5: „die vom Auftraggeber festgelegte Gesamtheit der Forderungen an die Lieferungen und Leistungen eines Auftragnehmers innerhalb eines Auftrages“

•Beschreibung der durch das System bereitgestellten Dienste und operationalen Randbedingungen; in der Sprache der Stakeholder verfasst und für diese verständlich

•aus Vorstudie, Workshops, Interviews

•Fokus auf Benutzungsanforderungen

•das für die Systementwicklung wesentliche Dokument

•beschreibt das System in seiner Gesamtheit

•oft Grundlage für Auftragserteilung

•üblicherweise ein Textdokument von 50-500 Seiten

•üblicherweise streng geheim

Page 14: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

typischer Aufbau

1. Titel, Dokumentenname und –ID, Verfasser, Freigabe, usw.2. Änderungshistorie, Inhalts-, Abbildungs- und

Tabellenverzeichnis3. vorgesehener Leserkreis, Abstrakt, Dokumentenwartung4. Verzeichnis von Abkürzungen, Definitionen und

Fachbegriffen5. Sicherheitsanforderungen und relevante Standards6. System- und Schnittstellenübersicht,

Nutzungsbeschreibungen7. Funktionale Anforderungen8. Nichtfunktionale Anforderungen9. Indices und Anhänge

Page 15: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

Anforderungen eingebetteter Systeme

• Physikalische Umgebung spezielle operationale Randbedingungen, z.B. Temperatur,

Beschleunigungswerte Abmessungen, Formfaktor, Stecker usw.

• Technisches System mit SW und HW Kosten / Leistungsbeschränkungen

- Prozessor (-familie), max. Speicherausbau Sensorik / Aktuatorik

- Toleranzbereiche, Abweichungen

- Leistungsgrenzen

• Domänenspezifika Fachbegriffe Normen, Standards

• Funktion als Regelkreis und Schaltfunktion kontinuierliche und diskrete Anteile

Page 16: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

Funktionale und nichtfunktionale Anforderungen

• Funktionale Anforderungen Beschreibung der Dienste des Systems, z.B. wie es auf bestimmte

Eingaben reagiert oder sich in bestimmten Situationen verhält z.B. was passiert wenn ein bestimmter Knopf gedrückt wird

• Nicht-funktionale Anforderungen Randbedingungen für die Dienste, z.B. zeitliche Einschränkungen,

Entwicklungseinschränkungen, usw. z.B. Lebensdauer oder Leistung umstritten ob überhaupt NFR existieren

• Domänen-Anforderungen allgemeine Anforderungen für alle Systeme einer bestimmten

Anwendungsdomäne (Medizintechnik, Schienenverkehr...) z.B. anwendbare Standards

Page 17: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

Funktionale Anforderungen

–Funktionalität oder Dienste des Systems– Funktionale Nutzeranforderungen: Abstrakte Außensicht

– Funktionale Systemanforderungen: Abstrakte Innensicht

–Formulierung hängt ab von der zu erwartenden Nutzung und dem Einsatzbereich des Systems

–BLACK BOX VIEW!

Page 18: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

Performancerequirements

Spacerequirements

Usabilityrequirements

Efficiencyrequirements

Reliabilityrequirements

Portabilityrequirements

Interoperabilityrequirements

Ethicalrequirements

Legislativerequirements

Implementationrequirements

Standardsrequirements

Deliveryrequirements

Safetyrequirements

Privacyrequirements

Productrequirements

Organisationalrequirements

Externalrequirements

Non-functionalrequirements

Nichtfunktionale Anforderungen

Page 19: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

Das menschliche Herz

• “Motor” des kardiovasculären Systems

• Zwei Kreise: pulmonatorischer Kreislauf (rechte Seite) und systemischer Kreislauf (linke Seite des Herzens)

• Jede Seite besteht aus Atrium und Ventrikel

• Das Herz wirkt als doppelte Pumpe, wobei beide Teile synchronisiert sind anfangs sind die Muskeln entspannt und das Blut fließt in die Atria dann ziehen sich die Atria zusammen und pressen das Blut in die Ventrikel danach kontrahieren sich die Ventrikel und das Blut fließt in die Lunge bzw. den Körper schließlich entspannen sich die Muskeln wieder und der Zyklus beginnt von vorn

http://www.youtube.com/watch?v=JA0Wb3gc4mE http://www.youtube.com/watch?v=rguztY8aqpk

Page 20: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

Kardiovasculäre Krankheiten ...

• ... sind eine der Haupt-Todesursachen weltweit.

• Herzrhythmusstörungen können sein: bradycardia: das Herz schlägt zu langsam tachycardia: das Herz schlägt zu schnell Flimmern (fibrillation): das Herz schlägt unregelmäßig Stillstand: das Herz schlägt überhaupt nicht mehr

• Das Herz schlägt, indem elektrische Impulse vom sinoatrialen Knoten (im Atrium) generiert und durch den atrioventrikularen Knoten (im Ventrikel) propagiert werden; diese verursachen das Zusammenziehen der Herzmuskeln

• Beide diese Knoten können künstlich stimuliert werden Therapie für chronische Herzrhythmusstörungen

Page 21: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

History of Pacemakers

• Conceived in the 1920’s external devices used since the 1930s

• First implantation 1958 consisted of a capacitor with two transistors,

and a power supply (accumulator or battery) sealed in a shoepolish-can with epoxy

• Problems power supply

- plutonium batteries can last 40+ years, but are poisonous

- present capacity 5-8 years, “problem solved” constant pacing can lead to atrial fibrillation, if the artificial pace contradicts

the natural one. However: leads can be used to measure the cardiac cycle control electronics needed!

• Today, every year more than 500.000 pacemakers are implanted worldwide

Page 22: Modellbasierte Software-Entwicklung eingebetteter Systeme

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

Modern Pacemakers

• Apply stimulating pulse if and only if necessary

• Use of leads not only to apply the pulse, but also to measure an electrocardiogram

• Measure patient’s activity and adapt the pacing rate accordingly

• Improve strength of the heart

• Resynchronize and improve synchronizationbetween left and right side of the heart

• Cure certain cardiovascular conditionsCurrent trends:

• Implantable integrated pacemaker / defibrillators

• Intracardial pacemakers, subcutaneous cardioverter defibrillators

• Telemedical supervision and supporthttp://www.youtube.com/watch?v=SMXBR_YFocs