AUTOSAR_AP_TPS_ManifestSpecification
FIG-60c5bc97828a2796
738 × 202 px
1 Release(s)
Figure 5.18: Modeling of the diagnostic validation mapping
SHA-256 Inhalts-Fingerabdruck:
60c5bc97828a27963794727b8b4919b6358e54f8228a7d0995b699e5347198cc
✦
KI-generierte Bildanalyse & technische Beschreibung
Modell: gemini-3.8-flash (via agy) · Rezept figure-series@1 · erstellt am 2026-10-08
1. Diagrammtyp & Architektur-Kontext
- Klassifikation: AUTOSAR-Metamodell-Ausschnitt (UML-Klassendiagramm) der Adaptive Platform (
AUTOSAR_TPS_ManifestSpecification). - Technischer Zweck: Modellierung des Mappings zwischen der deklarativen Diagnosekonfiguration (Diagnostic Management /
ara::diag) und den Softwarekomponenten einer konkreten Applikation. - Funktionale Einordnung: Verknüpft die softwareunabhängige Definition der Service-Validierung (
DiagnosticServiceValidationInterface) mit dem Prozesskontext (ProcessDesign) und dem konkreten Bereitstellungs-Port (PPortPrototype) innerhalb eines Executables. Dient dem Diagnostic Daemon als Konfigurationsgrundlage zur Laufzeitprüfung eingehender UDS-Service-Requests (Validierung von Session-, Sicherheits- oder Umgebungsbedingungen vor Serviceausführung).
2. Komponenten, Entitäten & Schnittstellen
Metaklassen der Schnittstellenseite (Links)
PortInterface(Spezialisierung vonARElement,AtpBlueprint,AtpBlueprintable,AtpType): Abstrakte Basisklasse aller AUTOSAR-Port-Schnittstellen.DiagnosticPortInterface: Spezialisierte Schnittstellenklasse für Diagnosezwecke, abgeleitet vonPortInterface.DiagnosticServiceValidationInterface: Konkrete Spezifikation der Validierungsschnittstelle (abgeleitet vonDiagnosticPortInterface). Definiert die Methoden/Signaturen, über die eine Applikation die Zulässigkeit diagnostischer Anfragen bestätigt oder ablehnt.PPortPrototype(Spezialisierung vonAbstractProvidedPortPrototype): Definiert den konkreten Bereitstellungs-Port (Provided Port) einer Software-Komponente.- Stereotyp
«isOfType»: Typisiert den Port über die Assoziation+providedInterface[0..1]{redefines atpType}gegenPortInterface(hier konkretisiert alsDiagnosticServiceValidationInterface).
- Stereotyp
Metaklassen der Mapping- & Prozessseite (Rechts)
Process(Spezialisierung vonAbstractExecutionContext): Repräsentiert die OS-Prozessinstanz zur Laufzeit. Referenziert über+design[0..1] das zugehörigeProcessDesign.ProcessDesign(ARElement): Deklarative Entwurfsdefinition des Prozesses vor dem finalen Deployment auf eine Machine.DiagnosticSwMapping(abgeleitet vonDiagnosticMapping): Basisklasse für Mappings von Diagnoseartefakten auf Software-Elemente.DiagnosticServiceValidationMapping(abgeleitet vonDiagnosticSwMapping): Zentrales Mapping-Element.- Assoziation
+process[0..1] mit Stereotyp«atpSplitable»: Verweist auf dasProcessDesign. Ermöglicht ARXML-Split (Aufteilung über mehrere Manifest-Dateien/Autorengrenzen hinweg). - Zielgerichtete Abhängigkeit
+pPortPrototypeInExecutable[0..1] mit Stereotypen«instanceRef,atpUriDef»: Definiert die URI-basierte Instanzreferenz auf den konkretenPPortPrototypeim Kontext des Executables.
- Assoziation
3. Dynamisches Verhalten & Sequenzablauf
Das Diagramm selbst modelliert statische Manifest-Zusammenhänge; die daraus resultierende Laufzeitsequenz gestaltet sich wie folgt:
- Request-Eingang: Der
ara::diag-Daemon empfängt eine UDS-Service-Anfrage (z. B. RoutineControl$31, WriteDataByIdentifier$2Eoder DiagnosticSessionControl$10). - Validierungs-Lookup: Der Daemon ermittelt anhand des
DiagnosticServiceValidationMapping, welcher Prozess (Process) und welcher Port (PPortPrototype) für die Validierung des angeforderten Services zuständig ist. - IPC-Call: Der Daemon ruft synchron oder asynchron über die generierten Service-Schnittstellen (
DiagnosticServiceValidationInterface) die Validierungsmethode der Applikation auf. - Entscheidung & Rückmeldung:
- Positiv: Applikation bestätigt die Ausführbarkeit (
NRC 0x00/ Success) → Service-Handler führt die eigentliche Diagnosefunktion aus. - Negativ: Applikation liefert einen Negative Response Code (NRC, z. B.
$22ConditionsNotCorrect oder$33SecurityAccessDenied) → Daemon bricht die Kette ab und sendet die NRC-Antwort direkt an den Diagnosetester.
- Positiv: Applikation bestätigt die Ausführbarkeit (
4. Normative Relevanz & Entwickler-Hinweise
- Manifest-Generierung & ARXML-Splitting (RS_MANI_00005, RS_MANI_00061):
- Durch
«atpSplitable»an+processkann das Diagnose-Mapping in separaten Diagnose-Beschreibungsdateien gepflegt werden, unabhängig vom Prozess-Design-Manifest des Basis-Integrators. «instanceRef,atpUriDef»erfordert eine lückenlose und konsistente Pfadangabe (URI) zur Auflösung desPPortPrototypeüber die HierarchieRootSwComponentPrototype→SwComponentPrototype→PPortPrototypeinnerhalb des Ziel-Executable.
- Durch
- Applikations-Entwicklung (
ara::diag):- Entwickler müssen eine Klasse implementieren, die von der aus dem
DiagnosticServiceValidationInterfacegenerierten Basisklasse erbt. - Methoden müssen strikt echtzeit- und reentrant-fähig sein, da Verzögerungen bei der Validierung unmittelbar zu UDS-Timeout-Überschreitungen (P2/P2*-Timer) führen.
- Entwickler müssen eine Klasse implementieren, die von der aus dem
- Konfigurations-Restriktionen:
- Kardinalität
0..1: Ist keinDiagnosticServiceValidationMappingfür einen Dienst konfiguriert, führt der Daemon standardmäßig keine anwendungsspezifische Vorab-Validierung durch; die Validierungslogik verbleibt dann zwingend im regulären Service-Handler.
- Kardinalität
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.