Software im Automobil Eine Revolution und ihre Folgen Manfred Broy Lehrstuhl für Software & Systems Engineering Technische Universität München Institut für Informatik Das Auto ein komplexes Informationssystem Bis zu 40% der Herstellkosten eines Fahrzeugs werden durch Elektronik/ Software bestimmt. 90% aller Innovationen sind getrieben von Elektronik/ Software. 50 70% der Entwicklungskosten eines Steuergeräts (ECU) entfallen auf die Software. Premiumfahrzeuge besitzen bis zu 70 Steuergeräte, die über 5 Bussysteme kommunizieren. Manfred Broy 2
Innovation durch eingebettete Software Software ist heute der wichtigste Innovationstreiber für technische Systeme! Neuartige Funktionen! Bekannte Funktionen in neuer Realisierung! Verringerte Kosten! Energieeinsparung! Verknüpfung von Funktionen Software erlaubt völlig neue Lösungen bekannter Aufgabenstellungen Bei hinreichender Ausstattung der Systeme mit Aktuatoren und Sensoren können weitere softwarebasierte Funktionen durch reine Programmierung geschaffen werden! Vision: Das programmierbare Fahrzeug Systeme werden zunehmend nach außen vernetzt! Televerkehr! Integrierte, übergreifende Assistenzsysteme Manfred Broy 3 Air Bag Manfred Broy 4
Relevanz der Elektronik im Automobil Zunahme der Funktionalität innerhalb der Domänen Aktive Sicherheit Kommunikation & Information Passive Sicherheit & Komfort Antriebsstrang 90% allerzukünftigen Innovationen im Fahrzeug werden durch Elektronik und Software entstehen. Manfred Broy 5 Mensch Maschine Interaktion Manfred Broy 6
Die Zukunft: Fahrerassistenzsysteme Manfred Broy 7 Umfelderfassung Manfred Broy 8
Car to Car Communication Manfred Broy 9 Der Treiber: Leistungszuwachs bei der Hardware Manfred Broy 10
Pro Software im Automobil - die Folgen! Sicherheit: Unfälle vermeiden, Unfallfolgen mindern! Komfort: Fahraufgabe erleichtern, bequemes Fahren! Ökologie: Energie sparen, Umwelt entlasten! Technik: Innovative Lösungen! Televerkehr: Bessere Koordination Contra! Sicherheit! Zuverlässigkeit! Kosten! Komplexität Fazit: Ziel Beherrschbarkeit Manfred Broy 11 Manfred Broy 12
ACC: Adaptive Cruise Control Manfred Broy 13 Abstandssensor Fahrerwunsch Geschwindigkeits-/Abstandsregelung Digitale Motorelektronik Manfred Broy 14
Abstandssensor Funktionsebene Technische Ebene Digitale Motorelektronik Manfred Broy 15 Fahrerwunsch Nutzungssicht Abstandssensor keits-/abstands- regelung Aktive Fahrerwunsch Geschwindigkeitsregelung Geschwindig- Nutzungssicht Fahrerwunsch Geschwindigkeits-/Abstandsregelung Funktionsebene Digitale Motorelektronik Technische Ebene Beschleunigung Umgebung Manfred Broy 16
Nutzungssicht Abstandssensor keits-/abstands- regelung Fahrerwunsch Aktive Geschwindigkeitsregelung Geschwindig- Funktionsebene Digitale Motorelektronik Technische Ebene Manfred Broy 17 Nutzungssicht Abstandssensor Fahrerwunsch Geschwindigkeits-/Abstandsregelung Funktionsebene Digitale Motorelektronik Technische Ebene Manfred Broy 18
CAN-vernetzten Steuergeräte im Phaeton Sitz-, hinten Telefon- Einparkhilfe- Dachmodul Zentral- Komfortsystem Tür-, hinten re. Klimabedienteil Fond Heckklappe- TV-Tuner Analoguhr Luftfeder/CDC- Tür-, Beifahrer Navigation- Reifendruckk.- Anhänger- ADR- DSP Motor- 1 Batterie- Motor- 2 Tür- hinten li. Getriebe- Lenksäulenmodul ZAB Tür- Fahrer Sitz-, Beifahrer ADR-Sensor Bordnetz- Airbag- KESSY- ABS/ESP Standheizung Kombiinstrument Sitz- Fahrer Klima- Wischermodul CAN-Antrieb CAN-Komfort CAN-Infotainm. Manfred Broy 19 Netzwerk Architektur Beispiel TOURAN Fahrzeug- Stecker Motor- Getriebe- Wählhebel Bremsen- (ABS,ESP,...) Allrad- CAN- Antrieb Info - CAN Kombi Kombi- CAN Zentral- Einheit Bordnetz- Einparkhilfe Zugangssystem Airbag- dynamische Lenkhilfe... LWR CAN- Komfort Tel./Interf.- box Anhänger- Sonder-Fzg- Verdeck- PTC- Heizung-... DSP Klima- Sitz-Fahrer (Memory) Sitz-Beifahrer (Memory) Tür- Fahrer Tür- Beifahrer TV- Tuner... Standheizung IRÜ Komfort- Sounder Tür-(FH)- hinten rechts NGS Tür- (FH)- hinten links CAN- Komfort Manfred Broy 20
Thesen zum Thema Software im Automobil Multi-Funktionalität Mensch Maschine Interaktion entscheidend Softwareanteile nehmen über die kommenden 10-20 Jahre weiter exponentiell zu Innovation im Fahrzeug stark von Software getrieben! Sicherheitsfunktionen! Fahrerassistenz! Vernetzung nach außen (Peer-to-Peer)! Ökologie - Energiemanagement! Personalisierung und Individualisierung Neuartige Entwicklungsprozesse erforderlich Manfred Broy 21 Die gesamte Entwicklungsprozesskette ist zu berücksichtigen Manfred Broy 22
Dokumentation der Anforderungen: Ausblick Manfred Broy 23 Funktionen im Automobil - Abstraktionsebenen Nutzungsebene: Auf das Fahrzeug wirken Reize (Input - in Form von Nutzereingaben - Multimedial, Sensoren) ein und das Fahrzeug reagiert darauf (Output: Anzeigeinstrumente - Multimedial, Aktuatoren) Durch Abhängigkeiten (Feature Interaction) zwischen den Funktionen ensteht ein komplexes Wechselspiel Logische Architektur: Das Verhalten der eingebetteten Hardware/Soft- waresysteme wird durch funktionale Einheiten (logische Komponenten) dargestellt, die interagieren um das Nutzerverhalten zu erzeugen Die logische Architektur beschreibt die abstrakten Lösungsmuster Hardware: Die mechatronischen Geräte im Fahrzeug (Steuergeräte, Bussystemen, Sensoren, Aktuatoren, Geräte der Mensch-Maschine-Schnittstelle). Die Hardware bildet ein umfangreiches Netzwerk Software: Die Gesamtheit der Programme und Daten, die zur Steuerung auf der Hardware ablaufen. Das Verhalten der Systeme ist wesentlich durch die Software bestimmt. Deployment: Verteilung der Software auf der Hardware Neben der Komplexität der Funktionen (Korrekheit, Echtzeit) entsteht enorme Komplexität (Multiplexing) durch die Forderung nach Effizienz und Performanz (geringe Stückkosten) Manfred Broy 24
Probleme steigender Softwareumfänge Höhere Komplexität in den Funktionen! Komplexe Einzelfunktionalitäten! Abhängigkeiten zwischen Funktionen (Feature Interaction)! Aufwändige, schwer erfassbare Hardware/Software-Infrastruktur (Betriebssysteme, Bussysteme) Weitgehende Qualitätsanforderungen! Zuverlässigkeit (Funktionale Korrektheit, Robustheit, Fehlertoleranz)! Performanz (optimale Ausnutzung der Ressourcen im Sinn der Kostenbeherrschung)! Langzeitbetrieb (Wartung, Kompatibilität) Abgestimmte Prozesse erforderlich! Verteilte Entwicklung! Änderungsmanagement! Beherrschung der Integration! Sicherungen der Investitionen (Wiederverwendung - Produktlinien) Etablierte Vorgehensweisen (HIL, konventionelles Testen, informelle Lastenhefte) stoßen an Grenzen Manfred Broy 25 Informelle Anforderungen Modellbasierung in der Entwicklung Formalisieren S Requiremerments Engineering Validierung Formalisierte Systemanforderungen Systemabnahme Systemverifikation R " S Integration R = R1!R2!R3!R4 R Ausliefern R1 R2 R4 R3 Architektur Architekturdesign Architekturverifikation S = S1!S2!S3!S4 S1 S4 S2 S3 Realisieren R1 Integrieren R2 R4 R3 Komponentenimplementierung -verifikation R1 " S1 R2 " S2 R3 " S3 R3 " S4 Manfred Broy 26
Beispiel: Zustandsübergangsdiagramm x:data Sender bs: Bit d: Data c1:m c4:bit x:e / - {d := e} - / c1:m(d,bs) {bs := true} Input Transmission - / - {bs = t} c4:t/- Waiting {bs = t} c4:t / - {bs := bs} Manfred Broy 27 Der Schlüssel: Diskrete Ereignissysteme Das Verhalten eines Diskreten Ereignissystems besteht aus einer Menge von Ereignissen Betrachtete Ereignisse:! Zeitereignisse! Zustandsänderungen! Sensorinput! Eintreffen von Nachrichten jedes Ereignis entspricht einer Aktion Die Logik eines Systems besteht in den kausalen Abhängigkeiten zwischen den Ereignissen/Aktionen Manfred Broy 28
Theorie verteilter Systeme Schnittstellenabstraktion: Jede Zustandsmaschine, jeder Prozess und jede Architektur kann zu einem Schnittstellenverhalten abstrahiert werden Komposition:! Auf jeder Systemsicht (Schnittstelle, Zustandsmaschine, Architektur, Prozess) ist ein Kompositionsoperator gegeben! Die Kompositionsoperatoren sind verträglich Verfeinerung:! Auf jeder Systemsicht (Schnittstelle, Zustandsmaschine, Architektur, Prozess) ist ein Kompositionsoperator gegeben! Die Verfeinerungsoperationen sind verträglich! Verfeinerung und Komposition sind verträglich Manfred Broy 29 Schlüsselthema: Anforderungsspezifikation Eine Spezifikation ist eine formale, halbformale, informelle Beschreibung einer Systemeigenschaft Ziel der Anforderungsanalyse (Requirements Engineering) ist die Erstellung einer System/Softwarespezifikation Kritische Fragen:! Erfasst die Spezifikation die tatsächlichen Anforderungen vollständig! Ist die Spezifikation widerspruchsfrei und unmissverständlich! Sind insbesondere alle sicherheitskritischen Aspekte erfasst (Security, Funktionale Sicherheit)! Ist klar festgelegt, was es heißt, dass ein System die Anforderungen erfüllt Manfred Broy 30
Validierung Unter Validierung versteht man die Überprüfung, dass die erarbeitete Spezifikation eines System/Software die tatsächlichen Anforderungen umfassend und zutreffend dokumentiert. Wesentliche Gesichtspunkte: In welcher Form ist die Spezifikation gegeben. Mit welchen Mittel und welchem Anspruch wird die Validierung durchgeführt:! Informell: Review, Inspektion! Stichprobenartig: Test, Szenarien! Formal: Formale Verifikation relevanter Eigenschaften Manfred Broy 31 Herausforderung: Modellierung Architektur System Dekomposition/Komposition Hierarchie Komponenten! Rollen! Interaction! Schnittstellenverhalten Nichtfunktionale Aspekte! Performanz! Zuverlässigkeit Architekturvalidierung und -bewertung Aspekt-orientierte Sichten auf Architekturen Manfred Broy 32
Zuverlässigkeit Zuverlässigkeit: Eigenschaft eines Systems unter festgelegten Rahmenbedingungen eine bestimmte Funktionalität zu erbringen Wie Zuverlässigkeit messen?! Mean Time to Failure / Mean Time to Repair! Verfügbarkeit (Qualitativ - Quantitativ) Wie bestimmte Funktionalität und festgelegte Rahmenbedingungen konkretisieren! Schnittstellenspezifikation Nutzersicht! Modellierung der Systemumgebung Korrektheit: Eigenschaft eines Systems eine Spezifikation zu erfüllen Manfred Broy 33 Zusammenfassung: Softwareintensität und seine Folgen Softwareumfang wird weiter fortschreiten - mit weitreichenden Konsequenzen und Herausforderungen für die Automobilindustrie Weitere Funktionen Höhere Vernetzung Herausforderung: Systeme beherrschen Bessere Entwicklungsmethoden Kompetenzprofil der Firmen schärfen! Prozesse! Modelle Manfred Broy 34