@memoarchitect/ontology 0.12.1 → 0.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -3
- package/examples/connected-patient-monitor/memo.identity.yaml +34 -0
- package/examples/connected-patient-monitor/memo.package.yaml +3 -1
- package/examples/connected-patient-monitor/model/catalog/connected_patient_monitor.sysml +17 -12
- package/examples/connected-patient-monitor/model/{catalog → methodology}/project.sysml +4 -5
- package/examples/embedded-infusion-pump/memo.package.yaml +3 -1
- package/examples/embedded-infusion-pump/model/catalog/embedded_infusion_pump.sysml +6 -6
- package/examples/embedded-infusion-pump/model/{catalog → methodology}/project.sysml +4 -5
- package/examples/functional-logical-physical/memo.identity.yaml +28 -0
- package/examples/functional-logical-physical/memo.package.yaml +3 -1
- package/examples/functional-logical-physical/model/catalog/functional_logical_physical.sysml +5 -5
- package/examples/functional-logical-physical/model/{catalog → methodology}/project.sysml +4 -5
- package/examples/gpca-pump/analysis/Samples/01-model-overview.ipynb +40 -139
- package/examples/gpca-pump/analysis/Samples/02-architecture-hotspots.ipynb +38 -290
- package/examples/gpca-pump/analysis/Samples/03-model-quality.ipynb +47 -217
- package/examples/gpca-pump/analysis/Samples/04-change-impact-explorer.ipynb +50 -191
- package/examples/gpca-pump/analysis/Samples/05-model-charts.ipynb +42 -181
- package/examples/gpca-pump/analysis/Samples/06-ownership-graph.ipynb +40 -164
- package/examples/gpca-pump/analysis/Samples/07-model-inventory-table.ipynb +51 -172
- package/examples/gpca-pump/analysis/Samples/README.md +15 -9
- package/examples/gpca-pump/analysis/memo_model.py +243 -0
- package/examples/gpca-pump/memo.identity.yaml +521 -26
- package/examples/gpca-pump/memo.package.yaml +3 -1
- package/examples/gpca-pump/methodology/gpca_profiles.sysml +56 -47
- package/examples/gpca-pump/model/catalog/gpca_analysis.sysml +51 -78
- package/examples/gpca-pump/model/catalog/gpca_architecture.sysml +359 -358
- package/examples/gpca-pump/model/catalog/gpca_behavior_actions.sysml +9 -9
- package/examples/gpca-pump/model/catalog/gpca_behavior_modes.sysml +56 -69
- package/examples/gpca-pump/model/catalog/gpca_behavior_subsystems.sysml +44 -59
- package/examples/gpca-pump/model/catalog/gpca_context.sysml +23 -35
- package/examples/gpca-pump/model/catalog/gpca_cybersecurity.sysml +33 -40
- package/examples/gpca-pump/model/catalog/gpca_formal_behavior.sysml +62 -63
- package/examples/gpca-pump/model/catalog/gpca_interfaces.sysml +362 -483
- package/examples/gpca-pump/model/catalog/gpca_operational.sysml +45 -70
- package/examples/gpca-pump/model/catalog/gpca_physical.sysml +6 -12
- package/examples/gpca-pump/model/catalog/gpca_requirements.sysml +173 -169
- package/examples/gpca-pump/model/catalog/gpca_risk.sysml +139 -225
- package/examples/gpca-pump/model/catalog/gpca_standards.sysml +43 -47
- package/examples/gpca-pump/model/catalog/gpca_system.sysml +68 -65
- package/examples/gpca-pump/model/catalog/gpca_trace.sysml +147 -116
- package/examples/gpca-pump/model/catalog/gpca_verification.sysml +65 -91
- package/examples/gpca-pump/model/catalog/viewpoints/context/views/context_system_context_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/cybersecurity/views/cybersecurity_cybersecurity_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/cybersecurity/views/document_cyber_assessment_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/cybersecurity/views/document_threat_model_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/functional/views/functional_function_allocation_view.sysml +2 -4
- package/examples/gpca-pump/model/catalog/viewpoints/functional/views/functional_function_browser_view.sysml +7 -6
- package/examples/gpca-pump/model/catalog/viewpoints/logical/views/behavior_action_flow_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/logical/views/document_architecture_description_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/logical/views/logical_device_interconnect_view.sysml +3 -5
- package/examples/gpca-pump/model/catalog/viewpoints/logical/views/logical_logical_architecture_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/logical/views/logical_mode_state_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/logical/views/logical_system_decomposition_view.sysml +3 -5
- package/examples/gpca-pump/model/catalog/viewpoints/operational/views/operational_scenario_sequence_view.sysml +3 -5
- package/examples/gpca-pump/model/catalog/viewpoints/operational/views/operational_use_case_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/physical/views/physical_physical_bom_view.sysml +2 -4
- package/examples/gpca-pump/model/catalog/viewpoints/requirements/views/document_dhf_index_view.sysml +3 -5
- package/examples/gpca-pump/model/catalog/viewpoints/requirements/views/requirements_requirements_trace_view.sysml +2 -4
- package/examples/gpca-pump/model/catalog/viewpoints/risk/views/document_hazard_analysis_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/risk/views/document_rmf_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/risk/views/risk_fmea_view.sysml +2 -4
- package/examples/gpca-pump/model/catalog/viewpoints/risk/views/risk_risk_chain_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/software/views/document_sdd_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/software/views/software_software_architecture_view.sysml +3 -5
- package/examples/gpca-pump/model/catalog/viewpoints/usability/views/document_usability_view.sysml +4 -6
- package/examples/gpca-pump/model/catalog/viewpoints/verification/views/document_vv_view.sysml +3 -5
- package/examples/gpca-pump/model/catalog/viewpoints/verification/views/verification_verification_coverage_view.sysml +2 -4
- package/examples/gpca-pump/model/{catalog → methodology}/project.sysml +8 -6
- package/examples/ivd-laboratory-system/memo.package.yaml +3 -1
- package/examples/ivd-laboratory-system/model/catalog/ivd_laboratory_system.sysml +12 -9
- package/examples/ivd-laboratory-system/model/{catalog → methodology}/project.sysml +4 -5
- package/examples/manual-surgical-instrument/memo.package.yaml +3 -1
- package/examples/manual-surgical-instrument/model/catalog/manual_surgical_instrument.sysml +2 -6
- package/examples/manual-surgical-instrument/model/{catalog → methodology}/project.sysml +4 -5
- package/examples/multidimensional-layers/memo.package.yaml +3 -1
- package/examples/multidimensional-layers/model/catalog/multidimensional_layers.sysml +2 -4
- package/examples/multidimensional-layers/model/{catalog → methodology}/project.sysml +4 -5
- package/examples/nested-architecture-dsm/memo.identity.yaml +93 -0
- package/examples/nested-architecture-dsm/memo.package.yaml +3 -1
- package/examples/nested-architecture-dsm/model/catalog/architecture/functional/functions.sysml +30 -30
- package/examples/nested-architecture-dsm/model/catalog/architecture/logical/structure.sysml +28 -28
- package/examples/nested-architecture-dsm/model/catalog/architecture/operational/context.sysml +2 -4
- package/examples/nested-architecture-dsm/model/catalog/assurance/requirements/needs.sysml +4 -4
- package/examples/nested-architecture-dsm/model/catalog/assurance/requirements/requirements.sysml +7 -7
- package/examples/nested-architecture-dsm/model/catalog/assurance/verification_validation/verification_validation.sysml +8 -8
- package/examples/nested-architecture-dsm/model/{catalog → methodology}/project.sysml +4 -5
- package/examples/reusable-instrument/memo.package.yaml +3 -1
- package/examples/reusable-instrument/model/catalog/reusable_instrument.sysml +7 -7
- package/examples/reusable-instrument/model/{catalog → methodology}/project.sysml +4 -5
- package/examples/robot-cell-family/README.md +34 -0
- package/examples/robot-cell-family/memo.identity.yaml +142 -0
- package/examples/robot-cell-family/memo.package.yaml +7 -0
- package/examples/robot-cell-family/model/methodology/project.sysml +30 -0
- package/examples/robot-cell-family/model/shared/shared.sysml +53 -0
- package/examples/robot-cell-family/model/sos/chains.sysml +36 -0
- package/examples/robot-cell-family/model/sos/icds.sysml +29 -0
- package/examples/robot-cell-family/model/sos/sos.sysml +31 -0
- package/examples/robot-cell-family/model/sos/use_cases.sysml +25 -0
- package/examples/robot-cell-family/model/systems/manipulation/manipulation_system.sysml +35 -0
- package/examples/robot-cell-family/model/systems/navigation/navigation_system.sysml +46 -0
- package/examples/robot-cell-family/model/systems/perception/perception_system.sysml +37 -0
- package/examples/robot-platform/memo.package.yaml +3 -0
- package/examples/robot-platform/model/platform.sysml +15 -0
- package/examples/ros-mobile-robot/README.md +5 -4
- package/examples/ros-mobile-robot/memo.identity.yaml +94 -0
- package/examples/ros-mobile-robot/memo.package.yaml +3 -1
- package/examples/ros-mobile-robot/model/catalog/ros_mobile_robot.sysml +26 -29
- package/examples/ros-mobile-robot/model/{catalog → methodology}/project.sysml +8 -14
- package/examples/software-only-medical-device/memo.package.yaml +3 -1
- package/examples/software-only-medical-device/model/catalog/software_only_medical_device.sysml +9 -10
- package/examples/software-only-medical-device/model/{catalog → methodology}/project.sysml +8 -9
- package/examples/surgical-closure-workflow/memo.package.yaml +3 -1
- package/examples/surgical-closure-workflow/model/catalog/surgical_closure_workflow.sysml +23 -26
- package/examples/surgical-closure-workflow/model/{catalog → methodology}/project.sysml +7 -5
- package/examples/surgical-robot/memo.package.yaml +3 -1
- package/examples/surgical-robot/model/catalog/surgical_robot.sysml +14 -12
- package/examples/surgical-robot/model/{catalog → methodology}/project.sysml +4 -5
- package/examples/sysml-diagram-samples/README.md +1 -0
- package/examples/sysml-diagram-samples/memo.identity.yaml +675 -0
- package/examples/sysml-diagram-samples/memo.package.yaml +3 -1
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/viewpoint.sysml +10 -20
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/action_flow_view.sysml +7 -29
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/browser_view.sysml +12 -36
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/context_view.sysml +13 -25
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/diagram_samples.sysml +388 -0
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/drill_down_view.sysml +88 -0
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/functional_flow_view.sysml +27 -36
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/grid_view.sysml +8 -21
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/interconnection_view.sysml +17 -65
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/operational_behaviour_view.sysml +23 -32
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/package_view.sysml +9 -22
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/requirements_view.sysml +7 -22
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/sequence_view.sysml +18 -34
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/standard_activity_view.sysml +2 -9
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/state_transition_view.sysml +18 -42
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/tree_view.sysml +11 -24
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/use_case_view.sysml +9 -36
- package/examples/sysml-diagram-samples/model/methodology/project.sysml +40 -0
- package/examples/sysml-diagram-samples/model/sysml_v2_activity_example.sysml +1 -1
- package/examples/temperature-alarm/memo.identity.yaml +6 -0
- package/examples/temperature-alarm/memo.package.yaml +3 -1
- package/examples/temperature-alarm/model/catalog/temperature_alarm.sysml +43 -21
- package/examples/temperature-alarm/model/{catalog → methodology}/project.sysml +4 -5
- package/examples/ui-screen-regions/memo.identity.yaml +33 -0
- package/examples/ui-screen-regions/memo.package.yaml +3 -1
- package/examples/ui-screen-regions/model/catalog/architecture/functional/functions.sysml +12 -12
- package/examples/ui-screen-regions/model/catalog/architecture/implementation/ui.sysml +18 -18
- package/examples/ui-screen-regions/model/catalog/artifacts/assets/catalog.sysml +6 -6
- package/examples/ui-screen-regions/model/catalog/artifacts/reviews/comments.sysml +3 -3
- package/examples/ui-screen-regions/model/catalog/artifacts/reviews/notes.sysml +1 -1
- package/examples/ui-screen-regions/model/catalog/artifacts/reviews/rationales.sysml +1 -1
- package/examples/ui-screen-regions/model/catalog/assurance/human_factors/human_factors.sysml +10 -10
- package/examples/ui-screen-regions/model/catalog/assurance/requirements/needs.sysml +1 -1
- package/examples/ui-screen-regions/model/catalog/assurance/requirements/requirements.sysml +12 -12
- package/examples/ui-screen-regions/model/catalog/assurance/safety_risk/risk.sysml +15 -15
- package/examples/ui-screen-regions/model/catalog/assurance/verification_validation/verification_validation.sysml +6 -6
- package/examples/ui-screen-regions/model/catalog/viewpoints/functional/views/ui_functional_tree.sysml +1 -2
- package/examples/ui-screen-regions/model/catalog/viewpoints/requirements/views/ui_requirements_trace.sysml +1 -2
- package/examples/ui-screen-regions/model/catalog/viewpoints/risk/views/ui_risk_chain.sysml +1 -2
- package/examples/ui-screen-regions/model/{catalog → methodology}/project.sysml +4 -5
- package/extensions/README.md +65 -16
- package/extensions/aadl/memo.package.yaml +1 -1
- package/extensions/aadl/src/aadl_extension.sysml +5 -2
- package/extensions/aadl/src/correspondence/memo_aadl_correspondence.sysml +29 -50
- package/extensions/clinical/memo.package.yaml +1 -1
- package/extensions/clinical/src/clinical_extension.sysml +2 -0
- package/extensions/cloud/memo.package.yaml +1 -1
- package/extensions/container/memo.package.yaml +1 -1
- package/extensions/messaging/memo.package.yaml +1 -1
- package/extensions/messaging/src/messaging_extension.sysml +2 -2
- package/extensions/ros/memo.package.yaml +1 -1
- package/extensions/ros/src/ros_extension.sysml +25 -24
- package/extensions/template/memo.package.yaml +1 -1
- package/extensions/template/model/extension.sysml +25 -0
- package/memo.manifest.yaml +1 -7
- package/methodologies/default/memo.package.yaml +1 -1
- package/methodologies/gpca/memo.package.yaml +1 -1
- package/ontology/memo.package.yaml +1 -1
- package/package.json +6 -4
- package/profile/memo.package.yaml +1 -1
- package/src/architecture/decisions/memo_decisions.sysml +9 -2
- package/src/architecture/functional/behavior/memo_behavior.sysml +27 -7
- package/src/architecture/functional/functions/memo_functions.sysml +45 -31
- package/src/architecture/functional/memo_architecture_functional.sysml +14 -0
- package/src/architecture/implementation/memo_architecture_implementation.sysml +21 -0
- package/src/architecture/implementation/software/runtime/memo_software_runtime.sysml +7 -0
- package/src/architecture/implementation/software/structure/memo_software_structure.sysml +58 -17
- package/src/architecture/implementation/ui/memo_ui.sysml +1 -1
- package/src/architecture/logical/interfaces/memo_interfaces.sysml +67 -58
- package/src/architecture/logical/memo_architecture_logical.sysml +13 -0
- package/src/architecture/logical/structure/memo_logical_structure.sysml +27 -8
- package/src/architecture/operational/context/stakeholders/memo_stakeholders.sysml +4 -1
- package/src/architecture/operational/memo_architecture_operational.sysml +19 -0
- package/src/architecture/operational/scenarios/memo_scenarios.sysml +9 -8
- package/src/architecture/operational/structure/memo_operational.sysml +5 -2
- package/src/architecture/operational/use_cases/memo_use_cases.sysml +16 -8
- package/src/architecture/realization/deployment/memo_deployment.sysml +30 -10
- package/src/architecture/realization/memo_architecture_realization.sysml +13 -0
- package/src/architecture/realization/physical/memo_physical_architecture.sysml +61 -0
- package/src/architecture/variability/memo_variability.sysml +87 -0
- package/src/artifacts/configuration_management/memo_configuration_management.sysml +95 -3
- package/src/artifacts/core/memo_controlled_artifacts.sysml +4 -2
- package/src/artifacts/standards/cfr_21_820.sysml +12 -24
- package/src/artifacts/standards/fda_cybersecurity_2023.sysml +13 -20
- package/src/artifacts/standards/iec_60601_1.sysml +16 -32
- package/src/artifacts/standards/iec_60601_1_2.sysml +5 -10
- package/src/artifacts/standards/iec_60812.sysml +4 -8
- package/src/artifacts/standards/iec_62304.sysml +607 -47
- package/src/artifacts/standards/iec_62366_1.sysml +12 -24
- package/src/artifacts/standards/iec_81001_5_1.sysml +8 -16
- package/src/artifacts/standards/iso_13485.sysml +12 -24
- package/src/artifacts/standards/iso_14971.sysml +118 -20
- package/src/artifacts/standards/iso_iec_ieee_42010.sysml +3 -6
- package/src/artifacts/standards/memo_artifacts_standards_traceability.sysml +14 -4
- package/src/artifacts/templates/dhf/fda-cybersecurity/postmarket-surveillance.md +1 -2
- package/src/artifacts/templates/dhf/fda-cybersecurity/vuln-assessment.md +1 -2
- package/src/artifacts/templates/dhf/iec-62304/sad.md +1 -2
- package/src/artifacts/templates/dhf/iec-62304/sbom.md +1 -2
- package/src/artifacts/templates/dhf/iec-62304/sdp.md +1 -2
- package/src/artifacts/templates/dhf/iec-62304/soup.md +3 -5
- package/src/artifacts/templates/dhf/system/sad.md +1 -1
- package/src/artifacts/templates/dhf/system/standards-checklist.md +2 -2
- package/src/artifacts/templates/dhf/system/standards-traceability.md +1 -1
- package/src/assurance/cybersecurity/memo_cybersecurity.sysml +339 -13
- package/src/assurance/human_factors/memo_human_factors.sysml +6 -2
- package/src/assurance/safety_risk/analysis/memo_fmea.sysml +7 -3
- package/src/assurance/safety_risk/memo_risk.sysml +39 -1
- package/src/core/common/memo_common.sysml +51 -68
- package/src/core/enumerations/memo_enumerations.sysml +93 -9
- package/src/core/relationships/memo_relationships.sysml +17 -11
- package/src/core/relationships/memo_workspace_membership.sysml +284 -0
- package/src/core/semantics/semantics.sysml +58 -0
- package/src/core/terminology/terminology.sysml +7 -0
- package/src/memo_namespaces.sysml +6 -0
- package/src/methodology/archetypes/memo_archetypes.sysml +8 -16
- package/src/methodology/core/memo_core.sysml +85 -29
- package/src/methodology/profiles/memo_profiles.sysml +217 -61
- package/src/methodology/workflow/memo_workflow.sysml +28 -0
- package/src/rules/closure/closure_rules.sysml +250 -4
- package/src/rules/crosslayer/cross_layer_rules.sysml +11 -0
- package/src/rules/ontology/ontology_invariants.sysml +288 -48
- package/src/rules/quantitative/quantitative_rules.sysml +4 -0
- package/src/viewpoints/catalog/memo_viewpoint_catalog.sysml +28 -28
- package/src/viewpoints/clinical/clinical_viewpoint.sysml +4 -5
- package/src/viewpoints/context/context_viewpoint.sysml +4 -5
- package/src/viewpoints/context/views/system_context_view/system_context_view.sysml +3 -5
- package/src/viewpoints/cybersecurity/cybersecurity_viewpoint.sysml +4 -5
- package/src/viewpoints/definitions/memo_view_layout.sysml +150 -0
- package/src/viewpoints/definitions/memo_viewpoint_definitions.sysml +3 -5
- package/src/viewpoints/functional/functional_viewpoint.sysml +4 -5
- package/src/viewpoints/functional/views/function_allocation_view/function_allocation_view.sysml +2 -4
- package/src/viewpoints/functional/views/system_functional_tree_view/system_functional_tree_view.sysml +2 -4
- package/src/viewpoints/logical/logical_viewpoint.sysml +4 -5
- package/src/viewpoints/logical/views/logical_architecture_view/logical_architecture_view.sysml +2 -4
- package/src/viewpoints/operational/operational_viewpoint.sysml +4 -5
- package/src/viewpoints/operational/views/use_case_view/use_case_view.sysml +3 -5
- package/src/viewpoints/physical/physical_viewpoint.sysml +4 -5
- package/src/viewpoints/physical/views/network_topology_view/network_topology_view.sysml +2 -4
- package/src/viewpoints/physical/views/physical_bom_view/physical_bom_view.sysml +2 -4
- package/src/viewpoints/rendering/memo_rendering.sysml +50 -98
- package/src/viewpoints/requirements/requirements_viewpoint.sysml +4 -5
- package/src/viewpoints/requirements/views/requirements_traceability_view/requirements_traceability_view.sysml +2 -4
- package/src/viewpoints/risk/risk_viewpoint.sysml +4 -5
- package/src/viewpoints/risk/views/risk_chain_view/risk_chain_view.sysml +2 -4
- package/src/viewpoints/software/software_viewpoint.sysml +4 -5
- package/src/viewpoints/software/views/software_architecture_view/software_architecture_view.sysml +3 -5
- package/src/viewpoints/{definitions → stakeholders_concerns}/memo_stakeholders_concerns.sysml +45 -36
- package/src/viewpoints/ui_layout/ui_layout_viewpoint.sysml +4 -5
- package/src/viewpoints/ui_layout/views/screen_layout_view/screen_layout_view.sysml +1 -1
- package/src/viewpoints/usability/usability_viewpoint.sysml +4 -5
- package/src/viewpoints/verification/verification_viewpoint.sysml +4 -5
- package/src/viewpoints/verification/views/verification_coverage_view/verification_coverage_view.sysml +2 -4
- package/stage1/syside-67f92dc96ba75cd05b5c8d13.ids.gz +0 -0
- package/stage1/syside-67f92dc96ba75cd05b5c8d13.json.gz +0 -0
- package/templates/default/memo.package.yaml +6 -1
- package/templates/default/model/catalog/architecture/system.sysml +7 -3
- package/templates/default/model/{catalog → methodology}/project.sysml +3 -4
- package/examples/sysml-diagram-samples/model/catalog/project.sysml +0 -26
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/context_view.viewlayout +0 -47
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/interconnection_view.viewlayout +0 -94
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/operational_behaviour_view.viewlayout +0 -13
- package/examples/ui-screen-regions/model/catalog/relationships.sysml +0 -8
- package/extensions/aadl/src/methodology/aadl_methodology.sysml +0 -19
- package/extensions/clinical/src/methodology/clinical_methodology.sysml +0 -24
- package/extensions/cloud/src/methodology/cloud_methodology.sysml +0 -19
- package/extensions/container/src/methodology/container_methodology.sysml +0 -19
- package/extensions/messaging/src/methodology/messaging_methodology.sysml +0 -19
- package/extensions/ros/src/methodology/ros_methodology.sysml +0 -27
- package/extensions/template/src/extension.sysml +0 -39
- package/templates/connected-device/memo.package.yaml +0 -13
- package/templates/connected-device/model/catalog/architecture/system.sysml +0 -5
- package/templates/connected-device/model/catalog/artifacts/catalog.sysml +0 -5
- package/templates/connected-device/model/catalog/assurance/requirements.sysml +0 -7
- package/templates/connected-device/model/catalog/project.sysml +0 -30
- package/templates/connected-device/package.json +0 -8
- package/templates/connected-device/syside.toml +0 -13
- package/templates/infusion-pump/memo.package.yaml +0 -13
- package/templates/infusion-pump/model/catalog/architecture/system.sysml +0 -5
- package/templates/infusion-pump/model/catalog/artifacts/catalog.sysml +0 -5
- package/templates/infusion-pump/model/catalog/assurance/requirements.sysml +0 -7
- package/templates/infusion-pump/model/catalog/project.sysml +0 -30
- package/templates/infusion-pump/package.json +0 -8
- package/templates/infusion-pump/syside.toml +0 -13
- package/templates/monitoring-device/memo.package.yaml +0 -13
- package/templates/monitoring-device/model/catalog/architecture/system.sysml +0 -5
- package/templates/monitoring-device/model/catalog/artifacts/catalog.sysml +0 -5
- package/templates/monitoring-device/model/catalog/assurance/requirements.sysml +0 -7
- package/templates/monitoring-device/model/catalog/project.sysml +0 -30
- package/templates/monitoring-device/package.json +0 -8
- package/templates/monitoring-device/syside.toml +0 -13
- package/templates/samd/memo.package.yaml +0 -13
- package/templates/samd/model/catalog/architecture/system.sysml +0 -5
- package/templates/samd/model/catalog/artifacts/catalog.sysml +0 -5
- package/templates/samd/model/catalog/assurance/requirements.sysml +0 -7
- package/templates/samd/model/catalog/project.sysml +0 -30
- package/templates/samd/package.json +0 -8
- package/templates/samd/syside.toml +0 -13
|
@@ -12,86 +12,74 @@ package memo_artifacts_standards_iec_62366_1 {
|
|
|
12
12
|
|
|
13
13
|
private import memo_core_common::*;
|
|
14
14
|
private import memo_core_common::MemoIdentity;
|
|
15
|
-
|
|
15
|
+
part iec62366_1 : RegulatoryStandard {
|
|
16
16
|
@MemoIdentity { :>> providedId = "STD-IEC-62366-1"; }
|
|
17
|
-
attribute :>> name = "IEC62366_1";
|
|
18
17
|
attribute :>> designation = "IEC 62366-1:2015+AMD1:2020";
|
|
19
18
|
attribute :>> edition = "2015";
|
|
20
19
|
attribute :>> issuer = "IEC";
|
|
21
20
|
attribute :>> amendments = "AMD1:2020";
|
|
22
21
|
attribute :>> appliesToRegime = (RegulatoryRegimeKind::CE, RegulatoryRegimeKind::MDR, RegulatoryRegimeKind::UKCA, RegulatoryRegimeKind::FDA_510k, RegulatoryRegimeKind::FDA_PMA);
|
|
23
|
-
|
|
22
|
+
part iec62366_1Clause4 : StandardClause {
|
|
24
23
|
@MemoIdentity { :>> providedId = "STD-IEC-62366-1-4"; }
|
|
25
|
-
attribute :>> name = "IEC62366_1Clause4";
|
|
26
24
|
attribute :>> clauseNumber = "4";
|
|
27
25
|
attribute :>> title = "general requirements for the usability engineering process";
|
|
28
26
|
attribute :>> normativeStrength = "shall";
|
|
29
27
|
}
|
|
30
|
-
|
|
28
|
+
part iec62366_1Clause5 : StandardClause {
|
|
31
29
|
@MemoIdentity { :>> providedId = "STD-IEC-62366-1-5"; }
|
|
32
|
-
attribute :>> name = "IEC62366_1Clause5";
|
|
33
30
|
attribute :>> clauseNumber = "5";
|
|
34
31
|
attribute :>> title = "usability engineering process";
|
|
35
32
|
attribute :>> normativeStrength = "shall";
|
|
36
|
-
|
|
33
|
+
part iec62366_1Clause5_1 : StandardClause {
|
|
37
34
|
@MemoIdentity { :>> providedId = "STD-IEC-62366-1-5-1"; }
|
|
38
|
-
attribute :>> name = "IEC62366_1Clause5_1";
|
|
39
35
|
attribute :>> clauseNumber = "5.1";
|
|
40
36
|
attribute :>> title = "use specification";
|
|
41
37
|
attribute :>> normativeStrength = "shall";
|
|
42
38
|
}
|
|
43
|
-
|
|
39
|
+
part iec62366_1Clause5_2 : StandardClause {
|
|
44
40
|
@MemoIdentity { :>> providedId = "STD-IEC-62366-1-5-2"; }
|
|
45
|
-
attribute :>> name = "IEC62366_1Clause5_2";
|
|
46
41
|
attribute :>> clauseNumber = "5.2";
|
|
47
42
|
attribute :>> title = "user interface characteristics related to safety";
|
|
48
43
|
attribute :>> normativeStrength = "shall";
|
|
49
44
|
}
|
|
50
|
-
|
|
45
|
+
part iec62366_1Clause5_3 : StandardClause {
|
|
51
46
|
@MemoIdentity { :>> providedId = "STD-IEC-62366-1-5-3"; }
|
|
52
|
-
attribute :>> name = "IEC62366_1Clause5_3";
|
|
53
47
|
attribute :>> clauseNumber = "5.3";
|
|
54
48
|
attribute :>> title = "known and foreseeable use-related hazards";
|
|
55
49
|
attribute :>> normativeStrength = "shall";
|
|
56
50
|
}
|
|
57
|
-
|
|
51
|
+
part iec62366_1Clause5_4 : StandardClause {
|
|
58
52
|
@MemoIdentity { :>> providedId = "STD-IEC-62366-1-5-4"; }
|
|
59
|
-
attribute :>> name = "IEC62366_1Clause5_4";
|
|
60
53
|
attribute :>> clauseNumber = "5.4";
|
|
61
54
|
attribute :>> title = "hazard-related use scenarios";
|
|
62
55
|
attribute :>> normativeStrength = "shall";
|
|
63
56
|
}
|
|
64
|
-
|
|
57
|
+
part iec62366_1Clause5_5 : StandardClause {
|
|
65
58
|
@MemoIdentity { :>> providedId = "STD-IEC-62366-1-5-5"; }
|
|
66
|
-
attribute :>> name = "IEC62366_1Clause5_5";
|
|
67
59
|
attribute :>> clauseNumber = "5.5";
|
|
68
60
|
attribute :>> title = "selection of use scenarios for summative evaluation";
|
|
69
61
|
attribute :>> normativeStrength = "shall";
|
|
70
62
|
}
|
|
71
|
-
|
|
63
|
+
part iec62366_1Clause5_6 : StandardClause {
|
|
72
64
|
@MemoIdentity { :>> providedId = "STD-IEC-62366-1-5-6"; }
|
|
73
|
-
attribute :>> name = "IEC62366_1Clause5_6";
|
|
74
65
|
attribute :>> clauseNumber = "5.6";
|
|
75
66
|
attribute :>> title = "user interface specification";
|
|
76
67
|
attribute :>> normativeStrength = "shall";
|
|
77
68
|
}
|
|
78
|
-
|
|
69
|
+
part iec62366_1Clause5_7 : StandardClause {
|
|
79
70
|
@MemoIdentity { :>> providedId = "STD-IEC-62366-1-5-7"; }
|
|
80
|
-
attribute :>> name = "IEC62366_1Clause5_7";
|
|
81
71
|
attribute :>> clauseNumber = "5.7";
|
|
82
72
|
attribute :>> title = "user interface evaluation plan";
|
|
83
73
|
attribute :>> normativeStrength = "shall";
|
|
84
74
|
}
|
|
85
|
-
|
|
75
|
+
part iec62366_1Clause5_8 : StandardClause {
|
|
86
76
|
@MemoIdentity { :>> providedId = "STD-IEC-62366-1-5-8"; }
|
|
87
|
-
attribute :>> name = "IEC62366_1Clause5_8";
|
|
88
77
|
attribute :>> clauseNumber = "5.8";
|
|
89
78
|
attribute :>> title = "user interface design and formative evaluation";
|
|
90
79
|
attribute :>> normativeStrength = "shall";
|
|
91
80
|
}
|
|
92
|
-
|
|
81
|
+
part iec62366_1Clause5_9 : StandardClause {
|
|
93
82
|
@MemoIdentity { :>> providedId = "STD-IEC-62366-1-5-9"; }
|
|
94
|
-
attribute :>> name = "IEC62366_1Clause5_9";
|
|
95
83
|
attribute :>> clauseNumber = "5.9";
|
|
96
84
|
attribute :>> title = "summative evaluation of the user interface";
|
|
97
85
|
attribute :>> normativeStrength = "shall";
|
|
@@ -10,57 +10,49 @@ package memo_artifacts_standards_iec_81001_5_1 {
|
|
|
10
10
|
|
|
11
11
|
private import memo_core_common::*;
|
|
12
12
|
private import memo_core_common::MemoIdentity;
|
|
13
|
-
|
|
13
|
+
part iec81001_5_1 : RegulatoryStandard {
|
|
14
14
|
@MemoIdentity { :>> providedId = "STD-IEC-81001-5-1"; }
|
|
15
|
-
attribute :>> name = "IEC81001_5_1";
|
|
16
15
|
attribute :>> designation = "IEC 81001-5-1:2021";
|
|
17
16
|
attribute :>> edition = "2021";
|
|
18
17
|
attribute :>> issuer = "IEC";
|
|
19
18
|
attribute :>> appliesToRegime = (RegulatoryRegimeKind::CE, RegulatoryRegimeKind::MDR, RegulatoryRegimeKind::UKCA, RegulatoryRegimeKind::FDA_510k, RegulatoryRegimeKind::FDA_PMA);
|
|
20
|
-
|
|
19
|
+
part iec81001_5_1Clause4 : StandardClause {
|
|
21
20
|
@MemoIdentity { :>> providedId = "STD-IEC-81001-5-1-4"; }
|
|
22
|
-
attribute :>> name = "IEC81001_5_1Clause4";
|
|
23
21
|
attribute :>> clauseNumber = "4";
|
|
24
22
|
attribute :>> title = "general requirements";
|
|
25
23
|
attribute :>> normativeStrength = "shall";
|
|
26
24
|
}
|
|
27
|
-
|
|
25
|
+
part iec81001_5_1Clause5 : StandardClause {
|
|
28
26
|
@MemoIdentity { :>> providedId = "STD-IEC-81001-5-1-5"; }
|
|
29
|
-
attribute :>> name = "IEC81001_5_1Clause5";
|
|
30
27
|
attribute :>> clauseNumber = "5";
|
|
31
28
|
attribute :>> title = "software development process";
|
|
32
29
|
attribute :>> normativeStrength = "shall";
|
|
33
|
-
|
|
30
|
+
part iec81001_5_1Clause5_1 : StandardClause {
|
|
34
31
|
@MemoIdentity { :>> providedId = "STD-IEC-81001-5-1-5-1"; }
|
|
35
|
-
attribute :>> name = "IEC81001_5_1Clause5_1";
|
|
36
32
|
attribute :>> clauseNumber = "5.1";
|
|
37
33
|
attribute :>> title = "software development planning";
|
|
38
34
|
attribute :>> normativeStrength = "shall";
|
|
39
35
|
}
|
|
40
|
-
|
|
36
|
+
part iec81001_5_1Clause5_2 : StandardClause {
|
|
41
37
|
@MemoIdentity { :>> providedId = "STD-IEC-81001-5-1-5-2"; }
|
|
42
|
-
attribute :>> name = "IEC81001_5_1Clause5_2";
|
|
43
38
|
attribute :>> clauseNumber = "5.2";
|
|
44
39
|
attribute :>> title = "software requirements analysis";
|
|
45
40
|
attribute :>> normativeStrength = "shall";
|
|
46
41
|
}
|
|
47
|
-
|
|
42
|
+
part iec81001_5_1Clause5_3 : StandardClause {
|
|
48
43
|
@MemoIdentity { :>> providedId = "STD-IEC-81001-5-1-5-3"; }
|
|
49
|
-
attribute :>> name = "IEC81001_5_1Clause5_3";
|
|
50
44
|
attribute :>> clauseNumber = "5.3";
|
|
51
45
|
attribute :>> title = "software architectural design";
|
|
52
46
|
attribute :>> normativeStrength = "shall";
|
|
53
47
|
}
|
|
54
|
-
|
|
48
|
+
part iec81001_5_1Clause5_4 : StandardClause {
|
|
55
49
|
@MemoIdentity { :>> providedId = "STD-IEC-81001-5-1-5-4"; }
|
|
56
|
-
attribute :>> name = "IEC81001_5_1Clause5_4";
|
|
57
50
|
attribute :>> clauseNumber = "5.4";
|
|
58
51
|
attribute :>> title = "software design";
|
|
59
52
|
attribute :>> normativeStrength = "shall";
|
|
60
53
|
}
|
|
61
|
-
|
|
54
|
+
part iec81001_5_1Clause5_8 : StandardClause {
|
|
62
55
|
@MemoIdentity { :>> providedId = "STD-IEC-81001-5-1-5-8"; }
|
|
63
|
-
attribute :>> name = "IEC81001_5_1Clause5_8";
|
|
64
56
|
attribute :>> clauseNumber = "5.8";
|
|
65
57
|
attribute :>> title = "software release";
|
|
66
58
|
attribute :>> normativeStrength = "shall";
|
|
@@ -12,84 +12,72 @@ package memo_artifacts_standards_iso_13485 {
|
|
|
12
12
|
|
|
13
13
|
private import memo_core_common::*;
|
|
14
14
|
private import memo_core_common::MemoIdentity;
|
|
15
|
-
|
|
15
|
+
part iso13485 : RegulatoryStandard {
|
|
16
16
|
@MemoIdentity { :>> providedId = "STD-ISO-13485"; }
|
|
17
|
-
attribute :>> name = "ISO13485";
|
|
18
17
|
attribute :>> designation = "ISO 13485:2016";
|
|
19
18
|
attribute :>> edition = "2016";
|
|
20
19
|
attribute :>> issuer = "ISO";
|
|
21
20
|
attribute :>> appliesToRegime = (RegulatoryRegimeKind::CE, RegulatoryRegimeKind::MDR, RegulatoryRegimeKind::UKCA);
|
|
22
|
-
|
|
21
|
+
part iso13485Clause4 : StandardClause {
|
|
23
22
|
@MemoIdentity { :>> providedId = "STD-ISO-13485-4"; }
|
|
24
|
-
attribute :>> name = "ISO13485Clause4";
|
|
25
23
|
attribute :>> clauseNumber = "4";
|
|
26
24
|
attribute :>> title = "quality management system";
|
|
27
25
|
attribute :>> normativeStrength = "shall";
|
|
28
|
-
|
|
26
|
+
part iso13485Clause4_2 : StandardClause {
|
|
29
27
|
@MemoIdentity { :>> providedId = "STD-ISO-13485-4-2"; }
|
|
30
|
-
attribute :>> name = "ISO13485Clause4_2";
|
|
31
28
|
attribute :>> clauseNumber = "4.2";
|
|
32
29
|
attribute :>> title = "quality management system documentation";
|
|
33
30
|
attribute :>> normativeStrength = "shall";
|
|
34
|
-
|
|
31
|
+
part iso13485Clause4_2_4 : StandardClause {
|
|
35
32
|
@MemoIdentity { :>> providedId = "STD-ISO-13485-4-2-4"; }
|
|
36
|
-
attribute :>> name = "ISO13485Clause4_2_4";
|
|
37
33
|
attribute :>> clauseNumber = "4.2.4";
|
|
38
34
|
attribute :>> title = "control of documents";
|
|
39
35
|
attribute :>> normativeStrength = "shall";
|
|
40
36
|
}
|
|
41
37
|
}
|
|
42
38
|
}
|
|
43
|
-
|
|
39
|
+
part iso13485Clause7 : StandardClause {
|
|
44
40
|
@MemoIdentity { :>> providedId = "STD-ISO-13485-7"; }
|
|
45
|
-
attribute :>> name = "ISO13485Clause7";
|
|
46
41
|
attribute :>> clauseNumber = "7";
|
|
47
42
|
attribute :>> title = "product realization";
|
|
48
43
|
attribute :>> normativeStrength = "shall";
|
|
49
|
-
|
|
44
|
+
part iso13485Clause7_3 : StandardClause {
|
|
50
45
|
@MemoIdentity { :>> providedId = "STD-ISO-13485-7-3"; }
|
|
51
|
-
attribute :>> name = "ISO13485Clause7_3";
|
|
52
46
|
attribute :>> clauseNumber = "7.3";
|
|
53
47
|
attribute :>> title = "design and development";
|
|
54
48
|
attribute :>> normativeStrength = "shall";
|
|
55
|
-
|
|
49
|
+
part iso13485Clause7_3_3 : StandardClause {
|
|
56
50
|
@MemoIdentity { :>> providedId = "STD-ISO-13485-7-3-3"; }
|
|
57
|
-
attribute :>> name = "ISO13485Clause7_3_3";
|
|
58
51
|
attribute :>> clauseNumber = "7.3.3";
|
|
59
52
|
attribute :>> title = "design and development inputs";
|
|
60
53
|
attribute :>> normativeStrength = "shall";
|
|
61
54
|
}
|
|
62
|
-
|
|
55
|
+
part iso13485Clause7_3_4 : StandardClause {
|
|
63
56
|
@MemoIdentity { :>> providedId = "STD-ISO-13485-7-3-4"; }
|
|
64
|
-
attribute :>> name = "ISO13485Clause7_3_4";
|
|
65
57
|
attribute :>> clauseNumber = "7.3.4";
|
|
66
58
|
attribute :>> title = "design and development outputs";
|
|
67
59
|
attribute :>> normativeStrength = "shall";
|
|
68
60
|
}
|
|
69
|
-
|
|
61
|
+
part iso13485Clause7_3_6 : StandardClause {
|
|
70
62
|
@MemoIdentity { :>> providedId = "STD-ISO-13485-7-3-6"; }
|
|
71
|
-
attribute :>> name = "ISO13485Clause7_3_6";
|
|
72
63
|
attribute :>> clauseNumber = "7.3.6";
|
|
73
64
|
attribute :>> title = "design and development verification";
|
|
74
65
|
attribute :>> normativeStrength = "shall";
|
|
75
66
|
}
|
|
76
|
-
|
|
67
|
+
part iso13485Clause7_3_7 : StandardClause {
|
|
77
68
|
@MemoIdentity { :>> providedId = "STD-ISO-13485-7-3-7"; }
|
|
78
|
-
attribute :>> name = "ISO13485Clause7_3_7";
|
|
79
69
|
attribute :>> clauseNumber = "7.3.7";
|
|
80
70
|
attribute :>> title = "design and development validation";
|
|
81
71
|
attribute :>> normativeStrength = "shall";
|
|
82
72
|
}
|
|
83
|
-
|
|
73
|
+
part iso13485Clause7_3_9 : StandardClause {
|
|
84
74
|
@MemoIdentity { :>> providedId = "STD-ISO-13485-7-3-9"; }
|
|
85
|
-
attribute :>> name = "ISO13485Clause7_3_9";
|
|
86
75
|
attribute :>> clauseNumber = "7.3.9";
|
|
87
76
|
attribute :>> title = "control of design and development changes";
|
|
88
77
|
attribute :>> normativeStrength = "shall";
|
|
89
78
|
}
|
|
90
|
-
|
|
79
|
+
part iso13485Clause7_3_10 : StandardClause {
|
|
91
80
|
@MemoIdentity { :>> providedId = "STD-ISO-13485-7-3-10"; }
|
|
92
|
-
attribute :>> name = "ISO13485Clause7_3_10";
|
|
93
81
|
attribute :>> clauseNumber = "7.3.10";
|
|
94
82
|
attribute :>> title = "design and development files";
|
|
95
83
|
attribute :>> normativeStrength = "shall";
|
|
@@ -10,75 +10,173 @@ package memo_artifacts_standards_iso_14971 {
|
|
|
10
10
|
|
|
11
11
|
private import memo_core_common::*;
|
|
12
12
|
private import memo_core_common::MemoIdentity;
|
|
13
|
-
|
|
13
|
+
part iso14971 : RegulatoryStandard {
|
|
14
14
|
@MemoIdentity { :>> providedId = "STD-ISO-14971"; }
|
|
15
|
-
attribute :>> name = "ISO14971";
|
|
16
15
|
attribute :>> designation = "ISO 14971:2019";
|
|
17
16
|
attribute :>> edition = "2019";
|
|
18
17
|
attribute :>> issuer = "ISO";
|
|
19
18
|
attribute :>> appliesToRegime = (RegulatoryRegimeKind::CE, RegulatoryRegimeKind::MDR, RegulatoryRegimeKind::UKCA, RegulatoryRegimeKind::FDA_510k, RegulatoryRegimeKind::FDA_PMA);
|
|
20
|
-
|
|
19
|
+
part iso14971Clause4 : StandardClause {
|
|
21
20
|
@MemoIdentity { :>> providedId = "STD-ISO-14971-4"; }
|
|
22
|
-
attribute :>> name = "ISO14971Clause4";
|
|
23
21
|
attribute :>> clauseNumber = "4";
|
|
24
22
|
attribute :>> title = "general requirements for the risk management system";
|
|
25
23
|
attribute :>> normativeStrength = "shall";
|
|
26
|
-
|
|
24
|
+
part iso14971Clause4_1 : StandardClause {
|
|
25
|
+
@MemoIdentity { :>> providedId = "STD-ISO-14971-4-1"; }
|
|
26
|
+
attribute :>> clauseNumber = "4.1";
|
|
27
|
+
attribute :>> title = "risk management process";
|
|
28
|
+
attribute :>> normativeStrength = "shall";
|
|
29
|
+
}
|
|
30
|
+
part iso14971Clause4_2 : StandardClause {
|
|
31
|
+
@MemoIdentity { :>> providedId = "STD-ISO-14971-4-2"; }
|
|
32
|
+
attribute :>> clauseNumber = "4.2";
|
|
33
|
+
attribute :>> title = "management responsibilities";
|
|
34
|
+
attribute :>> normativeStrength = "shall";
|
|
35
|
+
}
|
|
36
|
+
part iso14971Clause4_3 : StandardClause {
|
|
37
|
+
@MemoIdentity { :>> providedId = "STD-ISO-14971-4-3"; }
|
|
38
|
+
attribute :>> clauseNumber = "4.3";
|
|
39
|
+
attribute :>> title = "competence of personnel";
|
|
40
|
+
attribute :>> normativeStrength = "shall";
|
|
41
|
+
}
|
|
42
|
+
part iso14971Clause4_4 : StandardClause {
|
|
27
43
|
@MemoIdentity { :>> providedId = "STD-ISO-14971-4-4"; }
|
|
28
|
-
attribute :>> name = "ISO14971Clause4_4";
|
|
29
44
|
attribute :>> clauseNumber = "4.4";
|
|
30
45
|
attribute :>> title = "risk management plan";
|
|
31
46
|
attribute :>> normativeStrength = "shall";
|
|
32
47
|
}
|
|
33
|
-
|
|
48
|
+
part iso14971Clause4_5 : StandardClause {
|
|
34
49
|
@MemoIdentity { :>> providedId = "STD-ISO-14971-4-5"; }
|
|
35
|
-
attribute :>> name = "ISO14971Clause4_5";
|
|
36
50
|
attribute :>> clauseNumber = "4.5";
|
|
37
51
|
attribute :>> title = "risk management file";
|
|
38
52
|
attribute :>> normativeStrength = "shall";
|
|
39
53
|
}
|
|
40
54
|
}
|
|
41
|
-
|
|
55
|
+
part iso14971Clause5 : StandardClause {
|
|
42
56
|
@MemoIdentity { :>> providedId = "STD-ISO-14971-5"; }
|
|
43
|
-
attribute :>> name = "ISO14971Clause5";
|
|
44
57
|
attribute :>> clauseNumber = "5";
|
|
45
58
|
attribute :>> title = "risk analysis";
|
|
46
59
|
attribute :>> normativeStrength = "shall";
|
|
60
|
+
part iso14971Clause5_1 : StandardClause {
|
|
61
|
+
@MemoIdentity { :>> providedId = "STD-ISO-14971-5-1"; }
|
|
62
|
+
attribute :>> clauseNumber = "5.1";
|
|
63
|
+
attribute :>> title = "risk analysis process";
|
|
64
|
+
attribute :>> normativeStrength = "shall";
|
|
65
|
+
}
|
|
66
|
+
part iso14971Clause5_2 : StandardClause {
|
|
67
|
+
@MemoIdentity { :>> providedId = "STD-ISO-14971-5-2"; }
|
|
68
|
+
attribute :>> clauseNumber = "5.2";
|
|
69
|
+
attribute :>> title = "intended use and reasonably foreseeable misuse";
|
|
70
|
+
attribute :>> normativeStrength = "shall";
|
|
71
|
+
}
|
|
72
|
+
part iso14971Clause5_3 : StandardClause {
|
|
73
|
+
@MemoIdentity { :>> providedId = "STD-ISO-14971-5-3"; }
|
|
74
|
+
attribute :>> clauseNumber = "5.3";
|
|
75
|
+
attribute :>> title = "safety characteristics";
|
|
76
|
+
attribute :>> normativeStrength = "shall";
|
|
77
|
+
}
|
|
78
|
+
part iso14971Clause5_4 : StandardClause {
|
|
79
|
+
@MemoIdentity { :>> providedId = "STD-ISO-14971-5-4"; }
|
|
80
|
+
attribute :>> clauseNumber = "5.4";
|
|
81
|
+
attribute :>> title = "hazards and hazardous situations";
|
|
82
|
+
attribute :>> normativeStrength = "shall";
|
|
83
|
+
}
|
|
84
|
+
part iso14971Clause5_5 : StandardClause {
|
|
85
|
+
@MemoIdentity { :>> providedId = "STD-ISO-14971-5-5"; }
|
|
86
|
+
attribute :>> clauseNumber = "5.5";
|
|
87
|
+
attribute :>> title = "risk estimation";
|
|
88
|
+
attribute :>> normativeStrength = "shall";
|
|
89
|
+
}
|
|
47
90
|
}
|
|
48
|
-
|
|
91
|
+
part iso14971Clause6 : StandardClause {
|
|
49
92
|
@MemoIdentity { :>> providedId = "STD-ISO-14971-6"; }
|
|
50
|
-
attribute :>> name = "ISO14971Clause6";
|
|
51
93
|
attribute :>> clauseNumber = "6";
|
|
52
94
|
attribute :>> title = "risk evaluation";
|
|
53
95
|
attribute :>> normativeStrength = "shall";
|
|
54
96
|
}
|
|
55
|
-
|
|
97
|
+
part iso14971Clause7 : StandardClause {
|
|
56
98
|
@MemoIdentity { :>> providedId = "STD-ISO-14971-7"; }
|
|
57
|
-
attribute :>> name = "ISO14971Clause7";
|
|
58
99
|
attribute :>> clauseNumber = "7";
|
|
59
100
|
attribute :>> title = "risk control";
|
|
60
101
|
attribute :>> normativeStrength = "shall";
|
|
102
|
+
part iso14971Clause7_1 : StandardClause {
|
|
103
|
+
@MemoIdentity { :>> providedId = "STD-ISO-14971-7-1"; }
|
|
104
|
+
attribute :>> clauseNumber = "7.1";
|
|
105
|
+
attribute :>> title = "risk control option analysis";
|
|
106
|
+
attribute :>> normativeStrength = "shall";
|
|
107
|
+
}
|
|
108
|
+
part iso14971Clause7_2 : StandardClause {
|
|
109
|
+
@MemoIdentity { :>> providedId = "STD-ISO-14971-7-2"; }
|
|
110
|
+
attribute :>> clauseNumber = "7.2";
|
|
111
|
+
attribute :>> title = "implementation of risk control measures and verification of their effectiveness";
|
|
112
|
+
attribute :>> normativeStrength = "shall";
|
|
113
|
+
}
|
|
114
|
+
part iso14971Clause7_3 : StandardClause {
|
|
115
|
+
@MemoIdentity { :>> providedId = "STD-ISO-14971-7-3"; }
|
|
116
|
+
attribute :>> clauseNumber = "7.3";
|
|
117
|
+
attribute :>> title = "residual risk evaluation";
|
|
118
|
+
attribute :>> normativeStrength = "shall";
|
|
119
|
+
}
|
|
120
|
+
part iso14971Clause7_4 : StandardClause {
|
|
121
|
+
@MemoIdentity { :>> providedId = "STD-ISO-14971-7-4"; }
|
|
122
|
+
attribute :>> clauseNumber = "7.4";
|
|
123
|
+
attribute :>> title = "benefit-risk analysis";
|
|
124
|
+
attribute :>> normativeStrength = "shall";
|
|
125
|
+
}
|
|
126
|
+
part iso14971Clause7_5 : StandardClause {
|
|
127
|
+
@MemoIdentity { :>> providedId = "STD-ISO-14971-7-5"; }
|
|
128
|
+
attribute :>> clauseNumber = "7.5";
|
|
129
|
+
attribute :>> title = "risks arising from risk control measures";
|
|
130
|
+
attribute :>> normativeStrength = "shall";
|
|
131
|
+
}
|
|
132
|
+
part iso14971Clause7_6 : StandardClause {
|
|
133
|
+
@MemoIdentity { :>> providedId = "STD-ISO-14971-7-6"; }
|
|
134
|
+
attribute :>> clauseNumber = "7.6";
|
|
135
|
+
attribute :>> title = "completeness of risk control";
|
|
136
|
+
attribute :>> normativeStrength = "shall";
|
|
137
|
+
}
|
|
61
138
|
}
|
|
62
|
-
|
|
139
|
+
part iso14971Clause8 : StandardClause {
|
|
63
140
|
@MemoIdentity { :>> providedId = "STD-ISO-14971-8"; }
|
|
64
|
-
attribute :>> name = "ISO14971Clause8";
|
|
65
141
|
attribute :>> clauseNumber = "8";
|
|
66
142
|
attribute :>> title = "evaluation of overall residual risk";
|
|
67
143
|
attribute :>> normativeStrength = "shall";
|
|
68
144
|
}
|
|
69
|
-
|
|
145
|
+
part iso14971Clause9 : StandardClause {
|
|
70
146
|
@MemoIdentity { :>> providedId = "STD-ISO-14971-9"; }
|
|
71
|
-
attribute :>> name = "ISO14971Clause9";
|
|
72
147
|
attribute :>> clauseNumber = "9";
|
|
73
148
|
attribute :>> title = "risk management review";
|
|
74
149
|
attribute :>> normativeStrength = "shall";
|
|
75
150
|
}
|
|
76
|
-
|
|
151
|
+
part iso14971Clause10 : StandardClause {
|
|
77
152
|
@MemoIdentity { :>> providedId = "STD-ISO-14971-10"; }
|
|
78
|
-
attribute :>> name = "ISO14971Clause10";
|
|
79
153
|
attribute :>> clauseNumber = "10";
|
|
80
154
|
attribute :>> title = "production and post-production activities";
|
|
81
155
|
attribute :>> normativeStrength = "shall";
|
|
156
|
+
part iso14971Clause10_1 : StandardClause {
|
|
157
|
+
@MemoIdentity { :>> providedId = "STD-ISO-14971-10-1"; }
|
|
158
|
+
attribute :>> clauseNumber = "10.1";
|
|
159
|
+
attribute :>> title = "production and post-production activities in general";
|
|
160
|
+
attribute :>> normativeStrength = "shall";
|
|
161
|
+
}
|
|
162
|
+
part iso14971Clause10_2 : StandardClause {
|
|
163
|
+
@MemoIdentity { :>> providedId = "STD-ISO-14971-10-2"; }
|
|
164
|
+
attribute :>> clauseNumber = "10.2";
|
|
165
|
+
attribute :>> title = "information collection";
|
|
166
|
+
attribute :>> normativeStrength = "shall";
|
|
167
|
+
}
|
|
168
|
+
part iso14971Clause10_3 : StandardClause {
|
|
169
|
+
@MemoIdentity { :>> providedId = "STD-ISO-14971-10-3"; }
|
|
170
|
+
attribute :>> clauseNumber = "10.3";
|
|
171
|
+
attribute :>> title = "information review";
|
|
172
|
+
attribute :>> normativeStrength = "shall";
|
|
173
|
+
}
|
|
174
|
+
part iso14971Clause10_4 : StandardClause {
|
|
175
|
+
@MemoIdentity { :>> providedId = "STD-ISO-14971-10-4"; }
|
|
176
|
+
attribute :>> clauseNumber = "10.4";
|
|
177
|
+
attribute :>> title = "actions";
|
|
178
|
+
attribute :>> normativeStrength = "shall";
|
|
179
|
+
}
|
|
82
180
|
}
|
|
83
181
|
}
|
|
84
182
|
|
|
@@ -14,9 +14,8 @@ package memo_artifacts_standards_iso_iec_ieee_42010 {
|
|
|
14
14
|
|
|
15
15
|
private import memo_core_common::*;
|
|
16
16
|
private import memo_core_common::MemoIdentity;
|
|
17
|
-
|
|
17
|
+
part isoIecIeee42010 : RegulatoryStandard {
|
|
18
18
|
@MemoIdentity { :>> providedId = "STD-ISO-IEC-IEEE-42010"; }
|
|
19
|
-
attribute :>> name = "ISOIECIEEE42010";
|
|
20
19
|
attribute :>> designation = "ISO/IEC/IEEE 42010:2022";
|
|
21
20
|
attribute :>> edition = "2022";
|
|
22
21
|
attribute :>> issuer = "ISO/IEC/IEEE";
|
|
@@ -24,15 +23,13 @@ package memo_artifacts_standards_iso_iec_ieee_42010 {
|
|
|
24
23
|
// reference standard, cited by documents rather than required by a
|
|
25
24
|
// market. Empty is the authored value, not an omission — see
|
|
26
25
|
// appliesToRegime in memo_artifacts_standards_traceability.
|
|
27
|
-
|
|
26
|
+
part isoIecIeee42010Clause5 : StandardClause {
|
|
28
27
|
@MemoIdentity { :>> providedId = "STD-ISO-IEC-IEEE-42010-5"; }
|
|
29
|
-
attribute :>> name = "ISOIECIEEE42010Clause5";
|
|
30
28
|
attribute :>> clauseNumber = "5";
|
|
31
29
|
attribute :>> normativeStrength = "shall";
|
|
32
30
|
}
|
|
33
|
-
|
|
31
|
+
part isoIecIeee42010Clause6 : StandardClause {
|
|
34
32
|
@MemoIdentity { :>> providedId = "STD-ISO-IEC-IEEE-42010-6"; }
|
|
35
|
-
attribute :>> name = "ISOIECIEEE42010Clause6";
|
|
36
33
|
attribute :>> clauseNumber = "6";
|
|
37
34
|
attribute :>> normativeStrength = "shall";
|
|
38
35
|
}
|
|
@@ -48,7 +48,7 @@ package memo_artifacts_standards_traceability {
|
|
|
48
48
|
// Standards and clauses
|
|
49
49
|
// =========================================================================
|
|
50
50
|
|
|
51
|
-
|
|
51
|
+
part def RegulatoryStandard :> MemoArtifact {
|
|
52
52
|
doc /* A regulatory or consensus standard a project claims conformance
|
|
53
53
|
* to, identified by its full designation including edition and
|
|
54
54
|
* amendments (e.g. "IEC 62366-1:2015+AMD1:2020"). Dropping the
|
|
@@ -73,7 +73,7 @@ package memo_artifacts_standards_traceability {
|
|
|
73
73
|
attribute appliesToRegime : RegulatoryRegimeKind[0..*];
|
|
74
74
|
}
|
|
75
75
|
|
|
76
|
-
|
|
76
|
+
part def StandardClause :> MemoArtifact {
|
|
77
77
|
doc /* One normative clause of a RegulatoryStandard, at the depth at
|
|
78
78
|
* which the standard makes a distinct requirement a MEMO document
|
|
79
79
|
* actually claims. `title` is a MEMO-authored scope phrase — a
|
|
@@ -101,7 +101,10 @@ package memo_artifacts_standards_traceability {
|
|
|
101
101
|
doc /* Any model element claims conformance to a standard clause.
|
|
102
102
|
* This is the edge the standards traceability matrix and the
|
|
103
103
|
* clause coverage report are computed over. */
|
|
104
|
-
|
|
104
|
+
// Untyped, as the doc above says. A requirement conforming to a
|
|
105
|
+
// clause is the commonest case and is not a part, so `MemoPart` here
|
|
106
|
+
// rejected most of what the matrix exists to show.
|
|
107
|
+
end conformingElement :>> source;
|
|
105
108
|
end clause : StandardClause :>> target;
|
|
106
109
|
}
|
|
107
110
|
abstract connection conformsToLinks : ConformsTo[*];
|
|
@@ -120,7 +123,7 @@ package memo_artifacts_standards_traceability {
|
|
|
120
123
|
* granularity rides on the link as a reference string rather than
|
|
121
124
|
* as a duplicate element type. */
|
|
122
125
|
attribute sectionReference : String[0..1];
|
|
123
|
-
end tracedElement :
|
|
126
|
+
end tracedElement : MemoArtifact :>> source;
|
|
124
127
|
end artifact : ControlledArtifact :>> target;
|
|
125
128
|
}
|
|
126
129
|
abstract connection tracesToDocumentLinks : TracesToDocument[*];
|
|
@@ -129,4 +132,11 @@ package memo_artifacts_standards_traceability {
|
|
|
129
132
|
:> annotatedElement : SysML::ConnectionUsage;
|
|
130
133
|
:>> baseType = tracesToDocumentLinks meta SysML::Usage;
|
|
131
134
|
}
|
|
135
|
+
|
|
136
|
+
// A rule's trace to the clause it enforces: `#EnforcesClause dependency from
|
|
137
|
+
// <Rule> to <clause>, <clause>;`. A rule may trace to several clauses, from
|
|
138
|
+
// several standards, or to none (a rule MEMO or a user holds for its own
|
|
139
|
+
// reasons). A SysML Dependency, so it needs no MEMO grammar and any
|
|
140
|
+
// SysML v2 tool reads it as client and supplier.
|
|
141
|
+
metadata def EnforcesClause;
|
|
132
142
|
}
|
|
@@ -30,8 +30,7 @@ Defines ongoing cybersecurity surveillance for **{{project.product}}** in the po
|
|
|
30
30
|
Describe the process for ongoing monitoring of SOUP components for newly published vulnerabilities.
|
|
31
31
|
|
|
32
32
|
```memo-query
|
|
33
|
-
kind:
|
|
34
|
-
where: moduleKind == "SoftwareModuleKind::soup"
|
|
33
|
+
kind: [SOUPSoftwareModule, OTSSoftwareModule]
|
|
35
34
|
display: table
|
|
36
35
|
columns: name, doc
|
|
37
36
|
sort: name
|
|
@@ -37,8 +37,7 @@ empty: "No software assets defined."
|
|
|
37
37
|
Known vulnerabilities in SOUP and third-party components (e.g. from CVE/NVD monitoring) and their disposition:
|
|
38
38
|
|
|
39
39
|
```memo-query
|
|
40
|
-
kind:
|
|
41
|
-
where: moduleKind == "SoftwareModuleKind::soup"
|
|
40
|
+
kind: [SOUPSoftwareModule, OTSSoftwareModule]
|
|
42
41
|
display: table
|
|
43
42
|
columns: name, doc
|
|
44
43
|
sort: name
|
|
@@ -83,8 +83,7 @@ empty: "No Interface elements defined."
|
|
|
83
83
|
Software of Unknown Provenance (SOUP) used by **{{project.product}}** is listed below per IEC 62304 §5.3.3–5.3.4. For each SOUP item, functional/performance requirements and required hardware/software must be specified:
|
|
84
84
|
|
|
85
85
|
```memo-query
|
|
86
|
-
kind:
|
|
87
|
-
where: moduleKind == "SoftwareModuleKind::soup"
|
|
86
|
+
kind: [SOUPSoftwareModule, OTSSoftwareModule]
|
|
88
87
|
display: table
|
|
89
88
|
columns: name, doc, layer
|
|
90
89
|
sort: name
|
|
@@ -37,8 +37,7 @@ empty: "No first-party software items defined."
|
|
|
37
37
|
All third-party and SOUP components with their versions and origins, generated from the model:
|
|
38
38
|
|
|
39
39
|
```memo-query
|
|
40
|
-
kind:
|
|
41
|
-
where: moduleKind == "SoftwareModuleKind::soup"
|
|
40
|
+
kind: [SOUPSoftwareModule, OTSSoftwareModule]
|
|
42
41
|
display: table
|
|
43
42
|
columns: name, doc, layer
|
|
44
43
|
sort: name
|
|
@@ -57,8 +57,7 @@ Identify the coding standards, review procedures, and quality gates applied duri
|
|
|
57
57
|
### 4.1 Software Items of Unknown Provenance (SOUP)
|
|
58
58
|
|
|
59
59
|
```memo-query
|
|
60
|
-
kind:
|
|
61
|
-
where: moduleKind == "SoftwareModuleKind::soup"
|
|
60
|
+
kind: [SOUPSoftwareModule, OTSSoftwareModule]
|
|
62
61
|
display: table
|
|
63
62
|
columns: name, doc, layer
|
|
64
63
|
sort: name
|
|
@@ -23,12 +23,11 @@ This document lists all Software of Unknown Provenance (SOUP) components used in
|
|
|
23
23
|
The complete inventory of SOUP and third-party components in **{{project.product}}**, generated from the model:
|
|
24
24
|
|
|
25
25
|
```memo-query
|
|
26
|
-
kind:
|
|
27
|
-
where: moduleKind == "SoftwareModuleKind::soup"
|
|
26
|
+
kind: [SOUPSoftwareModule, OTSSoftwareModule]
|
|
28
27
|
display: table
|
|
29
28
|
columns: name, layer, doc
|
|
30
29
|
sort: name
|
|
31
|
-
empty: "No SOUP components defined. Add
|
|
30
|
+
empty: "No SOUP components defined. Add SOUPSoftwareModule or OTSSoftwareModule elements to the model."
|
|
32
31
|
```
|
|
33
32
|
|
|
34
33
|
---
|
|
@@ -38,8 +37,7 @@ empty: "No SOUP components defined. Add SOUPComponent elements to the model."
|
|
|
38
37
|
For each SOUP component, the potential impact on device safety must be evaluated.
|
|
39
38
|
|
|
40
39
|
```memo-query
|
|
41
|
-
kind:
|
|
42
|
-
where: moduleKind == "SoftwareModuleKind::soup"
|
|
40
|
+
kind: [SOUPSoftwareModule, OTSSoftwareModule]
|
|
43
41
|
display: table
|
|
44
42
|
columns: name, doc
|
|
45
43
|
sort: name
|
|
@@ -123,7 +123,7 @@ _[TODO: Describe how safety-critical items are segregated from non-safety-critic
|
|
|
123
123
|
|
|
124
124
|
## 5. SOUP Components
|
|
125
125
|
|
|
126
|
-
Software of Unknown Provenance used by **{{project.product}}**, derived by traversing `dependsOnSoup` from the software items.
|
|
126
|
+
Software of Unknown Provenance used by **{{project.product}}**, derived by traversing `dependsOnSoup` from the software items. A SOUP item is typed `SOUPSoftwareModule` (an `OTSSoftwareModule` is one); this section lists the ones a project software item depends on.
|
|
127
127
|
|
|
128
128
|
```memo-query
|
|
129
129
|
kind: [SoftwareSystem, SoftwareComponent, SoftwareModule]
|