textual-notation-of-model/packages/features/middleware/mw_operational_context.sysml
3 view(s) · 105 declared member(s) view source on GitHub
view mwOperationalContextView
| Viewpoint | selectedOperationalContextViewpoint (OperationalContextDefinitionViewpoint) |
|---|---|
| Concern | operationalContextConcern |
| Render | asTreeDiagram |
| Depth | 1 |
| Exposes | MiddlewareOperationalContext |
| Source | textual-notation-of-model/packages/features/middleware/mw_operational_context.sysml:303 |
Hover a model element for details open raw SVG.
view mwOperationalStoryView
| Viewpoint | selectedOperationalStoryViewpoint (OperationalStoryViewpoint) |
|---|---|
| Concern | operationalStoryConcern |
| Render | asTreeDiagram |
| Depth | 1 |
| Exposes | OperationalContext::'integrate ADAS with vehicle platform'OperationalContext::'integrate ADAS with vehicle platform'::* |
| Source | textual-notation-of-model/packages/features/middleware/mw_operational_context.sysml:326 |
Hover a model element for details open raw SVG.
view mwOperationalCapabilityView
| Viewpoint | selectedOperationalCapabilityViewpoint (OperationalCapabilityDefinitionViewpoint) |
|---|---|
| Concern | operationalCapabilityConcern |
| Render | asTreeDiagram |
| Depth | 1 |
| Exposes | MiddlewareIntegrationOperationalCapability |
| Source | textual-notation-of-model/packages/features/middleware/mw_operational_context.sysml:352 |
Hover a model element for details open raw SVG.
Source
1/*2 * DE4SDV middleware operational context model slice.3 *4 * INC-MW-002 models the operational world for middleware integration only: no5 * AAOS SDV, Eclipse S-CORE, or AUTOSAR implementation details; no adapter6 * functional behavior; no logical realization; and no physical/software7 * realization.8 */910package DE4SDV_MWOperationalContext {11 package Features {12 package Middleware {13 package OperationalContext {14 private import DE4SDV_Stakeholders::*;15 private import SAF_Viewpoints::*;16 private import StandardViewDefinitions::*;17 private import Views::*;1819 item def LifecycleCommand {20 doc /* Start, stop, suspend, resume, and shutdown command bundle from the middleware lifecycle manager. */21 }2223 item def HealthStatus {24 doc /* Health and availability status forwarded from middleware to the ADAS application. */25 }2627 item def UpdateNotification {28 doc /* Over-the-air update coordination and notification data. */29 }3031 part def MiddlewareIntegratedVehicleSystem;32 part def ADASApplicationStack :> Stakeholder;33 part def VehiclePlatformMiddleware :> Stakeholder;34 part def SafetyCertifiedMiddlewarePartition :> VehiclePlatformMiddleware;35 part def ApplicationMiddlewareAdapter :> Stakeholder;36 part def DiagnosticTechnician :> Stakeholder;37 part def OTAUpdateCoordinator :> Stakeholder;38 part def AEBNode :> Stakeholder;39 part def VehicleCommandGate :> Stakeholder;4041 part def MiddlewareOperationalContext {42 doc /*43 * Operational environment for middleware integration. The owned roles44 * are the performers and resources involved; this context is not an45 * implementation decomposition of the intended solution.46 */47 part adasApplication : ADASApplicationStack;48 part vehicleMiddleware : VehiclePlatformMiddleware;49 part adapter : ApplicationMiddlewareAdapter;50 part diagnosticTechnician : DiagnosticTechnician;51 part otaCoordinator : OTAUpdateCoordinator;52 part aebNode : AEBNode;53 part vehicleCommandGate : VehicleCommandGate;54 }5556 part middlewareOperationalContext : MiddlewareOperationalContext;5758 part def VehicleSignalExchangeCapability;59 part def DiagnosticAccessCapability;60 part def LifecycleCoordinationCapability;61 part def ServiceHealthMonitoringCapability;62 part def SoftwareUpdateCoordinationCapability;63 part def SafetyPathProtectionCapability;6465 part def MiddlewareIntegrationOperationalCapability {66 doc /* Stakeholder-visible capability taxonomy for middleware integration. */67 part vehicleSignalExchange : VehicleSignalExchangeCapability;68 part diagnosticAccess : DiagnosticAccessCapability;69 part lifecycleCoordination : LifecycleCoordinationCapability;70 part serviceHealthMonitoring : ServiceHealthMonitoringCapability;71 part softwareUpdateCoordination : SoftwareUpdateCoordinationCapability;72 part safetyPathProtection : SafetyPathProtectionCapability;73 }7475 part middlewareIntegrationCapability : MiddlewareIntegrationOperationalCapability;7677 use case 'integrate ADAS with vehicle platform' {78 subject middlewareOperationalContext : MiddlewareOperationalContext;79 actor adasApplication : ADASApplicationStack;80 actor vehicleMiddleware : VehiclePlatformMiddleware;81 actor adapter : ApplicationMiddlewareAdapter;82 actor diagnosticTechnician : DiagnosticTechnician;83 actor otaCoordinator : OTAUpdateCoordinator;84 actor aebNode : AEBNode;85 actor vehicleCommandGate : VehicleCommandGate;8687 objective {88 doc /*89 * Enable safe and managed exchange of vehicle signals, diagnostics,90 * lifecycle, health, and updates between the ADAS application and91 * the vehicle platform.92 *93 * The operational story presents both emergency intervention94 * options — through a safety-certified middleware partition and95 * via a direct vehicle-command path — without deciding between96 * them. The selection is deferred to requirements and logical97 * architecture phases.98 */99 }100101 first start;102 then include 'exchange vehicle signals' {103 subject;104 actor :>> adasApplication = 'integrate ADAS with vehicle platform'::adasApplication;105 actor :>> vehicleMiddleware = 'integrate ADAS with vehicle platform'::vehicleMiddleware;106 actor :>> adapter = 'integrate ADAS with vehicle platform'::adapter;107 }108 then include 'coordinate lifecycle' {109 subject;110 actor :>> adasApplication = 'integrate ADAS with vehicle platform'::adasApplication;111 actor :>> vehicleMiddleware = 'integrate ADAS with vehicle platform'::vehicleMiddleware;112 actor :>> adapter = 'integrate ADAS with vehicle platform'::adapter;113 }114 then include 'monitor service health' {115 subject;116 actor :>> adasApplication = 'integrate ADAS with vehicle platform'::adasApplication;117 actor :>> vehicleMiddleware = 'integrate ADAS with vehicle platform'::vehicleMiddleware;118 actor :>> adapter = 'integrate ADAS with vehicle platform'::adapter;119 }120 then include 'access diagnostics' {121 subject;122 actor :>> diagnosticTechnician = 'integrate ADAS with vehicle platform'::diagnosticTechnician;123 actor :>> vehicleMiddleware = 'integrate ADAS with vehicle platform'::vehicleMiddleware;124 actor :>> adapter = 'integrate ADAS with vehicle platform'::adapter;125 }126 then include 'coordinate software update' {127 subject;128 actor :>> otaCoordinator = 'integrate ADAS with vehicle platform'::otaCoordinator;129 actor :>> vehicleMiddleware = 'integrate ADAS with vehicle platform'::vehicleMiddleware;130 actor :>> adapter = 'integrate ADAS with vehicle platform'::adapter;131 }132 then include 'emergency intervention via safety path' [0..1] {133 subject;134 actor :>> aebNode = 'integrate ADAS with vehicle platform'::aebNode;135 actor :>> vehicleCommandGate = 'integrate ADAS with vehicle platform'::vehicleCommandGate;136 }137 then include 'emergency intervention direct path' [0..1] {138 subject;139 actor :>> aebNode = 'integrate ADAS with vehicle platform'::aebNode;140 actor :>> vehicleCommandGate = 'integrate ADAS with vehicle platform'::vehicleCommandGate;141 }142 then done;143 }144145 use case 'exchange vehicle signals' {146 subject middlewareOperationalContext : MiddlewareOperationalContext;147 actor adasApplication : ADASApplicationStack;148 actor vehicleMiddleware : VehiclePlatformMiddleware;149 actor adapter : ApplicationMiddlewareAdapter;150151 objective {152 doc /*153 * Exchange normal-driving vehicle signals through VSS-backed154 * interfaces so the ADAS application can consume vehicle speed,155 * yaw rate, longitudinal acceleration, and steering wheel angle.156 *157 * VSS signal references: Vehicle_Speed,158 * Vehicle_AngularVelocity_Yaw,159 * Vehicle_Acceleration_Longitudinal,160 * Vehicle_Chassis_SteeringWheel_Angle.161 */162 }163164 first start;165 then done;166 }167168 use case 'coordinate lifecycle' {169 subject middlewareOperationalContext : MiddlewareOperationalContext;170 actor adasApplication : ADASApplicationStack;171 actor vehicleMiddleware : VehiclePlatformMiddleware;172 actor adapter : ApplicationMiddlewareAdapter;173174 objective {175 doc /*176 * Coordinate vehicle startup and shutdown lifecycle transitions via177 * middleware-managed lifecycle commands.178 *179 * VSS-related lifecycle state and mode transitions are represented180 * through the operational handoff between the ADAS application and181 * the vehicle platform, including init, running, suspend, resume,182 * and shutdown coordination.183 */184 }185186 first start;187 then done;188 }189190 use case 'monitor service health' {191 subject middlewareOperationalContext : MiddlewareOperationalContext;192 actor adasApplication : ADASApplicationStack;193 actor vehicleMiddleware : VehiclePlatformMiddleware;194 actor adapter : ApplicationMiddlewareAdapter;195196 objective {197 doc /*198 * Monitor service health and fault conditions so the ADAS199 * application can detect degraded or unavailable middleware200 * services and respond to health status updates.201 *202 * VSS signal references: Vehicle_ADAS_AEBS_IsError,203 * Vehicle_ADAS_AEBS_FailureIndication_IsActive.204 */205 }206207 first start;208 then done;209 }210211 use case 'access diagnostics' {212 subject middlewareOperationalContext : MiddlewareOperationalContext;213 actor diagnosticTechnician : DiagnosticTechnician;214 actor vehicleMiddleware : VehiclePlatformMiddleware;215 actor adapter : ApplicationMiddlewareAdapter;216217 objective {218 doc /*219 * Provide authenticated diagnostic access during service so a220 * technician can inspect vehicle and ADAS diagnostic state through221 * middleware-mediated diagnostic services.222 *223 * VSS signal references: Vehicle_ADAS_AEBS_IsError and related224 * diagnostic-state indicators exposed through the platform.225 */226 }227228 first start;229 then done;230 }231232 use case 'coordinate software update' {233 subject middlewareOperationalContext : MiddlewareOperationalContext;234 actor otaCoordinator : OTAUpdateCoordinator;235 actor vehicleMiddleware : VehiclePlatformMiddleware;236 actor adapter : ApplicationMiddlewareAdapter;237238 objective {239 doc /*240 * Coordinate over-the-air software updates so the middleware can241 * manage service dependencies, safe vehicle states, partition-aware242 * update sequencing, and rollback consistency.243 */244 }245246 first start;247 then done;248 }249250 use case 'emergency intervention via safety path' {251 subject middlewareOperationalContext : MiddlewareOperationalContext;252 actor aebNode : AEBNode;253 actor vehicleMiddleware : SafetyCertifiedMiddlewarePartition;254 actor vehicleCommandGate : VehicleCommandGate;255256 objective {257 doc /*258 * Route emergency braking through a safety-certified middleware259 * partition to maintain unified lifecycle and health monitoring260 * while ensuring safety integrity.261 *262 * This option assumes the middleware path is qualified to the263 * required ASIL level and preserves a single managed operational264 * chain for monitoring and update control.265 */266 }267268 first start;269 then done;270 }271272 use case 'emergency intervention direct path' {273 subject middlewareOperationalContext : MiddlewareOperationalContext;274 actor aebNode : AEBNode;275 actor vehicleCommandGate : VehicleCommandGate;276277 objective {278 doc /*279 * Route emergency braking directly to the vehicle command gate,280 * bypassing the middleware, to minimize latency and avoid281 * dependency on middleware safety qualification.282 *283 * This option creates a parallel communication path and therefore284 * must be assessed later against lifecycle, health, and assurance285 * implications.286 */287 }288289 first start;290 then done;291 }292293 concern operationalContextConcern : OperationalContextConcern {294 doc /*295 * Reviewers need the operational actors, context boundary, and both296 * emergency path options visible for this increment.297 */298 subject;299 stakeholder systemsEngineer : SystemsEngineer;300 stakeholder reviewer : OpenSourceReviewer;301 }302303 view mwOperationalContextView {304 viewpoint selectedOperationalContextViewpoint : OperationalContextDefinitionViewpoint {305 frame operationalContextConcern;306 }307308 expose MiddlewareOperationalContext;309 attribute depth = 1;310 attribute showAnnotationRows = false;311 attribute maxCompartmentEntries = 7;312 render asTreeDiagram;313 }314315 concern operationalStoryConcern : OperationalStoryConcern {316 doc /*317 * Reviewers need the operational story to show vehicle signal318 * exchange, lifecycle, health, diagnostics, updates, and both319 * emergency intervention options.320 */321 subject;322 stakeholder systemsEngineer : SystemsEngineer;323 stakeholder reviewer : OpenSourceReviewer;324 }325326 view mwOperationalStoryView {327 viewpoint selectedOperationalStoryViewpoint : OperationalStoryViewpoint {328 frame operationalStoryConcern;329 }330331 expose OperationalContext::'integrate ADAS with vehicle platform';332 expose OperationalContext::'integrate ADAS with vehicle platform'::*;333 attribute depth = 1;334 attribute showAnnotationRows = false;335 render asTreeDiagram;336 }337338 concern operationalCapabilityConcern : OperationalCapabilityConcern {339 doc /*340 * Reviewers need the operational capability expected from the341 * middleware integration to be described: the system shall be able342 * to exchange vehicle signals, diagnostics, lifecycle coordination,343 * health status, and software updates between an ADAS application344 * and a vehicle-level platform middleware, while presenting both345 * emergency intervention options instead of pre-deciding the path.346 */347 subject;348 stakeholder systemsEngineer : SystemsEngineer;349 stakeholder reviewer : OpenSourceReviewer;350 }351352 view mwOperationalCapabilityView {353 viewpoint selectedOperationalCapabilityViewpoint : OperationalCapabilityDefinitionViewpoint {354 frame operationalCapabilityConcern;355 }356357 expose MiddlewareIntegrationOperationalCapability;358 attribute depth = 1;359 attribute showAnnotationRows = false;360 attribute maxCompartmentEntries = 6;361 render asTreeDiagram;362 }363 }364 }365 }366}367