AUTOSAR_EXP_SWArchitecture
FIG-4143f759f4069d9a
263 × 418 px
1 Release(s)
Figure 9.12: Interface for software update handling
SHA-256 Inhalts-Fingerabdruck:
4143f759f4069d9a2d035ebd80eeef84bad76ea99736c54b64282192241f1980
✦
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-Komponentendiagramm mit Service-Interface-Spezifikation (AUTOSAR Adaptive Platform Modellierung).
- Architektur-Kontext: AUTOSAR Adaptive Platform (R21-11), Functional Cluster Update and Configuration Management (UCM) in Interaktion mit State Management (SM).
- Technischer Zweck: Entkopplung der Update-Orchestrierung von der Systemzustandskontrolle. Das UCM (hier in der Rolle des UCM Subordinate) führt Software-Updates nicht eigenmächtig auf Prozessebene aus, sondern steuert den Lebenszyklus und die Ausführungsmodi der Machine über das servicifizierte Interface
UpdateRequest, welches vom State Management bereitgestellt wird.
2. Komponenten, Entitäten & Schnittstellen
- Akteure & Komponenten:
UCM Subordinate: Adaptive Application / Functional Cluster Component; agiert als Service-Consumer (Client) für Update-Abläufe auf Maschinenebene.State Management(«aapFunctionalCluster», Ausprägung:daemon-based): Zentraler System-Daemon zur Koordination von Funktionsgruppen (FunctionGroupState), Maschinenmodi und Prozess-Lebenszyklen; agiert als Service-Provider (Server).
- Ports & Bindungen:
- Client-Port:
«aapRequiredPort»anUCM Subordinatemit Abhängigkeitsbeziehung («use») auf das Service-Interface. - Server-Port:
«aapProvidedPort»anState Managementmit Realisierungsbeziehung (Interface-Implementierung).
- Client-Port:
- Service Interface
UpdateRequest:- Stereotypen:
«aapAraComServiceInterface»,«aapInterface». Bindung erfolgt über die IPC-Transportschicht vonara::com. - Methodenspezifische Stereotypen:
«aapAccessControlled»(Absicherung über Identity and Access Management / IAM),«aapServiceMethod». - Methoden:
RequestUpdateSession(): Beantragt die exklusive Berechtigung zur Durchführung einer Update-Sitzung beim State Management.PrepareUpdate(): Weist SM an, betroffeneFunctionGroupsbzw. Software-Cluster in einen update-fähigen Ruhezustand zu überführen.VerifyUpdate(): Beauftragt SM mit der Funktions- und Integritätsprüfung nach Aktivierung des neuen Softwarestands.PrepareRollback(): Signalisiert SM die Einleitung der Rückfallebene bei fehlgeschlagener Verifikation oder Update-Abbruch.ResetMachine(): Fordert einen deterministischen Warmstart/Reboot der Machine an, um neue Partitionen/Softwarestände über das Execution Management zu mounten/starten.StopUpdateSession(): Beendet die Update-Sitzung und versetzt die Machine zurück in den regulären Betriebsmodus.
- Stereotypen:
3. Dynamisches Verhalten & Sequenzablauf
- Session-Initialisierung (Trigger: Eingehendes Software-Paket):
UCM Subordinateruft synchron/asynchronRequestUpdateSession()viaara::com.- State Management prüft globale System-Preconditions (z. B. Fahrzeugstillstand, Klemmenstatus, Diagnosemodus) und quittiert oder verweigert die Sitzung.
- Vorbereitung (Staging Phase):
- Nach erfolgreichem Transfer/Extrahieren der Software-Cluster ruft UCM
PrepareUpdate(). - SM stoppt bzw. degradiert abhängige Applikationsprozesse über das Execution Management (
ara::exec).
- Nach erfolgreichem Transfer/Extrahieren der Software-Cluster ruft UCM
- Aktivierung & Neustart:
- Nach erfolgreicher Vorbereitung triggert UCM
ResetMachine(). - SM initiiert den kontrollierten Machine-State-Wechsel (Reboot/Shutdown).
- Nach erfolgreicher Vorbereitung triggert UCM
- Verifikation & Abschluss / Rollback:
- Nach dem Hochlauf veranlasst UCM über
VerifyUpdate()die Verifikationsphase. - Erfolgspfad: SM meldet stabile Prozesszustände; UCM ruft
StopUpdateSession(), womit die neue Version persistent geschaltet wird. - Fehlerpfad: Timeout oder Fehlfunktion; UCM initiiert
PrepareRollback(), gefolgt vonResetMachine(), um den vorherigen Softwarestand zu reaktivieren.
- Nach dem Hochlauf veranlasst UCM über
4. Normative Relevanz & Entwickler-Hinweise
- Access Control & IAM (SWS / Manifeste): Da das Interface mit
«aapAccessControlled»annotiert ist, muss im Service Instance Manifest und Execution Manifest ein entsprechendesGrantfür den UCM-Prozess konfiguriert sein. Nicht autorisierte Aufrufe werden vomara::com/IAM-Layer mit Security-Fehlern abgewiesen. - Plattform-Zustandsverantwortung: Applikations- und UCM-Entwickler dürfen keine direkten OS-Reboots (z. B. POSIX
reboot(),kill()) aufrufen. Der Maschinenzustand darf ausschließlich deklarativ über SM und dessen Anbindung anExecution Managementgewechselt werden. - Fehlerbehandlung (
ara::core::Result): Sämtliche Methodenaufrufe erfordern robuste Auswertung von Rückgabecodes / Exceptions (insb.UcmErrorDomainbzw.SmErrorDomain). Ein Ablehnen vonRequestUpdateSession()muss von UCM an das externe Diagnose- bzw. OTA-Backend propagiert werden (z. B. NRCConditionsNotCorrect). - Daemon-Abhängigkeit:
State Managementläuft als nativer Plattform-Daemon. Startreihenfolgen und IPC-Verbindungsaufbau viaara::commüssen über das Execution Manifest so synchronisiert sein, dassUpdateRequestvor Beginn jeglicher UCM-Aktivitäten bindbar ist.
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.