AUTOSAR_AP_SWS_StateManagement
FIG-6f60dd7185302f5a
932 × 1027 px
1 Release(s)
Figure 7.13: StateMachine change
SHA-256 Inhalts-Fingerabdruck:
6f60dd7185302f5a3163b82c518e264e0b80c6fb4d1310c6af89fff61c28a1bc
✦
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 2.x Sequenzdiagramm (Interaktionsdiagramm) mit kombinierten Fragmenten (
alt-Operatoren) und Zustandsinvarianten (State Invariants:Current State: Off,Current State: On). - Funktionale Einordnung: AUTOSAR Adaptive Platform (AP), Spezifikation
AUTOSAR_AP_SWS_StateManagement(Release R25-11). - Technischer Zweck: Normative Modellierung des Protokolls für Zustandsübergänge (State Transitions) innerhalb des Functional Clusters State Management (SM) gemäß RS_SM_00001 und RS_SM_00005. Das Diagramm spezifiziert die Request-Validierung gegen statisch konfigurierte Tabellen, die asynchrone Zustandsbenachrichtigung an Observer sowie die Ausführung gekoppelter Aktionen (
ActionLists) inklusive strukturierter Fehlerpfade (SWS_SM_00607, SWS_SM_00650).
2. Komponenten, Entitäten & Schnittstellen
- Beteiligte Instanzen & Stereotypen:
«Service» StateMachineService: Service-Interface (Provided Port des SM, Consumed Port von Client-Applikationen / Funktionsträgern). Bietet die SteuerungsschnittstelleRequestTransition(TransitionRequest).«Service» StateMachineNotification: Service-Interface (Provided Port des SM, Event-/Field-Notifier). Informiert Observer über Zwischen- (InTransition) und Endzustände (State On).State Management: Zentraler Functional Cluster (Daemon/Runtime-Entität), der die interne State Machine betreibt und Aktionen orchestriert.
- Datenstrukturen & Artefakte:
TransitionRequest: Formaler Übergangsparameter (Enumeration/Identifier).TransitionRequestTable: Im ARXML-Manifest hinterlegte Übergangstabelle, welche Paare aus Quellzustand und Trigger auf Zielzustände abbildet.ActionListItems: Konfigurierte atomare Ausführungsbefehle des Zielzustands (z. B. Prozessstarts/-stopps via Execution Management, Schnittstellen-Konfigurationen).
- Rückgabe-/Fehlercodes (
ara::core::ErrorCode):kInvalidValue: Der übergebeneTransitionRequestexistiert nicht im Systemmodell.kTransitionNotAllowed: Der Trigger ist zwar global bekannt, aus dem aktuellen Zustand (Current State: Off) jedoch unzulässig.kTransitionFailed: Fehler während der sequentiellen Abarbeitung derActionListItems.
3. Dynamisches Verhalten & Sequenzablauf
- Trigger & Vorbedingung:
- Invariante: Zustand ist
Current State: Off. - Aufruf von
RequestTransition(TransitionRequest)viaStateMachineServicean das State Management.
- Invariante: Zustand ist
- Validierung (
alt-Fragment 1):- Prüfung: SM führt Lookup in
TransitionRequestTableaus. - Pfad 1 (Ungültiger Trigger):
[Invalid: TransitionRequest not in table]→ Direkte FehlerrückgabekInvalidValue. - Pfad 2 (Unzulässiger Übergang):
[Invalid: TransitionRequest not allowed from the current state]→ Direkte FehlerrückgabekTransitionNotAllowed. - Pfad 3 (Erfolg / Validiert):
[Request valid]:- SM emittiert Event
InTransitionüberStateMachineNotification. - Zustandswechsel auf Folgezustand (
Current State: On) basierend auf Tabellen-Lookup.
- SM emittiert Event
- Prüfung: SM führt Lookup in
- Aktionsausführung & Abschluss (
alt-Fragment 2):- Invariante: Zustand wechselt auf
Current State: On. - SM startet die Abarbeitung aller zugeordneten
ActionListItems. - Pfad 1 (Aktionsfehler):
[Error during processing]→ Rückgabe vonkTransitionFailedanStateMachineService. Übergang in gesonderte Error-Handling-Routine. - Pfad 2 (Erfolg):
[Success]:- SM sendet Statusmeldung
State OnüberStateMachineNotification. - Erfolgreiche Bestätigung (Return) des ursprünglichen
RequestTransition-Aufrufs.
- SM sendet Statusmeldung
- Invariante: Zustand wechselt auf
4. Normative Relevanz & Entwickler-Hinweise
- Synchronisations- & Threading-Modell:
RequestTransition()besitzt synchrone Blockier- bzw. Future-Charakteristik (ara::core::Future<void>). Die Operation schließt erst ab, nachdem sämtlicheActionListItemsdes Zielzustands abgearbeitet oder auf Fehler gelaufen sind. Aufrufer müssen entsprechende Timeouts und Latenzen für Aktionsketten einplanen. - Entkopplung über Notification-Services: Zustandsabhängige Applikationen dürfen den Abschluss einer Transition nicht durch zyklisches Polling abfragen, sondern müssen
StateMachineNotificationabonnieren, um aufInTransition(Vorbereitungsphase) undState On(Betriebsbereitschaft) zu reagieren. - ARXML-Konfigurationsanforderung: Die
TransitionRequestTablemuss vollständig und deterministisch spezifiziert sein. Jeder nicht explizit erlaubte Übergang führt deterministisch zukTransitionNotAllowedoderkInvalidValue(Fail-Fast nach SWS_SM_00607). - Fehlerbehandlung: Der Empfang von
kTransitionFailedsignalisiert einen partiellen oder vollständigen Fehlschlag bei der Aktivierung der Ziel-Aktionsliste. Das System verbleibt in einem potenziell inkonsistenten Zwischenzustand, der über definierte Fallback-/Recovery-Mechanismen (Safe State) aufgelöst werden muss.
Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.