AUTOSAR_SWS_UpdateAndConfigurationManagement
FIG-d997a8c05b27c713
919 × 688 px
2 Release(s)
Figure 10.1: Sequence diagram showing the update process
SHA-256 Inhalts-Fingerabdruck:
d997a8c05b27c71300954ab4328a75e357864e946297d4539a0ebbaa64f135ff
✦
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-2.x-Sequenzdiagramm (Interaktionsübersicht / High-Level Sequence Diagram mit
ref-Interaktionsreferenzen). - Architektur-Kontext: AUTOSAR Adaptive Platform (AP), Functional Cluster Update and Configuration Management (UCM).
- Technischer Zweck: Definition des standardisierten, dreiphasigen Makro-Ablaufs für Software-Aktualisierungen (OTA oder über standardisierte Fahrzeugdiagnose wie DoIP/UDS) auf einer Adaptive Machine. Es kapselt die Interaktion zwischen der auslösenden Applikation und dem UCM-Kernservice.
2. Komponenten, Entitäten & Schnittstellen
- Lebenslinien & Akteure:
Diagnostic Application (OEM specific): Service Consumer (Client). Repräsentiert die applikative Instanz, welche die Software-Aktualisierung steuert (z. B. OEM-spezifischer OTA-Client-Daemon oder Diagnosetester-Adapter).:UCMmit Stereotyp«ServiceProvider»: Service Provider. Die Kerninstanz des UCM-Clusters (C++-Namespaceara::ucm), die als Service-Server überara::comstandardisierte Schnittstellen bereitstellt (vorrangigara::ucm::pkgmgr::PackageManagement).
- Strukturierte Interaktionselemente (
refInteraction Use Frames):Data transmission: Kapselt das Session-Handling und den blockweisen Transport des Software-Pakets (.swp) in den persistenten Speicher des UCM.Processing: Kapselt die Integritäts-/Authentizitätsprüfung, Manifest-Validierung, Abhängigkeitsanalyse und Vorinstallation/Dekomprimierung.Activation: Kapselt die koordinierte Umschaltung auf den neuen Softwarestand unter Einbindung von State Management (ara::sm) und Execution Management (ara::exec).
3. Dynamisches Verhalten & Sequenzablauf
Der Prozess erzwingt eine strikt sequentielle Pipeline:
- Phase 1:
ref Data transmission(Datenübertragung)- Start: Client initiiert die Übertragung via
TransferStart(); UCM allokiert Speicher und liefert einTransferId-Handle zurück. - Transfer: Iterative Übertragung von Datenblöcken über
TransferData(TransferId, DataBlock). - Ende: Validierung der empfangenen Blockanzahl und Abschluss via
TransferExit(TransferId).
- Start: Client initiiert die Übertragung via
- Phase 2:
ref Processing(Verarbeitung)- Trigger: Client ruft
ProcessSwPackage(TransferId)auf. - Ablauf: Asynchrone Abarbeitung im UCM. UCM prüft kryptografische Signaturen, Zertifikatsketten, Hardware-/Software-Kompatibilität sowie Zielabhängigkeiten (
SoftwareCluster). - Monitoring: Client pollt den Verarbeitungsfortschritt über
GetSwProcessProgress(TransferId).
- Trigger: Client ruft
- Phase 3:
ref Activation(Aktivierung)- Trigger: Aufruf von
Activate(). - Ablauf: UCM wechselt in den Zustand
ACTIVATINGund fordert überara::smdie Umschaltung der Funktionsgruppe/des Systems an (z. B. A/B-Partitions-Swap, gezielter Prozess-Restart viaara::exec). - Abschluss/Rollback: Verifikation des Neuanlaufs; bei Erfolg finaler Abschluss via
Finish(), bei Verifikationsfehlern Initiierung eines Fallbacks viaRollback().
- Trigger: Aufruf von
- Abbruch- und Fehlerpfade: Ein Scheitern in Phase 1 oder 2 führt über
TransferExit()bzw.RevertProcessSwPackage()zur Freigabe allokierter Ressourcen, ohne die aktuell laufende Softwarekonfiguration zu korrumpieren.
4. Normative Relevanz & Entwickler-Hinweise
- API-Vertrag (
ara::ucm::pkgmgr::PackageManagement): Methodenaufrufe unterliegen strikten Vorbedingungen. Ein Methodenaufruf ausActivationscheitert mit Fehlern wiePackageManagementErrorDomain::kNotProcessedoderkInvalidPackageManifest, wennProcessingnicht erfolgreich abgeschlossen wurde. - Entkopplung & Background-Updates: Durch die Trennung von
Data transmission/ProcessingundActivationkann das Herunterladen und Verifizieren vollständig im Hintergrund während des regulären Fahrzeugbetriebs erfolgen. Die eigentlicheActivationerfordert in der Regel ein sicheres Wartungsfenster (Safe State). - Zustandsmodell-Konformität: Entwickler von OEM Diagnostic Applications müssen die UCM-Zustandsmaschine beachten (
IDLE→TRANSFERRING→PROCESSING→READY_FOR_ACTIVATION→ACTIVATING→ACTIVATED). - Asynchrone Schnittstellen: Sämtliche zeitintensiven Methodenaufrufe sind in der C++-API typischerweise über
ara::core::Futureabgebildet, um Blockaden des Client-Threads zu verhindern.
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.