AUTOSAR_AP_SWS_LanguageBindingForModeledAPdatatypes
FIG-a9efedb68d6424b7
704 × 438 px
2 Release(s)
Figure 7.3: ApApplicationError - Model View
SHA-256 Inhalts-Fingerabdruck:
a9efedb68d6424b75892d4ebeaf46af38db9550a959308eb08203dcefcaa4230
✦
KI-generierte Bildanalyse & technische Beschreibung
Modell: gemini-3.8-flash (via agy) · Rezept figure-description@2 · erstellt am 2026-10-07
1. Diagrammtyp & Architektur-Kontext
- Klassifikation: UML-Objektdiagramm / Metamodell-Instanzschaubild (M1-Modellebene) gemäß AUTOSAR Adaptive Platform (AP).
- Technischer Zweck & Einordnung: Veranschaulicht die modellgetriebene Spezifikation von Anwendungsfehlern (
ApApplicationError) für serviceorientierte Kommunikation (ara::com) in der SpezifikationAUTOSAR_AP_SWS_LanguageBindingForModeledAPdatatypes. Das Diagramm definiert, wieClientServerOperations innerhalb vonServiceInterfaces über direkte Referenzen und wiederverwendbare Fehlermengen (ApApplicationErrorSet) mit konkreten Fehlern verknüpft und deren Domänen (ApApplicationErrorDomain) zugeordnet werden.
2. Komponenten, Entitäten & Schnittstellen
Entitäten und Attribute
ServiceInterface(M1-Instanzen:ifA,ifB): Definiert die Serviceschnittstelle für Proxy/Skeleton-Generierung. Enthält Operationen vom TypClientServerOperation.ClientServerOperation(Instanzen:ReadX,WriteX,ReadY): Repräsentiert RPC-Methoden.- Attribut:
fireAndForget = false(zwingende Voraussetzung für Application Errors; asynchrone Einweg-Kommunikation unterstützt keine Fehlerrückmeldung). - Rollen/Referenzen:
possibleApErrorSet: Referenz aufApApplicationErrorSet[0..*].possibleApError: Direkte Referenz aufApApplicationError[0..*].
- Attribut:
ApApplicationErrorSet(Instanzen:errSetV,errSetX,errSetY,errSetZ): Wiederverwendbarer Aggregationscontainer für Fehlermengen.errSetV: aggregiertE_FOO,E_BAR(im Diagramm unreferenziert; demonstriert Entkopplung).errSetX: aggregiertE_BAZ,E_CUX,E_UNKNOWN.errSetY: aggregiertE_CUX,E_UNKNOWN.errSetZ: aggregiertE_UNKNOWN,E_FILEDESC.
ApApplicationError(Instanzen:E_FOO,E_BAR,E_BAZ,E_CUX,E_UNKNOWN,E_FILEDESC): Konkreter fachlicher Fehler.- Attribute:
shortName(Bezeichner),errorCode(numerischer Integer-Code, z. B. 1, 2, 100, 101). - Assoziation: Verweist strikt n:1 auf genau eine
ApApplicationErrorDomain.
- Attribute:
ApApplicationErrorDomain(Instanzen:domM,domN,domP): Definiert den Fehlerbereich (Namespace) analog zuara::core::ErrorDomain.- Attribute:
shortName(Domänenname),value(eindeutiger 64-Bit-Domänenbezeichner:domM = 1,domN = 5,domP = 17).
- Attribute:
Beziehungen & Kardinalitäten
- Operation → Error: Sowohl direkt (n:m via
possibleApError) als auch indirekt über Sets (n:m viapossibleApErrorSet) möglich. - Redundanz/Überlappung: Eine Operation darf denselben Fehler sowohl direkt als auch über ein Set referenzieren (z. B.
ifA::ReadXreferenziertE_UNKNOWNdirekt und viaerrSetX;ifB::ReadYbindetE_UNKNOWNundE_FILEDESCdirekt ein, obwohlerrSetXebenfalls referenziert ist). - Multi-Domain-Fehler pro Operation: Eine Operation kann Fehler aus mehreren Domänen zurückgeben (z. B. wirft
ifB::ReadYFehler ausdomNunddomP).
3. Dynamisches Verhalten & Sequenzablauf (falls zutreffend)
- Modellierungscharakter: Reines Struktur- und Zuordnungsmodell. Zur Laufzeit steuert dieses Gefüge das Fehlerverhalten in
ara::com:- Aufruf: Client ruft Methode via Proxy asynchron/synchron auf (
ara::core::Future<Output>/ara::core::Result<Output, ara::core::ErrorCode>). - Fehlerfall: Der Server-Skeleton bricht die Ausführung ab und retourniert einen
ara::core::ErrorCode. - Identifikation: Der Fehlercode setzt sich zur Laufzeit aus dem 64-Bit-Wert der
ApApplicationErrorDomain(value) und dem 32-Bit-errorCodedes konkretenApApplicationErrorzusammen. - Auswertung: Der Client prüft über die generierten Fehler-Enums und Domain-Instanzen (
ara::core::ErrorDomain), welcher fachliche Fehler vorliegt.
- Aufruf: Client ruft Methode via Proxy asynchron/synchron auf (
4. Normative Relevanz & Entwickler-Hinweise
- SWS_LBAP_00050 (Generierung von Error Domains):
Für jede
ApApplicationErrorDomaingeneriert der AP-Code-Generator eine konkrete Subklasse vonara::core::ErrorDomainmit dem modellierten 64-Bit-value(z. B.DomMErrorDomainmit ID 1). - SWS_LBAP_00052 (Generierung von Error-Code-Enums):
Für die in einer Domäne definierten
ApApplicationErrors wird ein scoped Enum (z. B.enum class Errc : ara::core::ErrorDomain::CodeType) generiert, dessen Enumeratoren denshortNames und Werten auserrorCodeentsprechen. - Deduplizierungspflicht für Tool-Vendors:
Code-Generatoren müssen die effektive Fehlermenge pro Operation als Vereinigungsmenge aus direkten Referenzen (
possibleApError) und indirekten Mengen (possibleApErrorSet) bilden. Mehrfachreferenzen (wie beiifA::ReadX) müssen idempotent aufgelöst werden. - Restriktionen für Applikationsentwickler:
- Eine Operation mit
fireAndForget = truedarf wederpossibleApErrornochpossibleApErrorSetdefinieren. - Der Skeleton-Entwickler darf ausschließlich Fehler zurückgeben, die für die jeweilige
ClientServerOperationmodelliert wurden, da Serialisierungs- und Kommunikations-Bindings (z. B. SOME/IP) nur deklarierte Application Errors im Protokoll-Header transportieren und validieren.
- Eine Operation mit
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.