AUTOSAR

Im Laufe der letzten Jahre hat sich AUTOSAR in vielen Entwicklungsprojekten zu einem bedeutenden Standard entwickelt. Mit seinem standardisierten Ansatz Softwarekomponenten und deren Schnittstellen zu beschreiben versucht AUTOSAR eine ganze Reihe aktueller Herausforderungen zu adressieren. Hierzu zählen die stetig zunehmende Komplexität von Softwaresystemen oder die damit verbundene Zunahme von Team- bzw. unternehmens-übergreifender Kollaboration. Die klare Architekturbeschreibungssprache sowie die eindeutig definierte Semantik auf Implementationsebene helfen zusätzlich dabei verschiedene Empfehlungen des ISO 26262 Standards umzusetzen. Das modulare und Hardware-unabhängige Software Architektur-Konzept erleichtert zudem die Wiederverwendbarkeit von bereits getesteten Softwarekomponenten.

Insbesondere in modellbasierten Entwicklungsprojekten in Kombination mit automatisierten Seriencodegeneratoren hat sich der Einsatz von AUTOSAR als gängige Praxis etabliert. Ein Grund dafür ist sicherlich, dass Codegeneratoren wie dSPACE TargetLink in der Lage sind automatisch Rahmenmodelle auf Grundlage von Architekturbeschreibungen zu erstellen.

AUTOSAR mit dSPACE TargetLink und BTC EmbeddedTester testen

Die Kombination von AUTOSAR und modellbasierter Entwicklung bringt im Hinblick auf das Testen von Modellen und Code neben vielen Vorteilen auch einige Herausforderungen mit sich. Insbesondere lässt sich die Semantik von AUTOSAR Mechanismen wie Client-Server-Kommunikation oder RTE-Statusinformationen nur über Umwege auf Modellierungssprachen wie Simulink abbilden und dort testen. Außerdem werden auf Code-Ebene Schnittstellen als sogenannte RTE-Makros implementiert und unterscheiden sich dadurch aus Test-Sicht von nicht-AUTOSAR Schnittstellen. 

Zusammen mit dSPACE TargetLink erkennt BTC EmbeddedTester solche speziellen AUTOSAR Schnittstellen automatisch und ist in der Lage diese auf Modell- und Codeebene korrekt zu interpretieren und weiterzuverarbeiten. Der hierarchische Test-Ansatz des EmbeddedTesters ist in diesem Zusammenhang ebenfalls hilfreich, da somit Runnables innerhalb einer Software-Komponente problemlos einzeln getestet werden können.