Big Data im Automotive-Umfeld
CARMEN (Car Measurement Environment) ist die Monitoring Software innerhalb der BMW AG zur Erfassung und Auswertung von Daten in Fahrzeugbussystemen. Seit über 5 Jahren sind wir im Auftrag der BMW AG federführend in der Konzeption und Entwicklung dieser Software tätig.
CARMEN unterstützt dabei sowohl Live-Messungen am Fahrzeug als auch die Offline-Auswertung der Fahrzeugbuskommunikation der BMW Marken BMW, Mini und Rolls Royce. Dabei werden alle gängigen Bussyteme wie CAN, Most, FlexRay und neuerdings Ethernet sowie zahlreiche Lese- und Schreibformate unterstützt. Die Bus Kommunikation in Fahrzeugen ist in den vergangenen Jahren massiv angestiegen. Dieser Trend wird sich in Zukunft fortsetzen (Infotainment, komplexe Sensoren und Kameras für automatisiertes Fahren). Big Data oder Ethernet im Fahrzeug sind in der Entwicklung von CARMEN berücksichtigt, um Zukunftssicherheit zu gewährleisten.
Während die meisten der rund 3.000 Nutzer die Grundfunktionen (Traceanalyse und Visualisierung) nutzen, gibt es eine Vielzahl von Experten-Modulen die maßgeschneidert für die Bedürfnisse von bestimmten Nutzergruppen entwickelt werden.
Welchen Mehrwert bietet Carmen den Nutzern?
CARMEN unterstützt die Entwicklungsingenieure der BMW AG in der Forschung und Entwicklung die Vielzahl an Daten zu strukturieren, zu filtern, zu visualisieren und zu analysieren. So können beispielsweise Fehlerquellen in Steuergeräten schnell identifiziert oder unterschiedliche Dateiformate konvertiert werden.
Die Python Automatisierung von CARMEN ermöglicht zudem große Zeiteinsparungen bei wiederkehrenden Aufgaben. Die Software erlaubt den BMW Entwicklungsingenieure und deren Zulieferern komplexe Analysen der Buskommunikation im Fahrzeug. Durch den modularen Aufbau werden wichtige Softwarepakete auch anderen Projekten bei der BMW AG als API zur Verfügung gestellt. Synergien innerhalb der BMW AG werden so gefördert. Die Software wird zudem auch den Zulieferern zur Verfügung gestellt. So wird eine höhere Effizienz bei der Absicherung der Steuergeräteentwicklung und der Kommunikation zwischen allen Beteiligten ermöglicht.

Big Data
CARMEN (Car Measurement Environment) ist die Monitoring Software innerhalb der BMW AG zur Erfassung und Auswertung von Daten in Fahrzeugbussystemen. Seit über 5 Jahren sind wir im Auftrag der BMW AG federführend in der Konzeption und Entwicklung dieser Software tätig.
CARMEN unterstützt dabei sowohl Live-Messungen am Fahrzeug als auch die Offline-Auswertung der Fahrzeugbuskommunikation der BMW Marken BMW, Mini und Rolls Royce. Dabei werden alle gängigen Bussyteme wie CAN, Most, FlexRay und neuerdings Ethernet sowie zahlreiche Lese- und Schreibformate unterstützt. Die Bus Kommunikation in Fahrzeugen ist in den vergangenen Jahren massiv angestiegen. Dieser Trend wird sich in Zukunft fortsetzen (Infotainment, komplexe Sensoren und Kameras für automatisiertes Fahren). Big Data oder Ethernet im Fahrzeug sind in der Entwicklung von CARMEN berücksichtigt, um Zukunftssicherheit zu gewährleisten.
Während die meisten der rund 3.000 Nutzer die Grundfunktionen (Traceanalyse und Visualisierung) nutzen, gibt es eine Vielzahl von Experten-Modulen die maßgeschneidert für die Bedürfnisse von bestimmten Nutzergruppen entwickelt werden.

Welchen Mehrwert bietet Carmen den Nutzern?
CARMEN unterstützt die Entwicklungsingenieure der BMW AG in der Forschung und Entwicklung die Vielzahl an Daten zu strukturieren, zu filtern, zu visualisieren und zu analysieren. So können beispielsweise Fehlerquellen in Steuergeräten schnell identifiziert oder unterschiedliche Dateiformate konvertiert werden.
Die Python Automatisierung von CARMEN ermöglicht zudem große Zeiteinsparungen bei wiederkehrenden Aufgaben. Die Software erlaubt den BMW Entwicklungsingenieure und deren Zulieferern komplexe Analysen der Buskommunikation im Fahrzeug. Durch den modularen Aufbau werden wichtige Softwarepakete auch anderen Projekten bei der BMW AG als API zur Verfügung gestellt. Synergien innerhalb der BMW AG werden so gefördert. Die Software wird zudem auch den Zulieferern zur Verfügung gestellt. So wird eine höhere Effizienz bei der Absicherung der Steuergeräteentwicklung und der Kommunikation zwischen allen Beteiligten ermöglicht.
We love it - when it's handmade!
Durch unseren stetigen und engen Austausch mit unseren Anwendern reagieren wir schnell und flexibel auf neue Anforderungen und Featurewünsche. Wir decken den kompletten Softwareentwicklungsprozess vom Requirements Engineering über die Implementierung, das Testing, den Kundensupport bis hin zur Anwenderschulung für verschiedene Nutzergruppen aus einer Hand ab.
Dies ist für uns die Voraussetzung und entspricht unserem Anspruch eine qualitativ herausragende Lösung maßzuschneidern. Bedienungsabläufe und Funktionalitäten orientieren sich an den tatsächlichen Arbeitsweisen der Nutzer.
Herausforderungen
Das Projekt CARMEN wurde 2002 initiert und kann als Langläufer bezeichnet werden. Die Herausforderung für uns bestand in der Übernahme des Legacy Codes. Wir haben eine unterbrechungsfreie Fortführung der Softwareentwicklung gewährleistet, bei gleichzeitigem kontinuierlichen Refactoring aller von uns bearbeiteten Module.
Die hohe Komplexität führt in diesem Projekt zu einem stetigen Betrachten der Softwarearchitektur. Dies führte zu einer hohen Modularisierung unserer Software und der Integration eines ausgefeilten Plugin Konzeptes. Damit konnten wir die Komplexität auf Bausteine reduzieren und diese damit einzeln nutzbar gestalten. CARMEN kann heute mit Plugins umgehen, die vor 10 Jahren erstellt wurden.
Ein weiteres Augenmerk unserer Software liegt auf der Formatkonvertierung von Trace- bzw. Logdateien. Dabei bieten wir einen Betriebsmodus, der ein Höchstmaß an Performance und Stabilität bei der Umwandlung herstellerspezifischer Logdateiformate (Telemotiv, Xoraya, Vigem uvm.) in gängige Austauschformate (Vector Binär, Vector ASCII, KML, uvm.) erlaubt.
Teamstruktur
Im Carmen-Projekt arbeiteten wir in folgender Zusammensetzung:
- 4 C++-Entwickler
- 4 Software-Tester
- 1 Werkstudent