DEENESPTFRRUARHIKOZHNL
AUTOSAR_AP_EXP_ARAComAPI FIG-02ba3900e9f20d06 1172 × 666 px 10 Release(s)

Figure 7.6: meta-model to Implementation

SHA-256 Inhalts-Fingerabdruck: 02ba3900e9f20d06533102bceb0932287cd911a2a61fd88f51662f1b9fd0b58a
✦ 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: Abstraktions- und Transformationsmodell (Mapping-Diagramm zwischen AUTOSAR-Metamodell-Ebene und C++-Implementierungsebene).
  • Technischer Zweck: Visualisierung des modellgetriebenen Entwicklungsflusses (MDD) in der AUTOSAR Adaptive Platform (ara::com). Es überführt formale Manifest-Modellelemente (SoftwareComponentType, PortPrototype, ServiceInterface) in konkrete C++14/17-Artefakte (Proxy-/Skeleton-Architekturmuster) und deren Laufzeitinstanziierung.

2. Komponenten, Entitäten & Schnittstellen

Metamodell-Ebene (meta model level / ARXML-Manifeste)
  • ServiceInterface (RadarService): Kontrakt-Definition von Methoden, Events und Feldern (Serviceschnittstelle).
  • SoftwareComponentType A: Konsumierende Software-Komponente (konkretisiert als AdaptiveApplicationSwComponentType).
    • R-Port (Name: radarservice): RPortPrototype, typisiert über Beziehung is of type auf das ServiceInterface RadarService. Signalisiert Service-Bedarf (Required).
  • SoftwareComponentType B: Bereitstellende Software-Komponente.
    • P-Port (Name: Radar): PPortPrototype, typisiert über Beziehung is of type auf das ServiceInterface RadarService. Signalisiert Service-Bereitstellung (Provided).
Implementierungs-Ebene (Implementation level / C++-Code)
  • Generierte C++-Klassen (Codegenerator-Output basierend auf Service-Manifest):
    • RadarService Proxy Class: Client-seitige Abstraktion (ara::com-Proxy), abgeleitet via generated from aus dem RadarService für Konsumenten.
    • RadarService Skeleton Class: Server-seitige Basisklasse (ara::com-Skeleton), abgeleitet via generated from aus dem RadarService für Provider.
  • Laufzeit-Instanzen (Applikations-Prozessraum):
    • Implementation of SoftwareComponentType A: Applikations-Code des Service-Konsumenten. Instanziiert die RadarService Proxy instance, parametrisiert mit InstanceId: radarservice (abgebildet aus dem zugehörigen R-Port).
    • Implementation of SoftwareComponentType B: Applikations-Code des Service-Providers. Instanziiert die RadarService Skeleton instance, parametrisiert mit InstanceId: Radar (abgebildet aus dem zugehörigen P-Port).

3. Dynamisches Verhalten & Sequenzablauf

Statische Zuordnungsansicht ohne temporale Sequenzachse. Der daraus resultierende Laufzeit- und Instanziierungsablauf gliedert sich wie folgt:

  1. Design-/Generierungszeit: Der AUTOSAR-Codegenerator parst das ServiceInterface (RadarService) und erzeugt typsichere C++-Klassen-Header/Sources (RadarServiceProxy bzw. RadarServiceSkeleton).
  2. Initialisierung Provider (SoftwareComponentType B):
    • Applikation B erzeugt eine Instanz der RadarService Skeleton Class unter Angabe des Instanzbezeichners (InstanceId: Radar bzw. ara::com::InstanceIdentifier).
    • Aufruf von OfferService() am Skeleton publiziert den Service via Middleware-Binding (z. B. SOME/IP, IPC).
  3. Initialisierung & Discovery Consumer (SoftwareComponentType A):
    • Applikation A startet die Dienstsuche via RadarServiceProxy::StartFindService() / FindService().
    • Nach erfolgreichem Matching bindet die RadarService Proxy instance an die gefundene Instanz (InstanceId: radarservice) zur Methoden-/Event-Kommunikation.

4. Normative Relevanz & Entwickler-Hinweise

  • Generierungsvertrag: Änderungen am ARXML-ServiceInterface erfordern stets die Neuerzeugung von Proxy und Skeleton. Die Schnittstellen-Signatur im C++-Code ist unveränderlicher Bestandteil des API-Vertrags (ara::com).
  • Port-zu-Instanz-Mapping: Port-Namen aus dem Manifest (Name: radarservice, Name: Radar) determinieren die Konfiguration der InstanceIdentifier bzw. die Bindung im Execution- und Service-Instance-Manifest (ServiceInstanceToPortPrototypeMapping).
  • Skeleton-Implementierung: Applikationsentwickler von Component B müssen vom generierten Skeleton erben und die rein virtuellen Methoden des Interfaces implementieren.
  • Thread-Safety & Lebenszyklus: Instanzen von Proxy und Skeleton unterliegen RAII. Die Zerstörung des Skeletons muss zwingend mit StopOfferService() synchronisiert sein, um Deadlocks oder Invocations auf freigegebenem Speicher zu unterbinden.

Versionsvergleich KI-generiert · gemini-3.8-flash (via agy)

R18-03_R1.4.0 → R18-10-1 keine inhaltliche Änderung Vorgänger: FIG-e70ca96b702dde73

Keine inhaltlichen Änderungen erkennbar.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

Implementation of SoftwareComponentType A | RadarService Proxy instance | Implementation of SoftwareComponentType B | RadarService Skeleton instance | InstanceId: Radar InstanceId: radarservice | RadarService | Proxy Class | RadarService Skeleton Class | SoftwareComponentType A | R-Port | SoftwareComponentType B | P-Port | Service Interface RadarService | is of type is of type | Name: Radar | generated from | Name: radarservice | generated from | meta model level Implementation level

Vorkommen in AUTOSAR-Releases (15)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R18-10_R4.4.0_R1.5.0 AUTOSAR_EXP_ARAComAPI S. 106 8.6 Figure 8.6: meta-model to Implementation
R18-10_R4.4.0_R1.5.0 AUTOSAR_EXP_ARAComAPI S. 106 8.6 Figure 8.6: meta-model to Implementation
R18-10-1 AUTOSAR_EXP_ARAComAPI S. 106 8.6 Figure 8.6: meta-model to Implementation
R19-03 AUTOSAR_EXP_ARAComAPI S. 106 8.6 Figure 8.6: meta-model to Implementation
R19-03 AUTOSAR_EXP_ARAComAPI S. 106 8.6 Figure 8.6: meta-model to Implementation
R19-11 AUTOSAR_EXP_ARAComAPI S. 108 9.6 Figure 9.6: meta-model to Implementation
R20-11 AUTOSAR_EXP_ARAComAPI S. 114 9.6 Figure 9.6: meta-model to Implementation
R20-11 AUTOSAR_EXP_ARAComAPI S. 114 9.6 Figure 9.6: meta-model to Implementation
R21-11 AUTOSAR_EXP_ARAComAPI S. 114 9.6 Figure 9.6: meta-model to Implementation
R21-11 AUTOSAR_EXP_ARAComAPI S. 114 9.6 Figure 9.6: meta-model to Implementation
R22-11 AUTOSAR_EXP_ARAComAPI S. 139 7.6 Figure 7.6: meta-model to Implementation
R23-11 AUTOSAR_AP_EXP_ARAComAPI S. 131 7.6 Figure 7.6: meta-model to Implementation
R23-11 AUTOSAR_AP_EXP_ARAComAPI S. 131 7.6 Figure 7.6: meta-model to Implementation
R24-11 AUTOSAR_AP_EXP_ARAComAPI S. 135 7.6 Figure 7.6: meta-model to Implementation
R25-11 AUTOSAR_AP_EXP_ARAComAPI S. 119 7.6 Figure 7.6: meta-model to Implementation