AUTOSAR_AP_SWS_CommunicationManagement
FIG-cd13f22a21e62e34
870 × 402 px
1 Release(s)
Figure 7.7: Communication Group service interface categories
SHA-256 Inhalts-Fingerabdruck:
cd13f22a21e62e347ff60e3fd94dd74c73751f3a0aa890bfbcae2b832541bd08
✦
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: UML-Klassendiagramm / Metamodell-Ableitungsmodell (Service Interface Derivation Pattern).
- Technischer Zweck & Einordnung: Dargestellt ist das formale Ableitungskonzept für Communication Groups (Gruppenkommunikation) innerhalb des Functional Clusters Communication Management (
ara::com) der AUTOSAR Adaptive Platform (Release R20-11, Kapitel 7). - Architektonischer Kontext: Da Gruppenkommunikation asymmetrische Rollen zwischen dem Gruppen-Koordinator (Server) und den Gruppen-Teilnehmern (Clients) aufweist, wird ein primäres, neutrales Schnittstellenmodell (
COMMUNICATION_GROUP) über automatisierte Modelltransformation (<<derive>>) in zwei rollenspezifische Service-Interfaces aufgeteilt. Dies gewährleistet typ- und rollenkonforme Proxies und Skeletons ohne manuelle Redundanz in ARXML.
2. Komponenten, Entitäten & Schnittstellen
- Basis-Entität:
ServiceInterface(Kategorie:COMMUNICATION_GROUP):- Rolle: Quell-/Templateschnittstelle zur Definition des Nutzdatenvertrags der Gruppe.
- Methoden/Events:
- method message(msg): Abstrakte Nachrichtensignatur für eingehende Gruppennachrichten.- event response(responseMsg): Abstrakte Eventsignatur für Antwort- bzw. Rückmeldungsdaten.
- Abgeleitete Entitäten:
ServiceInterface(Kategorie:COMMUNICATION_GROUP_SERVER):- Rolle: Schnittstelle für den Gruppen-Koordinator/Server zur Orchestrierung und gezielten Adressierung.
- Methoden/Events:
- method broadcast(msg): 1:n-Nachrichtenverteilung an alle aktuell registrierten Gruppen-Clients.- method message(clientId, msg): 1:1-Unicast-Nachricht an ein dezidiertes Gruppenmitglied über dessenclientId.- event response(clientID, responseMsg): Asynchrones Antwort-Event inklusive Absender-Identifikation (clientID).- method listClients(): Abfrageschnittstelle zur Ermittlung aller aktiven bzw. registrierten Clients der Gruppe.
ServiceInterface(Kategorie:COMMUNICATION_GROUP_CLIENT):- Rolle: Schlanke Schnittstelle für reguläre Gruppen-Teilnehmer (Clients).
- Methoden/Events:
- method message(msg): Clientseitiges Senden einer Nachricht an den Server/die Gruppe (Identifikation erfolgt implizit über den Stack).- event response(responseMsg): Empfang von Antworten/Statusnachrichten (Filterung auf Client-Ebene).
- Beziehungen & Stereotypen:
<<derive>>(UML Dependency): Formale Transformations-Abhängigkeit. Kennzeichnet die regelbasierte Ableitung der Server- und Client-Schnittstellen aus dem Basis-Interface gemäß den Anforderungen SWS_CM_99008, SWS_CM_99009 und SWS_CM_99019.- Kardinalität: 1 Group Server zu n Group Clients pro Gruppeninstanz.
3. Dynamisches Verhalten & Sequenzablauf
- Client-Registrierung & Discovery:
- Clients lokalisieren den Gruppen-Dienst über
ara::com::FindServicebasierend auf demCOMMUNICATION_GROUP_CLIENT-Interface. - Der Server instanziiert das
COMMUNICATION_GROUP_SERVER-Skeleton und führt die Session-/Client-Verwaltung (listClients()).
- Clients lokalisieren den Gruppen-Dienst über
- Uplink (Client → Server):
- Ein Client ruft
message(msg)auf seinem Proxy auf. Der Kommunikations-Stack (z. B. via SOME/IP oder Shared Memory/IPC) übermittelt den Payload an den Server; der Stack injiziert transportseitig die Zuordnung zurclientID.
- Ein Client ruft
- Downlink Broadcast (Server → Alle Clients):
- Server triggert
broadcast(msg). Die Middleware verteilt die PDU an alle der Gruppe zugeordneten Endpunkte.
- Server triggert
- Downlink Unicast (Server → Spezifischer Client):
- Server ruft
message(clientId, msg)auf. Der Stack löst dieclientIdin den entsprechenden Transportkanal auf und stellt die Nachricht selektiv zu.
- Server ruft
- Asynchroner Antwortpfad:
- Server-seitig feuert
response(clientID, responseMsg); der jeweilige Client empfängt dies als entitiespezifischesresponse(responseMsg)Event ohne manuelle Filterlogik im Applikationscode.
- Server-seitig feuert
4. Normative Relevanz & Entwickler-Hinweise
- ARXML-Modellierung:
- Entwickler/Systemarchitekten modellieren ausschließlich das Service-Interface der Kategorie
COMMUNICATION_GROUP. - AUTOSAR-Authoring-Tools müssen die Generatoren für
COMMUNICATION_GROUP_SERVERundCOMMUNICATION_GROUP_CLIENTautomatisiert ausführen (Konformität zu RS_CM_00600, RS_CM_00601).
- Entwickler/Systemarchitekten modellieren ausschließlich das Service-Interface der Kategorie
- API-Vertrag (
ara::comC++ Implementation):- Server-Entwickler: Implementieren das Skeleton für
COMMUNICATION_GROUP_SERVER. Methodenrückgaben erfolgen überara::core::Future/ara::core::Result(asynchron, nicht-blockierend).listClients()erfordert ein threadsicheres Member-Tracking im Applikations- oder Middleware-Kontext. - Client-Entwickler: Instanziieren den Proxy für
COMMUNICATION_GROUP_CLIENT. Der Entwickler hat keinen Zugriff auf fremdeclientIds und benötigt keine Broadcast-Logik, was die Client-Applikation schlank und frei von Routing-Code hält.
- Server-Entwickler: Implementieren das Skeleton für
- Einschränkungen & Binding-Anforderungen (SWS_CM_99020):
- Das zugrundeliegende Transport-Binding (z. B. SOME/IP Binding) muss Session-Handling und Client-Multiplexing unterstützen.
- Fehlerbehandlung bei ungültigen
clientIds inmessage(clientId, msg)muss über AUTOSAR-spezifischeara::core::ErrorCodebzw.ApApplicationErrorsabgebildet werden.