Softwareentwicklung mit AUTOSAR

Ähnliche Dokumente
Inhaltsverzeichnis. Teil I. 1.1 Was verbirgt sich hinter AUTOSAR? Zum Aufbau des Buches... 4

Abkürzungen. Kapitel 1 - Einleitung Stand der Automobilelektronik Historische Entwicklung Gegenwärtige Probleme 2

AUTOSAR. Robert Neue. PG AutoLab Seminarwochenende Oktober AutoLab

Einführung. ECU-übergreifende Funktionen nehmen immer mehr zu! z.b. bei Fahrerassistenz-Systemen

Entwicklungsbegleitende Verifikation von AUTOSAR Steuergerätefunktionen auf Basis einer Test-RTE und SiL-Simulation

Model Driven Architecture

innovation made by talents AUTOSAR - Marktstudie zur Umsetzung in Forschung und Entwicklung im Automobilsektor Studie INVENSITY GmbH

- Ein Überblick. Agenda

2 Softwarearchitektur in der Organisationsstruktur 25

Sanfte. Gurte. bringt Gurtstraffer auf den AUTOSAR-Weg. dspace Magazin 1/2011 dspace GmbH, Paderborn, Germany

Effektive Software-Architekturen Ein praktischer Leitfaden

Methodik. zur prozessübergreifenden Integration. der Digitalen Fabrik. der Rechts- und Wirtschaftswissenschaftlichen Fakultät

Mit AUTOSAR die Zukunft entwickeln

Inhalt. Mehr Informationen zum Titel. 1 Einführung FDI im Überblick...13

Produktinformation DaVinci Developer

Inhaltsverzeichnis VII

From Cloud to Device. Moderne Softwareentwicklung in der Embedded-Welt. öffentlich

FlexRay und AUTOSAR. Stephan Reichelt, Dr. Karsten Schmidt, Frank Gesele, Nils Seidler, Prof. Dr. Wolfram Hardt

Model Driven Development im Überblick

Fachartikel. Dipl.-Ing. (FH) Martin Hein. Einführung in

Inhaltsverzeichnis. 1 Einleitung 1. 2 Grundlagen von Softwarearchitekturen 11

Systematisches Requirements Engineering

Analyse und Entwurf von Softwaresystemen mit der UML

22. Januar Gruppe 2: TOPCASED

Systematisches Requirements Engineering und Management

Inhaltsübersicht. Abbildungsverzeichnis...XVII. Tabellenverzeichnis... XIX. Abkürzungsverzeichnis... XXI

Bachelorarbeit. Jens Torfstecher. Simulationsbasierte Entwicklung eines AUTOSAR-konformen Steuergerätes

EJB City GmbH ist Ihr Partner dafür!

Potentiale modellgetriebener Softwareentwicklung

Modellgetriebene Entwicklungsprozesse in der Praxis - eine Bestandsaufnahme. Tillmann Schall, anaptecs GmbH

AUTomotive Open System ARchitecture

4 Cybertronische Systeme Definition und Grundlagen Cybertronische Produkte Cybertronische Produktionssysteme...

CARL HANSER VERLAG. Erika Horn, Thomas Reinke. Softwarearchitektur und Softwarebauelemente Eine Einführung für Softwarearchitekten

Das zentrale Werkzeug für kürzere Entwicklungs- und Releasezyklen von software-basierten Kundenfunktionen in der Automobilindustrie

Grundlagen der Wirtschafts informatik

systems landscape engineering - übung -

Einfach generieren. Susanne Klar, Michael Klar. Generative Programmierung verständlich und praxisnah ISBN Inhaltsverzeichnis

Inhaltsverzeichnis. Oliver Alt. Modellbasierte Systementwicklung mit SysML ISBN: Weitere Informationen oder Bestellungen unter

Kompendium der Web-Programmierung

Software - Automatisierung

Vorlesung Automotive Software Engineering Teil 7 Normen und Standards (1-1)

Modellgetriebene Softwareentwicklung: Zusammenfassung und Ausblick. 7. Februar 2013

Inhaltsverzeichnis. 1 Einleitung... 1

windream SDK Einfache System-Erweiterungen und Software-Integrationen mit windream

Moderne Softwarearchitektur

Modellbasierte Funktionsentwicklung für Komfortsteuergeräte

Herausforderungen bei der Entwicklung multifunktionaler Steuergeräte aus OEM-Sicht

Aufbau eines modernen Betriebssystems (Windows NT 5.0)

Für den Zulieferer ergibt sich durch AUTOSAR vor. Der Weg zu AUTOSAR

SERVICEORIENTIERTE KOMMUNIKATION MIT IP UND ETHERNET MARKUS BECHTER

Modell-basierte Entwicklung mit der Timing Definition Language (TDL)

SICHERES TESTEN MIT POLARION. Frank Ziesel

SOLID für.net und JavaScript

DOORS Schema IBM Rational DOORS Start-Up Training - Teil 3

LieberLieber Software GmbH UML, SysML und AUTOSAR erfolgreich kombinieren und gemeinsam einsetzen

Berichte aus der Betriebswirtschaft. Harald Augustin (Hrsg.) Management virtueller, internationaler Teams

Inhaltsverzeichnis. Effektive Softwarearchitekturen (6. Auflage)

Integration im Enterprise Umfeld

Teil A Ergebnisse und Bewertung Ergebnisse Erkenntnistheoretische Betrachtung Kosten-/Nutzenbetrachtung...

Objektorientierte Systementwicklung

Inhaltsverzeichnis Einführung und Überblick

Vorwort. 1 Einleitung Wer sollte dieses Buch lesen? Wie geht es weiter? Webseite zum Buch 4. Teil I: Grundlagen 5

Inhaltsverzeichnis. Gernot Starke. Effektive Softwarearchitekturen. Ein praktischer Leitfaden ISBN:

Entwicklung einer sensorlosen Motorregelung für Dentalbohrer nach IEC Dr. Michael Schwarz

Corporate Performance Management mit Business Intelligence Werkzeugen

Seminar Softwareentwicklung in der Wissenschaft

Anwendungsentwicklung mit Enterprise SOA

[Hier klicken und Text eingeben] [Hier klicken und Text eingeben] Auftragsnummer: [Hier klicken und Text eingeben] Auftragnehmer:

Anlage zur Akkreditierungsurkunde D-PL nach DIN EN ISO/IEC 17025:2005

Inhaltsverzeichnis. Mehr Informationen zum Titel. Dank... V Geleitwort... IX Geleitwort... XI Vorwort... XIII

Entwurf einer Softwarearchitektur für dezentrale mikrocontrollerbasierte Steuerungssysteme

Design-Build-Run smarte Lösungen aus einer Hand

Jochen Ludewig Horst Lichter. Software Engineering. Grundlagen, Menschen, Prozesse, Techniken. dpunkt.verlag

11. Komponenten Grundlagen der Programmierung 1 (Java)

Carsten Lücke. Stakeholder-orientierte Unternehmensarchitekturmodellierung - Konzeption, Entwurf und Anwendung des ASTEAM-Ansatzes

Regelbasierte Entwicklung betrieblicher Informationssysteme

DWH Automation - Steigerung von Qualität, Effektivität und Transparenz in der DWH Implementierung und dem Betrieb. Referent: Raphael Henneke

Modellgetriebene Softwareentwicklung

Warum Sie dieses Buch lesen sollten Autorenverzeichnis Teil 1 Die agile Produktentwicklung - Menschen größer machen

Inhaltsverzeichnis. Teil I Grundlagen 1

Qualität und Diagnose in automotiven Softwaresystemen. Fahrzeugelektronik im Fokus BadenBaden Spezial 18. Oktober 2006, BadenBaden

Spezifikation und Analyse von 3D-Constraints im E-Commerce für den Anlagen- und Maschinenbau (Emmet Software Labs GmbH & Co. KG)

Software Engineering

Automotive Software Engineering

Werkzeugunterstützung für UML Profiles. Verteidigung des Großen Belegs Andreas Pleuß

Testen von SOA-Anwendungen mit dem BPEL Testframework

Scrum Embedded. Scrum Embedded. Besonderheiten agiler Entwicklung von Embedded-Systemen. MicroConsult - Microelectronics Consulting & Training GmbH

0 IP C. Architecture. Von Data Access bis Unified. Jürgen Lange Frank Iwanitz Thomas J. Burke. 4., völlig neu bearbeitete und erweiterte Auflage

Semantische Netze zur Erfassung und Verarbeitung von. Informationen und Wissen in der Produktentwicklung

Logo in neuer Logosystematik einfügen: Bewertung der Softwarequalität eines bestehenden Softwaresystems an Hand von

Modell zur Einflussanalyse Ein Modell zur Einflussanalyse von Methodenänderungen in Entwicklungsprozessen

Management Hardware Software

MDA-Praktikum, Einführung

Software-Engineering im Sommersemester 2014

Modul Software Komponenten 01 Komponenten

Simcenter Symposium Oktober Virtuelle Integration und iteratives Design durch native Kopplung

Ziele und Tätigkeiten von Architekten

Realtime Studio Professional. ARTiSAN. Eine Visuelle Softwareentwicklungsumgebung zur Erstellung von Echtzeitanwendungen

Transkript:

Olaf Kindel Mario Friedrich Softwareentwicklung mit AUTOSAR Grundlagen, Engineering, Management in der Praxis Пм dpunkt.verlag

vii I Inhaltsverzeichnis 1 Einleitung 1 1.1 Was verbirgt sich hinter AUTOSAR? 3 1.2 Zum Aufbau des Buches 4 Teill Grundlagen 2 Softwarearchitektur in der Fahrzeugentwicklung 9 2.1 Softwarearchitektur oder Systemarchitektur? 9 2.2 Was ist überhaupt Architektur? 11 2.3 Architektur in der Softwaretechnik 13 2.3.1 Anforderungstypen 16 2.3.2 Abgrenzung zur Systemarchitektur 19 2.3.3 Konzepte über alles 19 2.4 Abstraktion erzeugen 21 2.4.1 Umgang mit Abstraktion 22 2.4.2 Domänenspezifische Datentypen 24 2.4.3 Architektursichten 24 2.5 Ein System partitionieren 26 2.5.1 Separation of Concerns 26 2.5.2 Lokale und globale Kompliziertheit ausbalancieren 30 2.5.3 Schichtenarchitekturen 31 2.5.4 Komponentenarchitekturen 32 2.5.5 Das KISS-Prinzip 33

viii Inhaltsverzeichnis 3 Motive für den Einsatz von AUTOSAR 35 3.1 Der Mythos der stabilen Anforderung 35 3.2 Architektur und Risikomanagement 37 3.3 Komplexität und Zuverlässigkeit 39 3.4 Hardwareunabhängigkeit fördern 40 3.5 Steuergerätezentrierte und funktionsorientierte Sicht 41 3.6 Wiederverwendung von Komponenten 42 3.7 Hilfe für die Systemintegratoren 43 3.7.1 Schnittstellenaustausch 43 3.7.2 Basissoftware 43 3.8 Qualitative Aspekte 44 4 AUTOSAR im Detail 47 4.1 Ziele 47 4.2 Schwerpunkte 49 4.3 Organisation 50 4.3.1 Struktur 50 4.3.2 Mitglieder 51 4.4 Geltungsbereich 53 4.5 Standardkontext 53 4.5.1 Am Beispiel JasPar 54 4.5.2 Am Beispiel HIS 55 4.6 Zeitliche Einordnung 57 4.6.1 Release 1.0»proof of concept«58 4.6.2 Release 2.0»RTE und Konfiguration«58 4.6.3 Release 2.1»Abrundung«58 4.6.4 Release 3.0»Weiterentwicklung«58 4.6.5 Release 3.1»OBD-II«59 4.6.6 Zukünftige Releases 59 4.6.7 Erreichter Reifegrad 59 4.7 Einsatzmöglichkeiten von AUTOSAR 59 4.7.1 Tief eingebettete Automotivsysteme 59 4.7.2 Nicht im Fokus des Standards 62 4.7.3 Weitere potenzielle Einsatzgebiete 63 4.7.4 Rechtliche Aspekte 63

Inhaltsverzeichnis 4.8 Grundlegende Begriffe 64 4.8.1 Methodology 64 4.8.2 Virtual Functional Bus (VFB) 65 4.8.3 Software Component (SW-C) 65 4.8.4 Port 65 4.8.5 Port Interface (Interface) 65 4.8.6 Runnable Entity (Runnable) 66 4.8.7 Run-Time Environment (RTE) 66 4.9 Die Spezifikation 61 4.9.1 Struktureller Aufbau: Kategorien, Verzeichnisse und Dateinamen 61 4.9.2 Inhaltlicher Aufbau: Einstiegspunkte und weitere Orientierung 68 4.9.3 Aufbau der Softwarespezifikationen: Effektiv Informationen ermitteln 70 Teil II Engineering 5 Die AUTOSAR-Methodik 75 5.1 Was ist die AUTOSAR-Methodik? 75 5.2 Grafische Notation 76 5.2.1 Bezugnahme auf Elemente des AUTOSAR-Metamodells (Reference to elements of the meta model) 77 5.2.2 Aktivität (Activity) 77 5.2.3 Unterstützung/Führung (Guidance) 78 5.2.4 Fluss von Arbeitsprodukten (Flow of Work Products) 78 5.2.5 Abhängigkeit (Dependency) 78 5.2.6 Komposition/Zusammenstellung (Composition) 79 5.3 Grundlegender Ablauf 79 5.4 Erläuterung wichtiger Konfigurationsschritte 81 5.4.1 Systemkonfiguration 81 5.4.2 ECU-Konfiguration 82 5.5 Aufteilung zwischen den beteiligten Parteien 83 6 Die Systemsicht/der Virtual Functional Bus 85 6.1 Einordnung entsprechend der AUTOSAR-Methodik 85 6.2 Virtual Functional Bus (VFB) 86

x Inhaltsverzeichnis 6.3 Grafische Notation 87 6.3.1 Softwarekomponente (Component) 88 6.3.2 Anwendungssoftwarekomponente (Application Software Component) 88 6.3.3 Atomare Softwarekomponente (Atomic Software Component) 88 6.3.4 Komposition (Composition) 89 6.3.5 Sensor/Aktor-Softwarekomponente (Sensor/Actuator Software Component) 89 6.3.6 Runnable Entity (Runnable) 90 6.3.7 Ports 91 6.3.8 Port Interface (Interface) 93 6.3.9 Assembly Connector (Connector) 93 6.4 Beispiel: Warnblinkfunktion aus VFB-Sicht 94 6.4.1 Übersicht 94 6.4.2 Detailbetrachtungen 95 7 Kommunikationsmechanismen 99 7.1 Einordnung entsprechend der AUTOSAR-Methodik 99 7.2 Kommunikation zwischen Softwarekomponenten 100 7.3 Sender/Receiver 101 7.3.1 Multiplizität 101 7.3.2 Explizit 102 7.3.3 Implizit 104 7.4 Client/Server 105 7.5 Events 107 7.6 Einschränkungen 108 7.6.1 Runnable-Aktivierungsmöglichkeiten 108 7.6.2 Empfangsmechanismen und Runnable-Kategorien 109 7.7 Kommunikation in Softwarekomponenten 109 7.8 Beispiele 111 7.8.1 Explizite Sender/Receiver-Kommunikation mit Datensemantik 111 7.8.2 Client/Server-Kommunikation 114

Inhaltsverzeichnis 8 Die Steuergerätesicht (ECU-Sicht) 117 8.1 Einordnung entsprechend der AUTOSAR-Methodik 117 8.2 Aktivitäten 118 8.3 Die AUTOSAR-Schichtenarchitektur (AUTOSAR Layered Software Architecture) 118 8.3.1 Anwendungssoftware (Application Layer) 119 8.3.2 AUTOSAR Runtime Environment (RTE) 119 8.3.3 Die Generierung der RTE 120 8.4 Basissoftware (Basic Software) 121 8.4.1 Serviceschicht (Services Layer) 121 8.4.2 Steuergeräteabstraktionsschicht (ECU Abstraction Layer) 122 8.4.3 Mikrocontrollerabstraktionsschicht (Microcontroller Abstraction Layer) 122 8.4.4 Complex Device Drivers 123 8.5 Die Architektursymmetrie 123 9 Die Basissoftware 125 9.1 Einordnung der Basissoftware 125 9.2 Aufbau der Basissoftware 126 9.3 Einordnung der Basissoftwaremodule 127 9.4 Funktionale Kurzbeschreibung der Basissoftwaremodule 129 9.4.1 Die Systemdienste 129 9.4.2 Der Geräte-Stack 131 9.4.3 Der Speicher-Stack 132 9.4.4 Der Kommunikations-Stack 134 9.4.5 I/O-Stack 138 9.4.6 Die Complex Device Drivers 139 9.5 Kommunikationsbeziehungen in der Basissoftware 140 9.5.1 Erlaubte Kommunikationsbeziehungen 141 9.5.2 In Ausnahmefällen gestattete Kommunikationsbeziehungen 142 9.5.3 Verbotene Kommunikationsbeziehungen 142 9.6 Implementation Conformance Classes 1-3 143 9.7 Beispiele 145 9.7.1 Das Zusammenspiel von BSW-Modulen im Kommunikations-Stack 145 9.7.2 Das Zusammenspiel von BSW-Modulen im Speicher-Stack 147

I xii Inhaltsverzeichnis 10 Performance - oder»was kostet AUTOSAR?«151 10.1 Ressourcenverbrauch resultiert in Entwicklungsund Herstellungskosten 151 10.2 Kostenoptimierung durch Performance-Optimierung 153 10.2.1 Benchmarking - Ermittlung des Ressourcenbedarfs 153 10.2.2 Angabe des Ressourcenbedarfs 157 10.3 Ressourcenanforderungen an eine AUTOSAR-ECU 157 10.4 Objektorientierung zur Performance-Steigerung 159 10.5 Schlussfolgerungen 164 11 Variantenmanagement 165 11.1 Herangehensweise 165 11.1.1 Softwarebasis analysieren 166 11.1.2 Weiterentwicklung parallelisieren 167 11.1.3 Voraussetzungen schaffen 169 11.2 AUTOSAR ermöglicht Variantenmanagement 169 11.3 Variantenmanagementsysteme einsetzen 170 11.4 Beispiel: Warnblinken und Variantenmanagement 171 11.5 Schlussfolgerung 173 Teil IM Management 12 AUTOSAR kritisch betrachtet 177 12.1 Neue Abhängigkeiten im Entwicklungsprozess 177 12.1.1 Bindung an einen Werkzeughersteller 177 12.1.2 Werkzeugintegration 178 12.1.3 Austauschbarkeit der AUTOSAR-XML-Dateien 178 12.1.4 Releases und Revisions des Standards 179 12.2 Modellierung und Integration 180 12.2.1 Schnittstelle und Semantik 180 12.2.2 Das Problem der Modellierung dynamischer Abläufe... 181 12.2.3 Von der Integrationsnot in die Konfigurationsnot 182 12.2.4 Die Dokumentation einer Konfiguration 182 12.2.5 Das Prinzip der stabilen Abhängigkeit 183 12.2.6 Architekturerosion 184 12.3 Besondere technische Aspekte 184 12.3.1 Sensorfusion 185 12.3.2 Bandbreiten und andere Engpässe 185

Inhaltsverzeichnis xiii I 12.3.3 Dynamik zur Laufzeitt 186 12.3.4 Timing und Multitasking 187 12.3.5 Beliebige Verschiebbarkeit von Komponenten 187 12.4 Verwaltung mit technischem Sachverstand 188 12.5 Anforderungen an den Architekten 189 13 Betriebswirtschaftliche Aspekte 193 13.1 AUTOSAR aus mikroökonomischer Sicht 193 13.2 Der Nutzen von AUTOSAR in der Entwicklung 194 13.3 Wiederverwendung 195 13.3.1 Wiederverwendbarkeit auf Anwendungsebene 196 13.3.2 Schutz des geistigen Eigentums - Intellectual Property... 197 13.3.3 Die Qualität wiederverwendbarer Komponenten 197 13.4 Wiederverwendbarkeit der Basissoftware 198 13.5 Austauschbarkeit 199 13.6 Geschäftsmodelle 199 13.6.1 Modell 1: Entwicklungsdienstleister 199 13.6.2 Modell 2: Software als Gratisbeilage zur Hardware 201 13.6.3 Modell 3: Verkauf fertiger Bibliotheken 201 14 Produktmanagement mit AUTOSAR 203 14.1 Bisherige Situation 203 14.2 Änderung der Randbedingung 204 14.3 Herausforderungen 206 14.3.1 Soft- und Hardware wird leichter austauschbar für OEMs 206 14.3.2 Welche AUTOSAR-Releases müssen unterstützt werden 207 14.3.3 Was bedeutet»autosar-compliant«208 14.3.4 Kompatibilität mit»konventionellen«ecus 208 14.3.5 Änderung des Fokus 209 14.4 Chancen für den Zulieferer 210 14.4.1 Reines Softwareprodukt 211 14.4.2 Softwareteilprodukt 211 14.4.3 Kombiniertes Hard- und Softwareprodukt 212 14.4.4 Anwendungssoftware mit I/O-Hardwareabstraktion 212 14.4.5»Software as a product«213 14.5 Schlussfolgerung 213

xiv Inhaltsverzeichnis 15 Migrationsstrategien für bestehende Projekte 215 15.1 Vorbereitungen 215 15.1.1 Der aktuelle Stand 216 15.1.2 Welche Ziele werden langfristig verfolgt? 216 15.1.3 Welche I/O-Schnittstellen sind betroffen? 217 15.1.4 Die Anforderungsstruktur gerade rücken 218 15.1.5 Basissoftware 218 15.2 Werkzeugsauswahl 219 15.2.1 Ergonomie 219 15.2.2 Angemessenheit für den gedachten Zweck 221 15.2.3 Anpassung an die Arbeitsweise im Team 222 15.2.4 Den Umgang mit dem Werkzeug beherrschen 223 15.2.5 Pilotprojekte müssen wichtig sein 223 15.3 Legacy-Code weiterverwenden 224 15.3.1 Adapter 224 15.3.2 Fassade 225 15.3.3 Schrittweise Migration 225 15.4 Mögliche Wege für ein Migrationsprojekt 226 15.4.1 Basissoftware und Applikation separieren 226 15.4.2 Nur eine neue Basissoftware einführen 227 15.4.3 Zuerst die RTE und die SW-C-Ports 227 15.4.4 Alles als Complex Device Driver 227 15.4.5 Einsatz vertikaler Prototypen 227 15.5 Tipps zum Vorgehen 229 16 AUTOSAR-Konformität 231 16.1 Was ist Konformität 231 16.2 Was bedeutet AUTO SAR-konform 232 16.2.1 Testspezifikation 233 16.2.2 Testdurchführung 235 16.2.3 Was wird getestet? 235 16.2.4 Wie wird getestet? 237 16.2.5 Testabdeckung 238 16.3 Was bringt der Konformitätstest? 239 17 Ausblick-AUTOSAR in der Zukunft 241 17.1 Release 4.0»Conformance Testing«241 17.2 Release 5.0»...«242

Inhaltsverzeichnis xv I Anhang A Nützliche Links 247 A.l Standardlandschaft 247 A.2 AUTOSAR-Toolhersteller 247 В AUTOSAR-Entwicklungspartner 249 B.l Core Partners 249 B.2 Premium Members 249 B.3 Associate Members 251 В.4 Development Members 253 С Abkürzungen 255 D Glossar 259 E BSW-Module 265 Literatur 267 Stichwortverzeichnis 271