textual-notation-of-model/packages/features/middleware/mw_variability_configuration.sysml

2 view(s) · 47 declared member(s) view source on GitHub

view mwProductLineConfigurationView

ViewpointselectedProductLineConfigurationViewpoint (ProductLineConfigurationViewpoint)
ConcernproductLineConfigurationConcern
RenderasTreeDiagram
ExposesMWAutowareAAOSSDVReference
selectedVehicleApplication
selectedMiddleware
selectedOperatingSystem
selectedHypervisor
selectedApplicationMiddlewareAdapter
Sourcetextual-notation-of-model/packages/features/middleware/mw_variability_configuration.sysml:206
diagram-mwProductLineConfigurationView.svg
«view» mwProductLineConfigurationView expose MWAutowareAAOSSDVReference expose selectedVehicleApplication expose selectedMiddleware expose selectedOperatingSystem expose selectedHypervisor expose selectedApplicationMiddlewareAdapter «part def» MWAutowareAAOSSDVReference :> SDVPlatformStack «part» vehicleApplication :>> vehicleApplication = vehicleApplication::autoware «part» middleware :>> middleware = middleware::androidSDV «part» osPlatform :>> osPlatform = osPlatform::android «part» hypervisor :>> hypervisor = hypervisor::kvm «part» applicationMiddlewareAdapter :>> applicationMiddlewareAdapter = applicationMiddlewareAdapter::autowareToAAOSSDV

Hover a model element for details open raw SVG.

view mwProductModelAssemblyView

ViewpointselectedProductModelAssemblyViewpoint (ProductModelAssemblyViewpoint)
ConcernproductModelAssemblyConcern
RenderasTreeDiagram
ExposesMWAutowareAAOSSDVConfiguredMember
MWAutowareAAOSSDVConfiguredMember::platformStack
MWAutowareAAOSSDVConfiguredMember::middlewareBoundary
Sourcetextual-notation-of-model/packages/features/middleware/mw_variability_configuration.sysml:221
diagram-mwProductModelAssemblyView.svg
«view» mwProductModelAssemblyView expose MWAutowareAAOSSDVConfiguredMember expose MWAutowareAAOSSDVConfiguredMember::platformStack expose MWAutowareAAOSSDVConfiguredMember::middlewareBoundary «part def» MWAutowareAAOSSDVConfiguredMember :> ProductLineMemberProduct «part» platformStack : MWAutowareAAOSSDVReference «part» middlewareBoundary : MiddlewarePhysicalSoftwareBoundary

Hover a model element for details open raw SVG.

Source

1/*2 * DE4SDV middleware variability and configuration model slice.3 *4 * INC-MW-009 records the configured-member assembly and the realization5 * decision around the deterministic product projection generated from6 * mw-autoware-aaos-sdv-reference.yaml. The BoF and generated projection own7 * the concrete variant selections; this package does not duplicate them.8 *9 * The selected direct realization is planned, not implemented. IFEX informs10 * service-interface classification and COVESA VSS supplies vehicle-signal11 * semantics. Neither is represented as deployed adapter software. The KUKSA12 * brokered path remains an explicit, unselected alternative.13 */1415package DE4SDV_MWVariabilityConfiguration {16  private import DE4SDV_MethodContext::*;17  private import DE4SDV_MethodViewpoints::*;18  private import DE4SDV_ProductLine::*;19  private import DE4SDV_Stakeholders::*;20  private import DE4SDV_SDVPlatformStack::*;21  private import DE4SDV_MWRequirements::*;22  private import DE4SDV_MWPhysicalSoftwareRealization::*;23  private import Views::*;2425  part incMW009 : FeatureIncrement {26    doc /* INC-MW-009: middleware variability and configured AAOS SDV member. */27  }2829  part def MWAutowareAAOSSDVConfiguredMember :> ProductLineMemberProduct {30    doc /*31     * Product-level assembly controlled by the Phase 9 BoF and deterministic32     * generated platform-stack projection. The local parts compose accepted33     * shared assets; they do not independently choose platform variants.34     */35    part platformStack : MWAutowareAAOSSDVReference;36    part middlewareBoundary : MiddlewarePhysicalSoftwareBoundary;37  }3839  part configuredMember : MWAutowareAAOSSDVConfiguredMember {40    doc /*41     * MW-CONFIG-001. Configuration evidence only. The selected application and42     * middleware derive the adapter through D-ASSET-APPLICATION-MIDDLEWARE-ADAPTER.43     * Runtime support, requirement satisfaction, safety, compliance, and44     * interoperability are not implied by this configured-member usage.45     */46  }4748  part ifexInterfaceDesignSource : SourceContributionRecord {49    doc /*50     * SRC-MW-IFEX-001. COVESA IFEX is an external interface-design source.51     * Repository: https://github.com/COVESA/ifex52     * Revision: 987038066ecd05d62a382eeed650449b7144e7f753     * License: MPL-2.0.54     *55     * IFEX contributes protocol-independent Property, Method, Event, and type56     * classification. It is not a selected VSIDL generator, generated binding,57     * provider, transport, ROS 2 consumer, or deployed adapter implementation.58     */59  }6061  part vehicleSpeedPropertyClassification : SourceContributionRecord {62    doc /*63     * SRC-MW-VSS-001. Current COVESA VSS Vehicle.Speed [km/h] is persistent64     * observable state and is therefore classified as an IFEX-informed65     * Property. A binding may provide change notification; this configuration66     * does not duplicate the state update as an independent Event.67     *68     * The canonical VSS semantic source remains the source-backed69     * COVESAVehicleSpeedSemanticSource owned by INC-MW-008.70     */71  }7273  part directVSIDLToROS2Realization : MissingRealizationRecord {74    doc /*75     * REAL-MW-DIRECT-001. Selected planned realization style for the first76     * vehicle-speed slice:77     *78     *   AAOS VSIDL provider binding79     *   -> provider-neutral semantic normalizer80     *   -> ROS 2 VelocityReport publisher81     *82     * Vehicle.Speed [km/h] maps to VehicleSpeed.speed_kmh [km/h], then to83     * VelocityReport.longitudinal_velocity [m/s] by division by 3.6. The exact84     * reference contracts remain the reviewed .proto and .vsidl artifacts from85     * INC-MW-008. The provider binding, discovery, transport, publisher,86     * deployment, and observer are not implemented, not deployed, and not87     * empirically verified by INC-MW-009.88     *89     * This generic middleware realization does not carry the safety-critical90     * emergency-braking actuation path.91     */92  }9394  part brokeredVehicleDataSource : SourceContributionRecord {95    doc /*96     * Source record for the Eclipse KUKSA Databroker candidate.97     * Repository: https://github.com/eclipse-kuksa/kuksa-databroker98     * Revision: fb07cafd2564e29032a5aeacc1a3361657eca0cb99     * License: Apache-2.0.100     * This is source provenance, not a configured runtime component.101     */102  }103104  part kuksaBrokeredAlternative : DeferredProductLineScope {105    doc /*106     * ALT-MW-KUKSA-001. Unselected brokered realization candidate:107     *108     *   AAOS/VSIDL-to-KUKSA provider109     *   -> KUKSA Databroker110     *   -> KUKSA-to-Autoware ROS 2 consumer111     *112     * KUKSA Databroker is not selected for MW-CONFIG-001. No requirement for113     * multiple producers/consumers, shared VSS query/subscription, buffering,114     * or centralized vehicle-data policy currently justifies the additional115     * broker and two custom endpoint bindings.116     */117  }118119  part configuredRuntimeEvidenceGap : DeferredProductLineScope {120    doc /*121     * GAP-MW-024: A valid BoF and deterministic product projection prove only122     * controlled configuration. They do not prove generated bindings, provider123     * behavior, discovery, transport, adapter deployment, ROS 2 publication,124     * independent Autoware observation, or retained runtime interoperability.125     */126  }127128  dependency configuredPhysicalBoundaryTrace129    from configuredMember::middlewareBoundary130    to DE4SDV_MWPhysicalSoftwareRealization::physicalSoftware;131  dependency selectedDirectRealizationTrace132    from configuredMember133    to directVSIDLToROS2Realization;134  dependency directPhysicalAdapterCandidateTrace135    from directVSIDLToROS2Realization136    to DE4SDV_MWPhysicalSoftwareRealization::physicalSoftware::adapter;137  dependency exactReferenceContractTrace138    from directVSIDLToROS2Realization139    to DE4SDV_MWPhysicalSoftwareRealization::physicalSoftwareSources::referenceInteropBenchSource;140  dependency vssVehicleSpeedSemanticTrace141    from vehicleSpeedPropertyClassification142    to DE4SDV_MWPhysicalSoftwareRealization::physicalSoftwareSources::vssVehicleSpeedSource;143  dependency ifexPropertyClassificationTrace144    from vehicleSpeedPropertyClassification145    to ifexInterfaceDesignSource;146  dependency brokeredAlternativeSourceTrace147    from kuksaBrokeredAlternative148    to brokeredVehicleDataSource;149  dependency configuredRuntimeGapTrace150    from configuredMember151    to configuredRuntimeEvidenceGap;152  dependency directSourceContractGapTrace153    from directVSIDLToROS2Realization154    to DE4SDV_MWPhysicalSoftwareRealization::physicalSourceContractGap;155  dependency directVelocityContractGapTrace156    from directVSIDLToROS2Realization157    to DE4SDV_MWPhysicalSoftwareRealization::velocitySignalContractGap;158159  dependency configuredSignalAccessRequirementTrace160    from configuredMember161    to DE4SDV_MWRequirements::Features::Middleware::Requirements::System1Product::reqProvideMiddlewareSignalAccess;162  dependency configuredSafetyPathRequirementTrace163    from configuredMember164    to DE4SDV_MWRequirements::Features::Middleware::Requirements::System1Product::reqIsolateSafetyPath;165  dependency configuredDiscoveryRequirementTrace166    from configuredMember167    to DE4SDV_MWRequirements::Features::Middleware::Requirements::System1Product::reqProvideServiceDiscovery;168  dependency configuredAuthenticationRequirementTrace169    from configuredMember170    to DE4SDV_MWRequirements::Features::Middleware::Requirements::System1Product::reqAuthenticateServiceBinding;171172  concern productLineConfigurationConcern : ProductLineConfigurationConcern {173    doc /*174     * Review the selected feature variants in the deterministic generated175     * platform-stack projection. This concern is about choices, not assembly.176     */177    subject;178    stakeholder systemsEngineer : SystemsEngineer;179    stakeholder productLineEngineer : ProductLineEngineer;180    stakeholder reviewer : OpenSourceReviewer;181  }182183  concern productModelAssemblyConcern : ProductModelAssemblyConcern {184    doc /*185     * Review the resulting member-product composition: configured platform186     * stack plus the middleware physical/software boundary. This concern is187     * about assembled assets, not the full variation space.188     */189    subject;190    stakeholder systemsEngineer : SystemsEngineer;191    stakeholder productLineEngineer : ProductLineEngineer;192    stakeholder reviewer : OpenSourceReviewer;193  }194195  alias selectedVehicleApplication196    for MWAutowareAAOSSDVReference::vehicleApplication;197  alias selectedMiddleware198    for MWAutowareAAOSSDVReference::middleware;199  alias selectedOperatingSystem200    for MWAutowareAAOSSDVReference::osPlatform;201  alias selectedHypervisor202    for MWAutowareAAOSSDVReference::hypervisor;203  alias selectedApplicationMiddlewareAdapter204    for MWAutowareAAOSSDVReference::applicationMiddlewareAdapter;205206  view mwProductLineConfigurationView {207    viewpoint selectedProductLineConfigurationViewpoint : ProductLineConfigurationViewpoint {208      frame productLineConfigurationConcern;209    }210    expose MWAutowareAAOSSDVReference;211    expose selectedVehicleApplication;212    expose selectedMiddleware;213    expose selectedOperatingSystem;214    expose selectedHypervisor;215    expose selectedApplicationMiddlewareAdapter;216    attribute showAnnotationRows = false;217    attribute maxCompartmentEntries = 0;218    render asTreeDiagram;219  }220221  view mwProductModelAssemblyView {222    viewpoint selectedProductModelAssemblyViewpoint : ProductModelAssemblyViewpoint {223      frame productModelAssemblyConcern;224    }225    expose MWAutowareAAOSSDVConfiguredMember;226    expose MWAutowareAAOSSDVConfiguredMember::platformStack;227    expose MWAutowareAAOSSDVConfiguredMember::middlewareBoundary;228    attribute showAnnotationRows = false;229    attribute maxCompartmentEntries = 0;230    render asTreeDiagram;231  }232}233