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
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
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?
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
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?
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
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.”
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
Folie 8H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme
Prozesse der Systemanalyse
Folie 9H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme
Aufwandsaufteilung
Folie 10H. Schlingloff, SS2014 – modellbasierte Software-Entwicklung eingebetteter Systeme
Beispiel für einen Prozess
• Stakeholder requirements definition process (Lastenhefterstellung)
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 ...
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
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
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
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
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
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!
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
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
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
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
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