DEENESPTFRRUARHIKOZHNL
AUTOSAR_AP_SWS_UpdateAndConfigurationManagement FIG-9aec9bfc9fa11eeb 588 × 228 px 2 Release(s)

Figure 11.3: Sequence diagram showing Software Package registration

SHA-256 Inhalts-Fingerabdruck: 9aec9bfc9fa11eeb11a9123e1f99cc20cd4f95e2c865c3f9a7e87206adc14acd
✦ 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-Sequenzdiagramm (Interaktionsdiagramm).
  • Technischer Zweck & Einordnung: Spezifikation des alternativen Bereitstellungspfads („Package Registration“) innerhalb der Transfer-Phase des Functional Clusters Update and Configuration Management (UCM) der AUTOSAR Adaptive Platform (AUTOSAR_AP_SWS_UpdateAndConfigurationManagement). Es definiert das Zusammenspiel zwischen einem Client und dem UCM-Dienst zur Registrierung eines bereits out-of-band (z. B. via separaten Download-Manager oder Dateisystem) bereitgestellten Software-Pakets, ohne den blockweisen Streaming-Mechanismus (TransferStart / TransferData) zu nutzen.

2. Komponenten, Entitäten & Schnittstellen

  • Akteure & Lifelines:
    • UCM Client: Adaptive Application bzw. Client-Akteur (z. B. OTA-Client, Diagnose-Tester oder Flottenmanagement-Agent), der den Update-Ablauf initiiert.
    • «ServiceProvider» :PackageManagement: Service-Instanz des UCM-Kerninterfaces ara::ucm::pkgmgr::PackageManagement, exponiert via ara::com (Service-Oriented Communication).
  • Schnittstellenmethoden & Datentypen:
    • RegisterSoftwarePackage(UriString): TransferIdType
      • Parameter: UriString (Pfad-/URI-Spezifikation des lokal zugänglichen Software-Pakets, z. B. /...).
      • Rückgabe: TransferIdType (deterministisches Session-Handle / 16-Byte-Identifier zur Adressierung des Transfer-Kontexts).
    • TransferExit(TransferId): TransferExitReturnType
      • Parameter: TransferId (TransferIdType, Referenz auf die aktive Registrierung).
      • Rückgabe: TransferExitReturnType (quittiert erfolgreiche Validierung bzw. meldet Fehler aus der UcmErrorDomain).
  • Interne Operation:
    • checkTransferredPackage(): Interne synchrone Prüfroutine innerhalb von UCM zur Validierung von Manifest, Signatur und Hash-Integrität des referenzierten Pakets.

3. Dynamisches Verhalten & Sequenzablauf

  1. Paketregistrierung (RegisterSoftwarePackage):
    • Der UCM Client initiiert den Vorgang synchron via RPC mit Angabe der UriString.
    • UCM allokiert einen internen Tracking-Kontext für das Paket und generiert eine eindeutige TransferId.
    • Rückgabe der TransferId an den Client. Der UCM-interne Zustand für diese Session wechselt in den Transfer-Modus.
  2. Transferabschluss & Integritätsprüfung (TransferExit):
    • Der Client ruft TransferExit(TransferId) auf, um die Übergabe zu finalisieren.
    • Synchroner interner Self-Call (checkTransferredPackage): UCM liest das referenzierte Paket am URI-Ort ein, parst das Software Package Manifest und verifiziert Authentizität sowie kryptografische Integrität (Signaturkette und Prüfsummen).
    • Nach erfolgreicher Validierung quittiert UCM den Aufruf mit TransferExitReturnType. Das Paket wechselt in den Zustand kTransferred und ist bereit für die nachgelagerte Aktivierung (ProcessSwPackage).
  3. Fehler- und Abbruchverhalten:
    • Ist die URI ungültig, der Pfad nicht lesbar oder sind UCM-Ressourcen erschöpft, antwortet RegisterSoftwarePackage mit Fehlern wie PackageInconsistent, InsufficientMemory oder OperationNotPermitted.
    • Schlägt checkTransferredPackage() fehl (Signatur ungültig, Manifest inkonsistent, Hash-Mismatch), liefert TransferExit einen Fehlercode (z. B. AuthenticationFailed, PackageInconsistent). Die Session verbleibt im Fehlerzustand und erfordert einen expliziten Rollback/Cleanup via TransferDelete.

4. Normative Relevanz & Entwickler-Hinweise

  • API-Vertrag & Performance:
    • RegisterSoftwarePackage umgeht den rechen- und serialisierungsintensiven ara::com-Streaming-Overhead (TransferData-Schleife). Es setzt voraus, dass das Zielpaket bereits vollständig im persistenten Speicher der Adaptive Machine vorliegt.
  • Zugriffsrechte & Sandbox-Restriktionen:
    • Der POSIX-/OS-Prozess des UCM-Dämons muss lesenden Zugriff auf den in UriString deklarierten Speicherpfad besitzen (SELinux/AppArmor-Policies und Access Control Lists beachten).
  • Ressourcen- und Lifecycle-Management:
    • Eine durch RegisterSoftwarePackage erzeugte TransferId bindet Ressourcen im UCM-Dienst. Kann die Sequenz nach Schritt 1 nicht durch TransferExit abgeschlossen werden, ist applikationsseitig zwingend TransferDelete aufzurufen, um Session-Leaks im UCM-Daemon zu verhindern.
  • Kryptografische Abhängigkeit:
    • checkTransferredPackage() bindet intern an die Plattform-Dienste von ara::crypto an; fehlschlagende Zertifikatsprüfungen oder abgelaufene Root-Zertifikate führen zum direkten Abbruch bei TransferExit.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

«ServiceProvi... | :PackageManagement | UCM Client | : TransferId | TransferExit(TransferId): TransferExitReturnType | RegisterSoftwarePackage(UriString): TransferIdType | checkTransferredPackage () : TransferExitReturnType

Vorkommen in AUTOSAR-Releases (2)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R24-11 AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 123 11.3 Figure 11.3: Sequence diagram showing Software Package registration
R25-11 AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 137 11.3 Figure 11.3: Sequence diagram showing Software Package registration