textual-notation-of-model/packages/features/aebs/aebs_visualization_physical_software_realization.sysml
3 view(s) · 109 declared member(s) Jump to source ↓
view aebsVisualizationPhysicalStructureViewsource ↓
| Viewpoint | selectedPhysicalStructureViewpoint (PhysicalStructureDefinitionViewpoint) |
|---|---|
| Concern | visualizationPhysicalStructureConcern |
| Render | asTreeDiagram |
| Exposes | physicalSystemphysicalSystem::pinnedAebphysicalSystem::coordinatorphysicalSystem::sourceAdapterphysicalSystem::transportphysicalSystem::iviGuestphysicalSystem::iviGuest::gatewayIngressphysicalSystem::iviGuest::dataTunnelphysicalSystem::iviGuest::displayAppphysicalSystem::evidenceRecordergateIviBuildBootgateFrameworkServicesgateGatewayJavaSamplegateNativeToJavaPayloadgateVmToVmConnectivitygateNoUpstreamForkrealizationKillGate |
| Source | textual-notation-of-model/packages/features/aebs/aebs_visualization_physical_software_realization.sysml:346 |
Hover a model element for details open raw SVG.
view aebsVisualizationPhysicalInternalExchangeViewsource ↓
| Viewpoint | selectedPhysicalExchangeViewpoint (PhysicalInternalExchangeViewpoint) |
|---|---|
| Concern | visualizationPhysicalExchangeConcern |
| Render | asInterconnectionDiagram |
| Depth | -1 |
| Exposes | physicalSystemphysicalSystem::** |
| Source | textual-notation-of-model/packages/features/aebs/aebs_visualization_physical_software_realization.sysml:371 |
Hover a model element for details open raw SVG.
view aebsVisualizationPhysicalLogicalMappingViewsource ↓
| Viewpoint | selectedPhysicalLogicalViewpoint (PhysicalLogicalMappingViewpoint) |
|---|---|
| View type | MVD::MatrixView |
| Concern | visualizationProvenanceMappingConcern |
| Exposes | logicalSystem::nativeAebSourcelogicalSystem::coordinatorSourcelogicalSystem::sourceAdapterlogicalSystem::transportlogicalSystem::ingresslogicalSystem::displayServicelogicalSystem::applicationlogicalSystem::evidencelogicalSystem::healthSupervisorphysicalSystem::pinnedAebphysicalSystem::coordinatorphysicalSystem::sourceAdapterphysicalSystem::transportphysicalSystem::iviGuest::gatewayIngressphysicalSystem::iviGuest::dataTunnelphysicalSystem::iviGuest::displayAppphysicalSystem::evidenceRecorderDE4SDV_AEBSVisualizationPhysicalSoftwareRealization::* |
| Source | textual-notation-of-model/packages/features/aebs/aebs_visualization_physical_software_realization.sysml:384 |
Hover a model element for details open raw SVG.
Source
1/*2 * DE4SDV AEBS visualization selected physical/software realization slice.3 *4 * INC-AEBS-010 Phase 8: source-backed selection of concrete components,5 * pinned revisions, exchange types, and deployment roles for the reverse6 * visualization chain:7 *8 * pinned native Autoware AEB + existing DE4SDV 009B coordinator9 * -> read-only ROS 2 visualization adapter10 * -> bounded length-delimited transport (new port; not the INC-MW-010 port)11 * -> native SDV Gateway publisher in the sdv_ivi_cf IVI guest12 * -> SDV Gateway Data Tunnel13 * -> Java AAOS center-display application14 *15 * Provenance rule: native RSS, filtered obstacle cloud, and the exact native16 * intervention diagnostic are selected Autoware-originated sources. The17 * coordinator's combined risk-assessment object distance is DE4SDV-derived18 * and is never relabeled as native Autoware output. Virtual wall, debug19 * markers, metrics, and the blocked predicted-trajectory branch remain20 * deferred. No execution evidence is claimed by this slice; the mandatory21 * readiness preflight is recorded as gates, not as results.22 */2324package DE4SDV_AEBSVisualizationPhysicalSoftwareRealization {25 private import DE4SDV_MethodContext::*;26 private import DE4SDV_Stakeholders::*;27 private import DE4SDV_AEBSVisualizationFraming::*;28 private import DE4SDV_AEBSVisualizationFunctionalArchitecture::*;29 private import DE4SDV_AEBSVisualizationLogicalArchitecture::*;30 private import DE4SDV_AEBSPhysicalSoftwareRealization::*;31 private import DE4SDV_ROS2Types::*;32 private import SAF_Viewpoints::*;33 private import SysideViews::**;34 private import Views::*;3536 /* ──────────────────────────────────────────37 * Selected concrete realization elements38 * ────────────────────────────────────────── */3940 part def PinnedAutowareAEBExecution :> AutowareAutonomousEmergencyBrakingNode {41 doc /*42 * The pinned native Autoware AEB node (commit43 * f603d8759c92fb2f423f1544844e13086d79ad09) executed in the existing 009B44 * bench. Selected as the Autoware-originated source: RSS distance,45 * filtered obstacle cloud, and the aeb_emergency_stop diagnostic.46 */47 }4849 part def De4sdv009bCoordinatorExecution {50 doc /*51 * The existing 009B coordinator run unchanged in its bench. Selected as52 * the DE4SDV-originated source of warning request, braking request, and53 * intervention lifecycle state. Composed, never copied.54 */55 port warningRequestOut;56 port brakingRequestOut;57 port lifecycleStateOut;58 }5960 part def Ros2VisualizationSourceAdapter {61 doc /*62 * Python ROS 2 adapter node with subscriptions only. Assembles the63 * versioned visualization frame and enforces per-field provenance.64 * Selected realization of the source-adapter logical role.65 */66 port rssDistanceIn : NativeAEBMetricInput;67 port obstacleCloudIn : NativeAEBObstacleInput;68 port diagnosticsIn : NativeAEBDiagnosticInput;69 port warningIn : De4sdvWarningInput;70 port brakingIn : De4sdvBrakingInput;71 port lifecycleIn : De4sdvLifecycleInput;72 port frameOut : VisualizationFrameOutput;73 }7475 part def BoundedLengthDelimitedTransport {76 doc /*77 * Bounded length-delimited frame stream on a NEW allocated port. The78 * historical INC-MW-010 transport port is not reused and carries no79 * inherited evidence.80 */81 port frameIn : VisualizationFrameInput;82 port frameOut : VisualizationFrameOutput;83 }8485 part def SdvIviCfGuestTarget {86 doc /*87 * Display-capable AAOS SDV IVI guest built from88 * sdv_ivi_cf-aosp_current-userdebug, pinned to an exact AOSP manifest89 * revision at execution time. Replaces the headless sdv_core_cf target,90 * whose evidence is not transferable to an HMI realization.91 */92 }9394 part def SdvGatewayIngressService {95 doc /*96 * Native ingress service in the IVI guest using libsdvgatewayclient:97 * validates incoming frames and publishes via the SDV Gateway Data98 * Tunnel. Selected realization of the ingress logical role.99 */100 port frameIn : VisualizationFrameInput;101 port frameOut : VisualizationFrameOutput;102 }103104 part def SdvGatewayDataTunnelService {105 doc /*106 * The supported AAOS SDV Gateway Data Tunnel publication/subscription107 * path between ingress service and application. No vendored or modified108 * upstream samples; documented client APIs only.109 */110 port publishedIn : VisualizationPublicationOutput;111 port subscriptionOut : VisualizationSubscriptionInput;112 }113114 part def JavaCenterDisplayApplication {115 doc /*116 * Java privileged/system AAOS application subscribing via the documented117 * SDV Gateway Java client and rendering the AEBS threat/intervention118 * center-display view. Selected realization of the application logical119 * role.120 */121 port frameIn : VisualizationSubscriptionInput;122 port renderedOut : RenderedStateOutput;123 }124125 part def VisualizationEvidenceRecorder {126 port renderedIn : RenderedStateOutput;127 doc /* Deterministic campaign recorder and independent replay validator host. */128 }129130 /* ──────────────────────────────────────────131 * Physical composition132 * ────────────────────────────────────────── */133134 part def AEBSVisualizationPhysicalSystem {135 doc /* Selected end-to-end physical decomposition across both hosts. */136137 part pinnedAeb : PinnedAutowareAEBExecution;138 part coordinator : De4sdv009bCoordinatorExecution;139 part sourceAdapter : Ros2VisualizationSourceAdapter;140 part transport : BoundedLengthDelimitedTransport;141 part iviGuest : SdvIviCfGuestTarget {142 part gatewayIngress : SdvGatewayIngressService;143 part dataTunnel : SdvGatewayDataTunnelService;144 part displayApp : JavaCenterDisplayApplication;145 }146 part evidenceRecorder : VisualizationEvidenceRecorder;147148 // Source-side connections reuse the selected Autoware publications.149 connection rssDistanceSource150 connect pinnedAeb.rssDistanceOut to sourceAdapter.rssDistanceIn;151 connection obstacleCloudSource152 connect pinnedAeb.debugPointCloudOut to sourceAdapter.obstacleCloudIn;153 connection diagnosticSource154 connect pinnedAeb.diagnosticsOut to sourceAdapter.diagnosticsIn;155156 // Coordinator outputs remain DE4SDV-derived; provenance is per-field.157 connection warningSource158 connect coordinator.warningRequestOut to sourceAdapter.warningIn;159 connection brakingSource160 connect coordinator.brakingRequestOut to sourceAdapter.brakingIn;161 connection lifecycleSource162 connect coordinator.lifecycleStateOut to sourceAdapter.lifecycleIn;163164 // Reverse visualization flow only; no command path exists anywhere.165 connection adapterToTransport166 connect sourceAdapter.frameOut to transport.frameIn;167 connection transportToIngress168 connect transport.frameOut to iviGuest.gatewayIngress.frameIn;169 connection ingressToTunnel170 connect iviGuest.gatewayIngress.frameOut to iviGuest.dataTunnel.publishedIn;171 connection tunnelToApplication172 connect iviGuest.dataTunnel.subscriptionOut to iviGuest.displayApp.frameIn;173 connection applicationToEvidence174 connect iviGuest.displayApp.renderedOut to evidenceRecorder.renderedIn;175 }176177 part physicalSystem : AEBSVisualizationPhysicalSystem;178179 /* Logical-to-physical allocation for the selected realization. */180 allocation def LogicalRoleToPhysicalRealization;181182 allocation aebSourceAllocated : LogicalRoleToPhysicalRealization183 allocate logicalSystem.nativeAebSource184 to physicalSystem.pinnedAeb;185186 allocation coordinatorAllocated : LogicalRoleToPhysicalRealization187 allocate logicalSystem.coordinatorSource188 to physicalSystem.coordinator;189190 allocation adapterAllocated : LogicalRoleToPhysicalRealization191 allocate logicalSystem.sourceAdapter192 to physicalSystem.sourceAdapter;193194 allocation transportAllocated : LogicalRoleToPhysicalRealization195 allocate logicalSystem.transport196 to physicalSystem.transport;197198 allocation ingressAllocated : LogicalRoleToPhysicalRealization199 allocate logicalSystem.ingress200 to physicalSystem.iviGuest.gatewayIngress;201202 allocation serviceAllocated : LogicalRoleToPhysicalRealization203 allocate logicalSystem.displayService204 to physicalSystem.iviGuest.dataTunnel;205206 allocation applicationAllocated : LogicalRoleToPhysicalRealization207 allocate logicalSystem.application208 to physicalSystem.iviGuest.displayApp;209210 allocation evidenceAllocated : LogicalRoleToPhysicalRealization211 allocate logicalSystem.evidence212 to physicalSystem.evidenceRecorder;213214 allocation healthAllocated : LogicalRoleToPhysicalRealization215 allocate logicalSystem.healthSupervisor216 to physicalSystem.iviGuest.displayApp;217218 /* ──────────────────────────────────────────219 * Source provenance records220 * ────────────────────────────────────────── */221222 part def VisualizationSourceContributionRecord :> SourceContributionRecord {223 doc /* Records which provenance kind a physical source contributes. */224 attribute provenanceKindValue : ScalarValues::String;225 }226227 part nativeRssProvenance : VisualizationSourceContributionRecord {228 doc /* Native Autoware AEB RSS distance: ~/debug/rss_distance (Float32Stamped). */229 ref part physicalSource = physicalSystem.pinnedAeb;230 attribute :>> provenanceKindValue = "nativeAutowareAEB";231 }232233 part nativeObstacleProvenance : VisualizationSourceContributionRecord {234 doc /* Native Autoware AEB filtered obstacle cloud: ~/debug/obstacle_pointcloud. */235 ref part physicalSource = physicalSystem.pinnedAeb;236 attribute :>> provenanceKindValue = "nativeAutowareAEB";237 }238239 part nativeInterventionProvenance : VisualizationSourceContributionRecord {240 doc /*241 * Native intervention: exact diagnostic tuple autonomous_emergency_braking:242 * aeb_emergency_stop / ERROR / "[AEB]: Emergency Brake".243 */244 ref part physicalSource = physicalSystem.pinnedAeb;245 attribute :>> provenanceKindValue = "nativeAutowareAEB";246 }247248 part coordinatorStateProvenance : VisualizationSourceContributionRecord {249 doc /*250 * Warning/braking/lifecycle state from the 009B coordinator is251 * DE4SDV-derived. The coordinator's combined risk-assessment object252 * distance is DE4SDV-derived and shall not be relabeled as native.253 */254 ref part physicalSource = physicalSystem.coordinator;255 attribute :>> provenanceKindValue = "de4sdvAebsCoordinator";256 }257258 part blockedPredictedTrajectoryRemainsDeferred : BlockedRealizationBranchRecord {259 doc /*260 * The predicted-trajectory branch stays blocked at the pinned source261 * revision (predecessor DEF-AEBS-PHY-001). It is not smuggled back in as262 * visualization content.263 */264 ref part pinnedSource = physicalSystem.pinnedAeb;265 }266267 dependency pinnedAebTracesToSourceArtifact268 from physicalSystem::pinnedAeb269 to DE4SDV_AEBSPhysicalSoftwareRealization::physicalSoftware::sourceArtifact;270271 dependency adapterReadsPinnedAeb272 from physicalSystem::sourceAdapter273 to physicalSystem::pinnedAeb;274 dependency adapterReadsCoordinator275 from physicalSystem::sourceAdapter276 to physicalSystem::coordinator;277 dependency transportCarriesFrames278 from physicalSystem::sourceAdapter279 to physicalSystem::transport;280 dependency ingressReceivesTransport281 from physicalSystem::iviGuest::gatewayIngress282 to physicalSystem::transport;283 dependency appConsumesTunnel284 from physicalSystem::iviGuest::displayApp285 to physicalSystem::iviGuest::dataTunnel;286287 /* ──────────────────────────────────────────288 * Mandatory readiness preflight gates (planned, not results)289 * ────────────────────────────────────────── */290291 part def ReadinessPreflightGate {292 doc /* One mandatory preflight gate. Outcomes are recorded only by execution evidence later in the chain. */293 }294295 part gateIviBuildBoot : ReadinessPreflightGate {296 doc /* PF-AEBS-010-001: Build and boot the pinned sdv_ivi_cf target. */297 }298 part gateFrameworkServices : ReadinessPreflightGate {299 doc /* PF-AEBS-010-002: Observe package manager, system server, display composition, vehicle service, and SDV Gateway. */300 }301 part gateGatewayJavaSample : ReadinessPreflightGate {302 doc /* PF-AEBS-010-003: Prove Data Tunnel discovery/subscription with the documented Java sample. */303 }304 part gateNativeToJavaPayload : ReadinessPreflightGate {305 doc /* PF-AEBS-010-004: Native Gateway publisher and Java subscriber exchange a bounded payload. */306 }307 part gateVmToVmConnectivity : ReadinessPreflightGate {308 doc /* PF-AEBS-010-005: IVI guest reaches the ROS-side frame server over the selected connection. */309 }310 part gateNoUpstreamFork : ReadinessPreflightGate {311 doc /* PF-AEBS-010-006: Documented Gateway APIs only; any fork/patch needs maintainer involvement and approval first. */312 }313314 part realizationKillGate : IncrementLifecycleDecision {315 doc /*316 * If any mandatory gate cannot be executed at the pinned revision, the317 * chain stops at Phase 8 with a blocked realization decision and a318 * separate enabling slice. No host webpage, screenshot mock, direct host319 * rendering, or unreviewed upstream fork is an acceptable fallback.320 */321 }322323 /* ──────────────────────────────────────────324 * Concerns and views325 * ────────────────────────────────────────── */326327 concern visualizationPhysicalStructureConcern : PhysicalStructureConcern {328 subject;329 stakeholder systemsEngineer : SystemsEngineer;330 stakeholder reviewer : OpenSourceReviewer;331 }332333 concern visualizationPhysicalExchangeConcern : PhysicalInternalExchangeConcern {334 subject;335 stakeholder systemsEngineer : SystemsEngineer;336 stakeholder reviewer : OpenSourceReviewer;337 }338339 concern visualizationProvenanceMappingConcern : PhysicalLogicalMappingConcern {340 subject;341 stakeholder systemsEngineer : SystemsEngineer;342 stakeholder maintainer : Maintainer;343 stakeholder reviewer : OpenSourceReviewer;344 }345346 view aebsVisualizationPhysicalStructureView {347 viewpoint selectedPhysicalStructureViewpoint : PhysicalStructureDefinitionViewpoint {348 frame visualizationPhysicalStructureConcern;349 }350351 expose physicalSystem;352 expose physicalSystem::pinnedAeb;353 expose physicalSystem::coordinator;354 expose physicalSystem::sourceAdapter;355 expose physicalSystem::transport;356 expose physicalSystem::iviGuest;357 expose physicalSystem::iviGuest::gatewayIngress;358 expose physicalSystem::iviGuest::dataTunnel;359 expose physicalSystem::iviGuest::displayApp;360 expose physicalSystem::evidenceRecorder;361 expose gateIviBuildBoot;362 expose gateFrameworkServices;363 expose gateGatewayJavaSample;364 expose gateNativeToJavaPayload;365 expose gateVmToVmConnectivity;366 expose gateNoUpstreamFork;367 expose realizationKillGate;368 render asTreeDiagram;369 }370371 view aebsVisualizationPhysicalInternalExchangeView {372 viewpoint selectedPhysicalExchangeViewpoint : PhysicalInternalExchangeViewpoint {373 frame visualizationPhysicalExchangeConcern;374 }375376 expose physicalSystem;377 expose physicalSystem::**;378 attribute depth = -1;379 attribute showAnnotationRows = false;380 attribute maxCompartmentEntries = 0;381 render asInterconnectionDiagram;382 }383384 view aebsVisualizationPhysicalLogicalMappingView : MVD::MatrixView {385 viewpoint selectedPhysicalLogicalViewpoint : PhysicalLogicalMappingViewpoint {386 frame visualizationProvenanceMappingConcern;387 }388 view :>> rowView {389 expose logicalSystem::nativeAebSource;390 expose logicalSystem::coordinatorSource;391 expose logicalSystem::sourceAdapter;392 expose logicalSystem::transport;393 expose logicalSystem::ingress;394 expose logicalSystem::displayService;395 expose logicalSystem::application;396 expose logicalSystem::evidence;397 expose logicalSystem::healthSupervisor;398 attribute :>> representation = Rep::name;399 }400 view :>> columnView {401 expose physicalSystem::pinnedAeb;402 expose physicalSystem::coordinator;403 expose physicalSystem::sourceAdapter;404 expose physicalSystem::transport;405 expose physicalSystem::iviGuest::gatewayIngress;406 expose physicalSystem::iviGuest::dataTunnel;407 expose physicalSystem::iviGuest::displayApp;408 expose physicalSystem::evidenceRecorder;409 attribute :>> representation = Rep::name;410 }411 view :>> cellView {412 expose DE4SDV_AEBSVisualizationPhysicalSoftwareRealization::*;413 attribute :>> direction = SysideViews::MatrixTraceabilityDirection::row2col;414 }415 }416}417