textual-notation-of-model/packages/features/aebs/aebs_visualization_logical_architecture.sysml

2 view(s) · 102 declared member(s) Jump to source ↓

view aebsVisualizationLogicalStructureViewsource ↓

ViewpointselectedLogicalStructureViewpoint (SystemStructureDefinitionViewpoint)
ConcernvisualizationLogicalStructureConcern
RenderasTreeDiagram
ExposeslogicalSystem
logicalSystem::nativeAebSource
logicalSystem::coordinatorSource
logicalSystem::sourceAdapter
logicalSystem::transport
logicalSystem::ingress
logicalSystem::displayService
logicalSystem::application
logicalSystem::evidence
logicalSystem::healthSupervisor
Sourcetextual-notation-of-model/packages/features/aebs/aebs_visualization_logical_architecture.sysml:270
diagram-aebsVisualizationLogicalStructureView.svg
«view» aebsVisualizationLogicalStructureView expose logicalSystem expose logicalSystem::nativeAebSource expose logicalSystem::coordinatorSource expose logicalSystem::sourceAdapter expose logicalSystem::transport expose logicalSystem::ingress expose logicalSystem::displayService expose logicalSystem::application expose logicalSystem::evidence expose logicalSystem::healthSupervisor «part» logicalSystem : AEBSVisualizationLogicalSystem parts ^sourceAdapter ^sourceAdapter ^sourceAdapter ^healthSupervisor ^transport ^ingress ^application ^evidence «part» ^nativeAebSource : NativeAEBSourceRole «part» ^coordinatorSource : De4sdvCoordinatorSourceRole «part» ^displayService : DisplayServiceRole «allocate» validateByAdapter : LogicalRoleToFunction «allocate» superviseByHealth : LogicalRoleToFunction «allocate» transportByTransport : LogicalRoleToFunction «allocate» publishByIngress : LogicalRoleToFunction «allocate» presentByApplication : LogicalRoleToFunction «allocate» recordByEvidence : LogicalRoleToFunction «allocate» observeBySources : LogicalRoleToFunction «allocate» assembleByAdapter : LogicalRoleToFunction

Hover a model element for details open raw SVG.

view aebsVisualizationLogicalInternalExchangeViewsource ↓

ViewpointselectedLogicalExchangeViewpoint (SystemInternalExchangeViewpoint)
ConcernvisualizationLogicalExchangeConcern
RenderasInterconnectionDiagram
Depth-1
ExposeslogicalSystem
logicalSystem::**
Sourcetextual-notation-of-model/packages/features/aebs/aebs_visualization_logical_architecture.sysml:288
diagram-aebsVisualizationLogicalInternalExchangeView.svg
«view» aebsVisualizationLogicalInternalExchangeView expose logicalSystem expose logicalSystem::** «part» logicalSystem : AEBSVisualizationLogicalSystem «part» ^nativeAebSource : NativeAEBSourceRole ^rssDistanceOut ^rssDistance : Float32StampedMessage redefines payload ^obstacleCloudOut ^debugPointCloud : DebugPointCloudMessage redefines payload ^diagnosticsOut ^diagnostics : DiagnosticArrayMessage redefines payload «part» ^coordinatorSource : De4sdvCoordinatorSourceRole ^warningRequestOut ^brakingRequestOut ^lifecycleStateOut «part» ^displayService : DisplayServiceRole ^publishedIn ^visualizationFrame : AEBSVisualizationFrame ^subscriptionOut ^visualizationFrame : AEBSVisualizationFrame «connection» lifecycleObservation «end» source ::> coordinatorSource.lifecycleStateOut «end» target ::> sourceAdapter.lifecycleIn «connection» brakingObservation «end» source ::> coordinatorSource.brakingRequestOut «end» target ::> sourceAdapter.brakingIn «connection» warningObservation «end» source ::> coordinatorSource.warningRequestOut «end» target ::> sourceAdapter.warningIn «connection» diagnosticObservation «end» source ::> nativeAebSource.diagnosticsOut «end» target ::> sourceAdapter.diagnosticsIn «connection» obstacleCloudObservation «end» source ::> nativeAebSource.obstacleCloudOut «end» target ::> sourceAdapter.obstacleCloudIn «connection» rssDistanceObservation «end» source ::> nativeAebSource.rssDistanceOut «end» target ::> sourceAdapter.rssDistanceIn «connection» ingressToService «end» source ::> ingress.frameOut «end» target ::> displayService.publishedIn «connection» serviceToApplication «end» source ::> displayService.subscriptionOut «end» target ::> application.frameIn «allocate» validateByAdapter : LogicalRoleToFunction «allocate» superviseByHealth : LogicalRoleToFunction «allocate» transportByTransport : LogicalRoleToFunction «allocate» publishByIngress : LogicalRoleToFunction «allocate» presentByApplication : LogicalRoleToFunction «allocate» recordByEvidence : LogicalRoleToFunction «allocate» observeBySources : LogicalRoleToFunction «allocate» assembleByAdapter : LogicalRoleToFunction

Hover a model element for details open raw SVG.

Source

1/*2 * DE4SDV AEBS visualization logical architecture slice.3 *4 * INC-AEBS-010 Phase 7: conceptual/logical roles, typed ports, and exchange5 * interfaces for the visualization test system, with per-role provenance and6 * a read-only adapter contract. The adapter has source-side subscriptions and7 * transport output only — no command input/output is modeled anywhere.8 *9 * Source-side exchanges reuse the source-backed Autoware/DE4SDV physical10 * element types from the accepted AEBS physical realization; display-side11 * exchanges remain technology-neutral until Phase 8 selects them.12 */1314package DE4SDV_AEBSVisualizationLogicalArchitecture {15  private import DE4SDV_MethodContext::*;16  private import DE4SDV_Stakeholders::*;17  private import DE4SDV_AEBSVisualizationFraming::*;18  private import DE4SDV_AEBSVisualizationFunctionalArchitecture::*;19  private import DE4SDV_AEBSPhysicalSoftwareRealization::*;20  private import SAF_Viewpoints::*;21  private import SysideViews::**;22  private import Views::*;2324  /* ──────────────────────────────────────────25   * Logical port definitions26   * ────────────────────────────────────────── */2728  port def NativeAEBMetricInput {29    doc /* Read-only native AEB RSS-distance observation. */30    in item rssDistance : Float32StampedMessage;31  }3233  port def NativeAEBObstacleInput {34    doc /* Read-only native AEB filtered obstacle observation. */35    in item obstacleCloud : DebugPointCloudMessage;36  }3738  port def NativeAEBDiagnosticInput {39    doc /* Read-only native AEB intervention diagnostic observation. */40    in item diagnostics : DiagnosticArrayMessage;41  }4243  port def De4sdvWarningInput {44    doc /* Read-only DE4SDV AEBS warning-request observation. */45    in item warningRequest;46  }4748  port def De4sdvBrakingInput {49    doc /* Read-only DE4SDV AEBS braking-request observation. */50    in item brakingRequest;51  }5253  port def De4sdvLifecycleInput {54    doc /* Read-only DE4SDV AEBS coordination-state observation. */55    in item lifecycleState;56  }5758  port def VisualizationFrameOutput {59    doc /* Assembled visualization frame handed to transport. */60    out item visualizationFrame : AEBSVisualizationFrame;61  }6263  port def VisualizationFrameInput {64    doc /* Frame received by the display-side ingress. */65    in item visualizationFrame : AEBSVisualizationFrame;66  }6768  port def VisualizationPublicationOutput {69    doc /* Display-side service publication consumed by the application. */70    out item visualizationFrame : AEBSVisualizationFrame;71  }7273  port def VisualizationSubscriptionInput {74    doc /* Application-side subscription to the display service. */75    in item visualizationFrame : AEBSVisualizationFrame;76  }7778  port def RenderedStateOutput {79    doc /* Emitted presentation state for evidence correlation. */80    out item rendered : RenderedAEBSState;81  }8283  /* ──────────────────────────────────────────84   * Logical roles85   * ────────────────────────────────────────── */8687  part def NativeAEBSourceRole {88    doc /*89     * Logical role of the pinned native Autoware AEB component as a read-only90     * visualization source. It publishes; the visualization never publishes91     * to it and never commands it.92     */93    port rssDistanceOut : DebugDistancePublication;94    port obstacleCloudOut : DebugPointCloudPublication;95    port diagnosticsOut : DiagnosticPublication;96  }9798  part def De4sdvCoordinatorSourceRole {99    doc /*100     * Logical role of the existing DE4SDV AEBS coordinator as a read-only101     * visualization source of warning, braking, and lifecycle state.102     */103    port warningRequestOut;104    port brakingRequestOut;105    port lifecycleStateOut;106  }107108  part def VisualizationSourceAdapterRole {109    doc /*110     * Read-only source adapter. Subscribes to native AEB and DE4SDV sources,111     * assembles the versioned frame with per-field provenance, validates,112     * and emits toward transport. No command input/output exists.113     */114    port rssDistanceIn : NativeAEBMetricInput;115    port obstacleCloudIn : NativeAEBObstacleInput;116    port diagnosticsIn : NativeAEBDiagnosticInput;117    port warningIn : De4sdvWarningInput;118    port brakingIn : De4sdvBrakingInput;119    port lifecycleIn : De4sdvLifecycleInput;120    port frameOut : VisualizationFrameOutput;121  }122123  part def ReverseFrameTransportRole {124    doc /* Carries accepted frames from the source side to the display side. */125    port frameIn : VisualizationFrameOutput;126    port frameOut : VisualizationFrameInput;127  }128129  part def DisplayIngressRole {130    doc /*131     * Display-side ingress: validates received frames and publishes them to132     * the display service. Rejects invalid input without display.133     */134    port frameIn : VisualizationFrameInput;135    port frameOut : VisualizationPublicationOutput;136  }137138  part def DisplayServiceRole {139    doc /* Display-side subscription service between ingress and application. */140    port publishedIn : VisualizationPublicationOutput;141    port subscriptionOut : VisualizationSubscriptionInput;142  }143144  part def VisualizationApplicationRole {145    doc /*146     * Display application role: subscribes, supervises presentation state,147     * renders AEBS state with provenance, and emits evidence.148     */149    port frameIn : VisualizationSubscriptionInput;150    port renderedOut : RenderedStateOutput;151  }152153  part def VisualizationEvidenceRole {154    doc /* Records joinable source/bridge/service/display correlation records. */155    port renderedIn : RenderedStateOutput;156  }157158  part def VisualizationHealthSupervisorRole {159    doc /*160     * Owns freshness, availability, invalid, and restored dispositions for161     * the visualization presentation. Separate from any System 1 AEBS health162     * owner; it never writes back toward sources.163     */164    port renderedIn : RenderedStateOutput;165  }166167  /* ──────────────────────────────────────────168   * Logical system composition169   * ────────────────────────────────────────── */170171  part def AEBSVisualizationLogicalSystem {172    doc /*173     * Logical decomposition of the visualization test system. Information174     * flows one way: sources → adapter → transport → ingress → service →175     * application → evidence. No reverse flow into System 1 exists.176     */177178    part nativeAebSource : NativeAEBSourceRole;179    part coordinatorSource : De4sdvCoordinatorSourceRole;180    part sourceAdapter : VisualizationSourceAdapterRole;181    part transport : ReverseFrameTransportRole;182    part ingress : DisplayIngressRole;183    part displayService : DisplayServiceRole;184    part application : VisualizationApplicationRole;185    part evidence : VisualizationEvidenceRole;186    part healthSupervisor : VisualizationHealthSupervisorRole;187188    // Source observations into the adapter.189    connection rssDistanceObservation190      connect nativeAebSource.rssDistanceOut to sourceAdapter.rssDistanceIn;191    connection obstacleCloudObservation192      connect nativeAebSource.obstacleCloudOut to sourceAdapter.obstacleCloudIn;193    connection diagnosticObservation194      connect nativeAebSource.diagnosticsOut to sourceAdapter.diagnosticsIn;195    connection warningObservation196      connect coordinatorSource.warningRequestOut to sourceAdapter.warningIn;197    connection brakingObservation198      connect coordinatorSource.brakingRequestOut to sourceAdapter.brakingIn;199    connection lifecycleObservation200      connect coordinatorSource.lifecycleStateOut to sourceAdapter.lifecycleIn;201202    // Forward visualization flow only; no connection runs back toward sources.203    connection adapterToTransport204      connect sourceAdapter.frameOut to transport.frameIn;205    connection transportToIngress206      connect transport.frameOut to ingress.frameIn;207    connection ingressToService208      connect ingress.frameOut to displayService.publishedIn;209    connection serviceToApplication210      connect displayService.subscriptionOut to application.frameIn;211    connection applicationToEvidence212      connect application.renderedOut to evidence.renderedIn;213    connection applicationToHealthSupervisor214      connect application.renderedOut to healthSupervisor.renderedIn;215  }216217  part logicalSystem : AEBSVisualizationLogicalSystem;218219  /* Logical-to-functional allocation: each role realizes functional actions. */220  allocation def LogicalRoleToFunction;221222  allocation observeBySources : LogicalRoleToFunction223    allocate aebsVisualizationFunctionalFlow.observe224    to logicalSystem.sourceAdapter;225226  allocation assembleByAdapter : LogicalRoleToFunction227    allocate aebsVisualizationFunctionalFlow.assemble228    to logicalSystem.sourceAdapter;229230  allocation validateByAdapter : LogicalRoleToFunction231    allocate aebsVisualizationFunctionalFlow.validate232    to logicalSystem.sourceAdapter;233234  allocation superviseByHealth : LogicalRoleToFunction235    allocate aebsVisualizationFunctionalFlow.supervise236    to logicalSystem.healthSupervisor;237238  allocation transportByTransport : LogicalRoleToFunction239    allocate aebsVisualizationFunctionalFlow.transport240    to logicalSystem.transport;241242  allocation publishByIngress : LogicalRoleToFunction243    allocate aebsVisualizationFunctionalFlow.publish244    to logicalSystem.ingress;245246  allocation presentByApplication : LogicalRoleToFunction247    allocate aebsVisualizationFunctionalFlow.present248    to logicalSystem.application;249250  allocation recordByEvidence : LogicalRoleToFunction251    allocate aebsVisualizationFunctionalFlow.record252    to logicalSystem.evidence;253254  /* ──────────────────────────────────────────255   * Concerns and views256   * ────────────────────────────────────────── */257258  concern visualizationLogicalStructureConcern : ConceptualStructureConcern {259    subject;260    stakeholder systemsEngineer : SystemsEngineer;261    stakeholder reviewer : OpenSourceReviewer;262  }263264  concern visualizationLogicalExchangeConcern : ConceptualInternalExchangeConcern {265    subject;266    stakeholder systemsEngineer : SystemsEngineer;267    stakeholder reviewer : OpenSourceReviewer;268  }269270  view aebsVisualizationLogicalStructureView {271    viewpoint selectedLogicalStructureViewpoint : SystemStructureDefinitionViewpoint {272      frame visualizationLogicalStructureConcern;273    }274275    expose logicalSystem;276    expose logicalSystem::nativeAebSource;277    expose logicalSystem::coordinatorSource;278    expose logicalSystem::sourceAdapter;279    expose logicalSystem::transport;280    expose logicalSystem::ingress;281    expose logicalSystem::displayService;282    expose logicalSystem::application;283    expose logicalSystem::evidence;284    expose logicalSystem::healthSupervisor;285    render asTreeDiagram;286  }287288  view aebsVisualizationLogicalInternalExchangeView {289    viewpoint selectedLogicalExchangeViewpoint : SystemInternalExchangeViewpoint {290      frame visualizationLogicalExchangeConcern;291    }292293    expose logicalSystem;294    expose logicalSystem::**;295    attribute depth = -1;296    attribute showAnnotationRows = false;297    attribute maxCompartmentEntries = 0;298    render asInterconnectionDiagram;299  }300}301