DEENESPTFRRUARHIKOZHNL
AUTOSAR_SWS_UpdateAndConfigurationManagement FIG-469e0c0880b8fb0c 821 × 1007 px 2 Release(s)

Figure 10.3: Sequence diagram showing the package processing

SHA-256 Inhalts-Fingerabdruck: 469e0c0880b8fb0cf3777790c5783354b4befac983033dab6647a213270daa12
✦ 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

  • Diagrammtyp: UML-Sequenzdiagramm mit kombinierten Fragmenten (opt, loop).
  • Architektur-Kontext: AUTOSAR Adaptive Platform (UCM – Update and Configuration Management nach AUTOSAR_SWS_UpdateAndConfigurationManagement, R21-11/R22-11).
  • Funktionaler Zweck: Modellierung des Protokollablaufs zur Verarbeitung empfangener Software-Pakete (Software Package Processing) über die UCM-Dienstschnittstelle PackageManagement. Es visualisiert den Zustandsübergang von IDLE über PROCESSING zu READY sowie die Fortschrittsüberwachung für inkrementell oder parallel übertragene Pakete (TransferId).

2. Komponenten, Entitäten & Schnittstellen

  • Akteure & Instanzen:
    • Diagnostic Application (OEM specific): Service-Consumer (Client/Applikationsebene; OTA-Client oder Diagnose-Tester/UDS-Router), der den Software-Update-Workflow steuert.
    • «ServiceProvider» :External Reference (UCM / Package Management Service): Server-Instanz, die das Service Interface ara::ucm::pkgmgr::PackageManagement über ara::com bereitstellt.
  • Service-Elemente & Methoden:
    • CurrentStatus: Service-Field/Event zur Übertragung des aggregierten UCM-Lebenszyklusstatus (PackageManagementStatusType: IDLE, PROCESSING, READY).
    • GetSwPackages(): Synchrone Read-Methode, Rückgabe SwPackageInfoVectorType (Metadaten über im UCM vorhandene/übertragene Software-Pakete).
    • ProcessSwPackage(TransferId): Asynchrone Anforderung zur Validierung, Dekompression und Vorbereitung des Software-Pakets mit angegebener Kennung. Rückgabetyp: ProcessSwPackageReturnType (Ergebnisstatus/Fehlercode via ara::core::Future).
    • GetSwProcessProgress(TransferId): Abfrage des Abarbeitungsgrads für ein konkretes Paket; Rückgabe uint8 (0–100 %).
  • Datenstrukturen & Typen:
    • TransferId: Eindeutiger Bezeichner des Software-Pakets (vergeben während der vorherigen Transferphase TransferStart).
    • SwPackageInfoVectorType: Liste/Vektor serialisierter Metadatenstrukturen vorhandener Pakete.
    • ProcessSwPackageReturnType: Spezifisches UCM-Fehler-/Ergebnis-Enum bzw. ara::core::Result<void>.

3. Dynamisches Verhalten & Sequenzablauf

  1. Initialisierung & Status-Abonnement:
    • Client sendet Subscribe(CurrentStatus) an den UCM-Dienst.
    • UCM bestätigt/notifiziert den Initialzustand CurrentStatus = IDLE (keine aktive Verarbeitung).
  2. Paket-Enumeration (opt):
    • Optional ruft die Diagnoseapplikation GetSwPackages() ab, um verifizierte Paket-Handles (TransferId) und Abhängigkeiten zu prüfen.
    • UCM antwortet synchron mit SwPackageInfoVectorType.
  3. Verarbeitungsschleife (loop for each TransferId):
    • Pro übertragenem Paket ruft der Client ProcessSwPackage(TransferId) auf.
    • Zustandswechsel: UCM emittiert sofort das Event CurrentStatus = PROCESSING.
    • Fortschrittsabfrage (opt continuously): Während die Verarbeitung asynchron im Hintergrund läuft (Signaturen prüfen, Dekomprimieren, Delta-Patching, A/B-Partitionen vorbereiten), pollt der Client zyklisch GetSwProcessProgress(TransferId) und erhält den aktuellen Stand (:progress in %).
    • UCM signalisiert den Abschluss der Paketverarbeitung über das asynchrone Methoden-Return :ProcessSwPackageReturnType.
  4. Abschluss & Folgezustand:
    • Nach Abarbeitung aller relevanten Transfer-IDs wechselt UCM in den Zustand CurrentStatus = READY.
    • Bedeutung: Das System ist nun bereit für die Aktivierungsphase (Activate), gefolgt von Verify und Commit.

4. Normative Relevanz & Entwickler-Hinweise

  • Asynchrones API-Design (ara::com): ProcessSwPackage ist langlaufend und darf den Client-Thread nicht blockieren. In Adaptive C++ muss die Applikation das zurückgelieferte ara::core::Future auswerten oder Callbacks registrieren.
  • Status-getriebenes Zustandsmodell: Der Wechsel auf CurrentStatus = READY erfolgt erst, wenn alle referenzierten Pakete fehlerfrei verarbeitet sind. Scheitert ein Paket (ProcessSwPackageReturnType != kSuccess), bleibt UCM im Fehlerzustand; nachfolgende Aufrufe von Activate() sind unzulässig und werden abgewiesen.
  • Polling-Budgetierung: GetSwProcessProgress ist synchron. Um IPC-/Bus-Last (z. B. SOME/IP über Ethernet) nicht zu überlasten, muss der Client Rate-Limiting/Entprellzeiten bei der Abfrage von opt continuously einhalten.
  • Voraussetzung: Dem Diagramm muss zwingend ein erfolgreicher Transfer-Zyklus (TransferStart, TransferData, TransferExit) vorausgegangen sein; unbekannte TransferId-Werte quittiert ProcessSwPackage mit Fehlern (z. B. UcmErrorDomain::kInvalidTransferId).

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

R22-11 → R23-11 redaktionell Nachfolger: FIG-e65aa629087a4947
  • Server-Lebenslinie («ServiceProvider»): Stereotyp-Bezeichnung von unvollständigem «ServiceProvid... zu «ServiceProvider» korrigiert; Instanzbezeichnung von generischem :External Reference zum konkreten Schnittstellennamen :PackageManagement präzisiert.
  • Layout / Zeilenumbrüche: Mehrzeilige Umbrüche bei den Beschriftungen GetSwPackages(): SwPackageInfoVectorType, CurrentStatus= :PROCESSING und CurrentStatus= :READY.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

«ServiceProvid... :External Reference Diagnostic Application (OEM | specific) | loop for each TransferId | opt | opt continously | :SwPackageInfoVectorType | ProcessSwPackage(TransferId): ProcessSwPackageReturnType | GetSwProcessProgress(TransferId): uint8 | :progress | :ProcessSwPackageReturnType | CurrentStatus= :READY | CurrentStatus= :PROCESSING | CurrentStatus= :IDLE | Subscribe(CurrentStatus) | GetSwPackages(): SwPackageInfoVectorType

Vorkommen in AUTOSAR-Releases (3)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R21-11 AUTOSAR_SWS_UpdateAndConfigurationManagement S. 113 10.3 Figure 10.3: Sequence diagram showing the package processing
R21-11 AUTOSAR_SWS_UpdateAndConfigurationManagement S. 113 10.3 Figure 10.3: Sequence diagram showing the package processing
R22-11 AUTOSAR_SWS_UpdateAndConfigurationManagement S. 124 10.3 Figure 10.3: Sequence diagram showing the package processing