Modul ara::ucm — Update and Configuration Management
Modul-GuideKI-GENERIERT
Verwaltet den sicheren Transfer, die Verifikation und die Aktivierung von Softwarepaketen auf der Adaptive Platform.
Verwaltet den sicheren Transfer, die Verifikation und die Aktivierung von Softwarepaketen auf der Adaptive Platform.
Das funktionale Cluster Update and Configuration Management steuert die transaktionale Installation, Verifikation und Aktivierung von Software-Paketen auf einer Adaptive-Maschine (AUTOSAR_AP_EXP_SWArchitecture S. 138). Die Dienstschnittstelle PackageManagement realisiert hierzu eine dreiphasige Pipeline aus Datenübertragung, Paketverarbeitung und anschließender Umschaltung via Activate ([SWS_UCM_00352]). Bei auftretenden Fehlern oder fehlenden Abhängigkeiten gewährleisten standardisierte Mechanismen wie Rollback und RevertProcessedSwPackages die sichere Wiederherstellung des vorherigen Systemzustands ([SWS_UCM_00350], [SWS_UCM_00353]).
Das Update and Configuration Management (UCM) ist ein daemon-basierter Functional Cluster der AUTOSAR Adaptive Platform, der das serviceorientierte Interface PackageManagement über ara::com bereitstellt ([SWS_UCM_00361], AUTOSAR_AP_EXP_SWArchitecture S. 138). UCM fungiert als lokales Ausführungsorgan für OTA-Clients, Diagnoseanwendungen oder das fahrzeugweite Vehicle Update and Configuration Management (V-UCM) und wird bei Multi-ECU-Konfigurationen über eine fahrzeugweit eindeutige Instanzkennung mittels GetId adressiert ([SWS_UCM_00343], TPS_ManifestSpecification S. 631).
Der Aktualisierungsablauf vollzieht sich in drei Phasen: Datenübertragung, Verarbeitung und Aktivierung (AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 136). Software-Pakete können jederzeit blockweise via TransferStart, TransferData und TransferExit gestreamt oder über RegisterSoftwarePackage als vorhandener URI-Pfad registriert werden ([SWS_UCM_00344], [SWS_UCM_00345], [SWS_UCM_00346]). Nicht mehr benötigte Transfers lassen sich mit DeleteTransfer entfernen ([SWS_UCM_00348]).
Sequenzdiagramm: Übertragung eines Software-Pakets via blockweisem Streaming oder direkter URI-Registrierung. Quellen: [SWS_UCM_00344], [SWS_UCM_00345], [SWS_UCM_00346], [SWS_UCM_00347], AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 136, AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 137.
Die Verarbeitung wird mit ProcessSwPackage ausgelöst, wobei UCM Paketmanifeste und Signaturen prüft, die Ziel-Cluster entpackt und den Fortschritt im Statusfeld CurrentStatus sowie über GetProgress anzeigt ([SWS_UCM_00349], [SWS_UCM_00360], [SWS_UCM_00361]). Nach erfolgreicher Vorbereitung schaltet Activate in Abstimmung mit State Management und Execution Management auf die neuen Cluster um, woraufhin Finish temporäre Quelldaten bereinigt ([SWS_UCM_00352], [SWS_UCM_00354], AUTOSAR_AP_EXP_PlatformDesign S. 77).
Sequenzdiagramm: Aktivierung, Plattform-Zustandsübergang und Bereinigung der Software-Pakete. Quellen: [SWS_UCM_00352], [SWS_UCM_00354], AUTOSAR_AP_EXP_PlatformDesign S. 77.
Fehlerhafte Verarbeitungen führen in den Zustand kProcessingFailed, während unvollständige Kampagnen vor der Aktivierung mit RevertProcessedSwPackages und nach fehlgeschlagener Umschaltung mit Rollback transaktional auf den Ausgangsstand zurückgesetzt werden ([SWS_UCM_00350], [SWS_UCM_00353], AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 38). Zur Statusinspektion und Auditierung dienen GetSwClusterInfo, GetSwClusterChangeInfo sowie GetHistory ([SWS_UCM_00355], [SWS_UCM_00356], [SWS_UCM_00357]).
Rolle und funktionale Systemgrenzen im Plattformverbund
Das funktionale Cluster Update and Configuration Management (UCM) bildet die zentrale Plattformkomponente der AUTOSAR Adaptive Platform zur sicheren, transaktionalen Aktualisierung, Installation und Deinstallation von Anwendungs- und Plattformsoftware auf Maschinenebene (AUTOSAR_AP_EXP_SWArchitecture S. 138). Technisch ist das UCM als systemweiter Hintergrunddienst (daemon-based) realisiert und stellt seine Kernfunktionalität über das primäre ara::com-Service-Interface PackageManagement bereit ([SWS_UCM_00361], AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 90). Zu den konsumierenden Entitäten zählen fahrzeuginterne Over-the-Air-Clients (OTA-Clients), Diagnose-Tester via Diagnostic Management sowie übergeordnete Koordinatoren wie das Vehicle Update and Configuration Management (V-UCM) (AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 17).
Innerhalb einer mehrstufigen Fahrzeugarchitektur fungiert das UCM als lokales Ausführungsorgan (UCM Subordinate), während das fahrzeugzentrale V-UCM softwaregestützte Kampagnen über mehrere Steuergeräte hinweg orchestriert (SWS_VehicleUpdateAndConfigurationManagement S. 16, AUTOSAR_AP_SWS_VehicleUpdateAndConfigurationManagement S. 12). Um dem zentralen Orchestrator die Adressierung mehrerer verteilter UCM-Instanzen auf unterschiedlichen Maschinen zu ermöglichen, stellt jede Instanz über die Methode GetId ihren eindeutigen Bezeichner bereit ([SWS_UCM_00343]). Dieser Bezeichner muss gemäß Manifest-Vorgaben fahrzeugweit maschinenspezifisch eindeutig konfiguriert sein (TPS_ManifestSpecification S. 631).
Kontextdiagramm: Funktionale Einbettung des UCM-Daemons in die Adaptive Platform und Interaktion mit Clients sowie Plattformclustern. Quellen: AUTOSAR_AP_EXP_SWArchitecture S. 138, AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 17, SWS_VehicleUpdateAndConfigurationManagement S. 16.
Bereitstellung und Übertragung von Software-Paketen
Der Lebenszyklus einer Softwareaktualisierung gliedert sich standardmäßig in die drei Makro-Phasen Datenübertragung (Data Transmission), Paketverarbeitung (Processing) und Aktivierung (Activation) (AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 136). Ein wesentliches Architekturmerkmal des UCM ist die Entkopplung der Datenübertragung von den internen Verarbeitungs- und Paketmanagementzuständen: Software-Pakete können zu jedem beliebigen Zeitpunkt während des laufenden Betriebs auf die Maschine übertragen werden (SWS_UpdateAndConfigurationManagement S. 38).
Für die Bereitstellung von Software-Paketen definiert die Schnittstelle PackageManagement zwei komplementäre Mechanismen:
- Blockweises Streaming: Der Client initiiert die Übertragung durch Aufruf von
TransferStartunter Angabe der Gesamtgröße in Bytes und erhält eine eindeutigeTransferIdTypesowie die maximal zulässige Blockgröße ([SWS_UCM_00345]). Anschließend werden die Datenfragmente sequenziell mitTransferDataund fortlaufendem Blockzähler übertragen ([SWS_UCM_00346], AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 136). Den formalen Abschluss bildet der MethodenaufrufTransferExit([SWS_UCM_00347]). - URI-basierte Registrierung: Wurde das Paket bereits außerhalb von UCM (z. B. über einen Hintergrund-Download-Manager oder Vorabablage im lokalen Dateisystem) bereitgestellt, kann der Client das Paket über
RegisterSoftwarePackageunter Angabe eines standardisierten URI-Pfads registrieren ([SWS_UCM_00344], AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 137).
In beiden Fällen weist UCM dem Paket eine eindeutige TransferId zu, über welche alle nachfolgenden Aktionen referenziert werden. Übertragene, aber noch nicht verarbeitete Pakete können bei Abbruch oder Speicherbereinigung mit DeleteTransfer explizit aus dem temporären Speicher entfernt werden ([SWS_UCM_00348]).
Sequenzdiagramm: Übertragung eines Software-Pakets via blockweisem Streaming oder direkter URI-Registrierung. Quellen: [SWS_UCM_00344], [SWS_UCM_00345], [SWS_UCM_00346], [SWS_UCM_00347], AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 136, AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 137.
Verarbeitung und Verifikation im lokalen UCM
Nach erfolgreicher Übertragung oder Registrierung stößt der Client über die Methode ProcessSwPackage die Verarbeitung des Pakets an ([SWS_UCM_00349]). Die Verarbeitung umfasst das Extrahieren der Software-Cluster, das Einlesen der Manifeste, Integritäts- und Authentizitätsprüfungen sowie die statische Validierung von Cluster-Abhängigkeiten (EXP_SWArchitecture S. 185). Ein einzelnes Software-Paket kann Executables von Adaptive Applications, Betriebssystem- oder Firmware-Updates sowie Konfigurations- und Kalibrierungsdaten kapseln (SWS_UpdateAndConfigurationManagement S. 27).
Der Aufruf von ProcessSwPackage versetzt das Service-Field CurrentStatus in den Zustand kProcessing ([SWS_UCM_00361], AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 123). Clients können das Field abonnieren oder den aktuellen Fortschritt über die Abfragemethode GetProgress überwachen ([SWS_UCM_00360]). Zusätzlich gestattet GetSwPackages die Abfrage aller aktuell im UCM bekannten Software-Pakete und deren Bearbeitungsstatus ([SWS_UCM_00359]). Laufende zeitintensive Verarbeitungsschritte lassen sich bei Bedarf mit Suspend unterbrechen und zu einem späteren Zeitpunkt mittels Resume fortführen ([SWS_UCM_00397], [SWS_UCM_00398]). Wird die Verarbeitung abgebrochen, kann der Vorgang mit Cancel kontrolliert gestoppt werden ([SWS_UCM_00351]).
Sequenzdiagramm: Paketverarbeitung mit Statusübergang und Fortschrittsüberwachung. Quellen: [SWS_UCM_00349], [SWS_UCM_00360], [SWS_UCM_00361], AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 123.
Aktivierungsworkflow und Plattform-Zustandswechsel
Sind alle für eine Kampagne vorgesehenen Pakete erfolgreich verarbeitet, leitet der Client mit dem synchronen Aufruf von Activate die Scharfschaltung der neuen Software-Cluster ein ([SWS_UCM_00352]). Voraussetzung hierfür ist, dass sich das UCM in einem konsistenten Ruhezustand befindet und keine aktiven Verarbeitungs- oder Abbruchtasks laufen (EXP_SWArchitecture S. 185). UCM koordiniert den Aktivierungsschritt eng mit dem State Management (SM) und dem Execution Management (EM): Laufende Prozesse der alten Version werden geordnet beendet, Persistenzdatenstrukturen migriert und die neuen Applikationsinstanzen gestartet (AUTOSAR_AP_EXP_PlatformDesign S. 77).
Das Manifest-Metamodell der Adaptive Platform unterstützt mehrstufige Aktivierungsschritte (SoftwarePackageStep), wodurch die Reihenfolge der Paketverarbeitung flexibel von der Vorbereitung und dem eigentlichen Umschaltzeitpunkt (activationSwitch=True) entkoppelt werden kann (AUTOSAR_TPS_ManifestSpecification S. 642). Nach erfolgreicher Umschaltung und Verifikation der neuen Softwarestände schließt der Client die Kampagne mit Finish ab ([SWS_UCM_00354]). Dieser Aufruf führt eine endgültige Bereinigung durch, löscht die Quellpakete aus dem temporären Speicher und überführt die Software-Cluster in den dauerhaften Zustand (EXP_SWArchitecture S. 138).
Sequenzdiagramm: Aktivierung, Plattform-Zustandsübergang und Bereinigung der Software-Pakete. Quellen: [SWS_UCM_00352], [SWS_UCM_00354], AUTOSAR_AP_EXP_PlatformDesign S. 77.
Cluster-Lebenszyklus, Abfrage-APIs und Audit-Historie
Software-Cluster (SwCluster) besitzen einen wohldefinierten Lebenszyklus: Nach erfolgreicher Abarbeitung via ProcessSwPackage wechselt ein neu hinzugefügter Cluster in den Zustand kAdded, während ein aktualisierter Cluster den Zustand kUpdating einnimmt (SWS_UpdateAndConfigurationManagement S. 24). Erst mit dem abschließenden Aufruf von Finish nach der Aktivierung gehen diese Cluster in den stabilen Produktivzustand kPresent über (SWS_UpdateAndConfigurationManagement S. 24). Für Software-Pakete selbst existieren entkoppelte Zustandsautomaten: Der TransferState (Zustände kTransferring, kTransferred) und der ProcessingState (Zustände kReady, kProcessing, kProcessed, kProcessingFailed) gestatten auch reine Streaming-Szenarien ohne vorherige Zwischenspeicherung des gesamten Pakets (AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 38).
Zur Laufzeit stellt das UCM umfassende Informationsschnittstellen zur Systeminspektion bereit:
GetSwClusterInfoliefert eine Liste aller aktuell aktiven Software-Cluster im ZustandkPresentsamt Versionsbezeichnern ([SWS_UCM_00357]).GetSwClusterChangeInfomeldet alle anstehenden Änderungen (hinzuzufügende, zu aktualisierende oder zu entfernende Cluster) vor der finalen Aktivierung ([SWS_UCM_00356]).GetSwClusterManifestInfoerlaubt die gezielte Abfrage von Manifestdetails eines bestimmten installierten Software-Clusters ([SWS_UCM_00358]).GetHistoryermöglicht das Auslesen eines chronologischen Audit-Trails aller UCM-Aktionen innerhalb eines definierten Zeitintervalls zur lückenlosen Nachverfolgung im Flottenmanagement ([SWS_UCM_00355], AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 86).
Zustandsdiagramm: Entkoppelte Zustandsautomaten für Datentransfer und Verarbeitung eines Software-Pakets. Quellen: AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 38, AUTOSAR_SWS_UpdateAndConfigManagement S. 20.
Zustandsdiagramm: Lebenszyklus eines Software-Clusters von der Vorbereitung bis zur finalen Aktivierung. Quellen: SWS_UpdateAndConfigurationManagement S. 24, AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 87.
Verhalten im Fehlerfall und Transaktionsabsicherung
Um die funktionale Sicherheit und Systemstabilität des Steuergeräts unter allen Betriebsbedingungen zu gewährleisten, erzwingt UCM strikte Konsistenzprüfungen und bietet Rückfallmechanismen für jede Phase des Update-Prozesses. Schlägt die Validierung oder Installation während der Paketverarbeitung fehl, geht das betroffene Paket in den Zustand kProcessingFailed über (AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 38). Sollen bereits verarbeitete Pakete vor der Aktivierung verworfen werden, setzt RevertProcessedSwPackages alle temporären Datei- und Konfigurationsänderungen gesammelt zurück ([SWS_UCM_00350]).
Wird während des Aktivierungsschritts ein Fehler festgestellt – etwa durch unauflösbare Abhängigkeiten (kDependencyMissing), fehlgeschlagene Speicherallokationen (kPersistencyAllocationFailed) oder Fehler in der Update-Sitzung mit dem State Management ([SWS_UCM_00352]) –, bricht UCM die Aktivierung ab. In einem solchen Fehlerfall versetzt die Methode Rollback die gesamte Plattform in den exakten Zustand vor Beginn der Paketverarbeitung zurück ([SWS_UCM_00353]). Interpretation: Hierbei dürfte UCM auf redundante Speicherstrukturen wie A/B-Partitionen oder Dateisystem-Snapshots zurückgreifen, um die unveränderten Altversionen ohne Datenverlust wieder in Betrieb zu nehmen (AUTOSAR_AP_EXP_SWArchitecture S. 138). Frage Q-8d85be7343a9aace (offen)
Auf Schnittstellenebene werden unzulässige Aufrufe (z. B. Aktivierungsversuche bei fehlenden Paketen oder parallele Aufrufe während aktiver Operationen) deterministisch über den Fehlercode kOperationNotPermitted abgewiesen ([SWS_UCM_00347], [SWS_UCM_00352]). Interpretation: UCM dürfte während laufender Aktivierungs- oder Rollback-Vorgänge jegliche nebenläufigen Modifikationsaufrufe strikt blockieren, um Race Conditions bei der Partitionsumschaltung zu verhindern (EXP_SWArchitecture S. 185). Frage Q-60859031e6230a65 (offen) Ungültige oder unbekannte Sitzungsbezeichner quittiert UCM mit dem Anwendungsfehler kTransferIdInvalid ([SWS_UCM_00348], [SWS_UCM_00351]).
Weiterführende Detailbelege
Die Architektur des UCM und seine serviceorientierte Einbettung sind in den folgenden Kernspezifikationen verbindlich verankert:
PackageManagementService-Interface und Transfer-Protokoll: [SWS_UCM_00345], [SWS_UCM_00346], [SWS_UCM_00347], AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 85.- Verarbeitung, Zustandsübergänge und Fehlerbehandlung: [SWS_UCM_00349], [SWS_UCM_00350], [SWS_UCM_00352], [SWS_UCM_00353], AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 38.
- Statusinspektion, Software-Cluster-Datenmodell und Historie: [SWS_UCM_00355], [SWS_UCM_00356], [SWS_UCM_00357], AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 86, AUTOSAR_AP_SWS_UpdateAndConfigurationManagement S. 87.
- Multi-ECU-Koordination und Interaktion mit dem Vehicle UCM: [SWS_UCM_00343], SWS_VehicleUpdateAndConfigurationManagement S. 16, TPS_ManifestSpecification S. 631.
Dieser Leitfaden basiert ausschließlich auf den normativen Anforderungen und Architekturartefakten des AUTOSAR Adaptive Platform Release R25-11.
service method: 20 service field: 1
Service-Interfaces
PackageManagementService-Interfaces
PackageManagementThemenkarte
Für dieses Release liegen keine Elementdaten vor
Service-Interfaces
Als ara::com-Dienst modellierte Schnittstelle; Methoden/Felder werden über generierte Proxies/Skeletons aufgerufen (Parameterrichtung IN/OUT).
Service-Interfaces (ara::com-modelliert)
- PackageManagement 21 Mitglieder
gemini-3.8-flash-medium· 2026-10-13