@memoarchitect/ontology 0.6.5 → 0.8.22
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 +4 -2
- package/examples/connected-patient-monitor/model/catalog/connected_patient_monitor.sysml +1 -1
- package/examples/connected-patient-monitor/model/catalog/project.sysml +24 -0
- package/examples/connected-patient-monitor/model/catalog/viewpoints/unassigned/viewpoint.sysml +9 -0
- package/examples/connected-patient-monitor/model/{viewpoints → catalog/viewpoints/unassigned/views}/connected_patient_monitor_overview.sysml +1 -1
- package/examples/embedded-infusion-pump/model/catalog/embedded_infusion_pump.sysml +7 -5
- package/examples/embedded-infusion-pump/model/catalog/project.sysml +24 -0
- package/examples/embedded-infusion-pump/model/catalog/viewpoints/unassigned/viewpoint.sysml +9 -0
- package/examples/embedded-infusion-pump/model/{viewpoints → catalog/viewpoints/unassigned/views}/embedded_infusion_pump_overview.sysml +1 -1
- package/examples/functional-logical-physical/model/catalog/functional_logical_physical.sysml +5 -5
- package/examples/functional-logical-physical/model/catalog/project.sysml +24 -0
- package/examples/functional-logical-physical/model/catalog/viewpoints/unassigned/viewpoint.sysml +9 -0
- package/examples/functional-logical-physical/model/{viewpoints → catalog/viewpoints/unassigned/views}/functional_logical_physical_overview.sysml +1 -1
- package/examples/gpca-pump/methodology/gpca_methodology.sysml +7 -8
- package/examples/gpca-pump/methodology/gpca_profiles.sysml +89 -11
- package/examples/gpca-pump/model/catalog/gpca_analysis.sysml +19 -9
- package/examples/gpca-pump/model/catalog/gpca_architecture.sysml +342 -100
- package/examples/gpca-pump/model/catalog/gpca_behavior_actions.sysml +27 -13
- package/examples/gpca-pump/model/catalog/gpca_behavior_modes.sysml +329 -272
- package/examples/gpca-pump/model/catalog/gpca_behavior_subsystems.sysml +57 -16
- package/examples/gpca-pump/model/catalog/gpca_context.sysml +12 -8
- package/examples/gpca-pump/model/catalog/gpca_cybersecurity.sysml +14 -10
- package/examples/gpca-pump/model/catalog/gpca_formal_behavior.sysml +1 -15
- package/examples/gpca-pump/model/catalog/gpca_interfaces.sysml +181 -264
- package/examples/gpca-pump/model/catalog/gpca_operational.sysml +95 -60
- package/examples/gpca-pump/model/catalog/gpca_physical.sysml +6 -11
- package/examples/gpca-pump/model/catalog/gpca_requirements.sysml +102 -101
- package/examples/gpca-pump/model/catalog/gpca_risk.sysml +1 -1
- package/examples/gpca-pump/model/catalog/gpca_standards.sysml +161 -0
- package/examples/gpca-pump/model/catalog/gpca_system.sysml +47 -30
- package/examples/gpca-pump/model/catalog/gpca_trace.sysml +301 -354
- package/examples/gpca-pump/model/catalog/gpca_verification.sysml +116 -36
- package/examples/gpca-pump/model/catalog/project.sysml +26 -0
- package/examples/gpca-pump/model/catalog/viewpoints/context/viewpoint.sysml +8 -0
- package/examples/gpca-pump/model/{views → catalog/viewpoints/context/views}/context_system_context_view.sysml +4 -4
- package/examples/gpca-pump/model/catalog/viewpoints/cybersecurity/viewpoint.sysml +8 -0
- package/examples/gpca-pump/model/{views → catalog/viewpoints/cybersecurity/views}/cybersecurity_cybersecurity_view.sysml +4 -4
- package/examples/gpca-pump/model/{views → catalog/viewpoints/cybersecurity/views}/document_cyber_assessment_view.sysml +4 -4
- package/examples/gpca-pump/model/{views → catalog/viewpoints/cybersecurity/views}/document_threat_model_view.sysml +5 -5
- package/examples/gpca-pump/model/catalog/viewpoints/functional/viewpoint.sysml +8 -0
- package/examples/gpca-pump/model/{views → catalog/viewpoints/functional/views}/functional_function_allocation_view.sysml +2 -2
- package/examples/gpca-pump/model/{views → catalog/viewpoints/functional/views}/functional_function_browser_view.sysml +3 -3
- package/examples/gpca-pump/model/catalog/viewpoints/logical/viewpoint.sysml +8 -0
- package/examples/gpca-pump/model/{views → catalog/viewpoints/logical/views}/behavior_action_flow_view.sysml +3 -3
- package/examples/gpca-pump/model/{views → catalog/viewpoints/logical/views}/document_architecture_description_view.sysml +8 -8
- package/examples/gpca-pump/model/{views → catalog/viewpoints/logical/views}/logical_device_interconnect_view.sysml +5 -5
- package/examples/gpca-pump/model/{views → catalog/viewpoints/logical/views}/logical_logical_architecture_view.sysml +3 -3
- package/examples/gpca-pump/model/{views → catalog/viewpoints/logical/views}/logical_mode_state_view.sysml +4 -4
- package/examples/gpca-pump/model/{views → catalog/viewpoints/logical/views}/logical_system_decomposition_view.sysml +3 -3
- package/examples/gpca-pump/model/catalog/viewpoints/operational/viewpoint.sysml +8 -0
- package/examples/gpca-pump/model/{views → catalog/viewpoints/operational/views}/operational_scenario_sequence_view.sysml +3 -3
- package/examples/gpca-pump/model/{views → catalog/viewpoints/operational/views}/operational_use_case_view.sysml +4 -4
- package/examples/gpca-pump/model/catalog/viewpoints/physical/viewpoint.sysml +8 -0
- package/examples/gpca-pump/model/{views → catalog/viewpoints/physical/views}/physical_physical_bom_view.sysml +2 -2
- package/examples/gpca-pump/model/catalog/viewpoints/requirements/viewpoint.sysml +8 -0
- package/examples/gpca-pump/model/{views → catalog/viewpoints/requirements/views}/document_dhf_index_view.sysml +8 -8
- package/examples/gpca-pump/model/{views → catalog/viewpoints/requirements/views}/requirements_requirements_trace_view.sysml +2 -2
- package/examples/gpca-pump/model/catalog/viewpoints/risk/viewpoint.sysml +8 -0
- package/examples/gpca-pump/model/{views → catalog/viewpoints/risk/views}/document_hazard_analysis_view.sysml +8 -5
- package/examples/gpca-pump/model/{views → catalog/viewpoints/risk/views}/document_rmf_view.sysml +7 -5
- package/examples/gpca-pump/model/{views → catalog/viewpoints/risk/views}/risk_fmea_view.sysml +3 -3
- package/examples/gpca-pump/model/{views → catalog/viewpoints/risk/views}/risk_risk_chain_view.sysml +3 -3
- package/examples/gpca-pump/model/catalog/viewpoints/software/viewpoint.sysml +8 -0
- package/examples/gpca-pump/model/{views → catalog/viewpoints/software/views}/document_sdd_view.sysml +4 -4
- package/examples/gpca-pump/model/{views → catalog/viewpoints/software/views}/software_software_architecture_view.sysml +5 -5
- package/examples/gpca-pump/model/catalog/viewpoints/usability/viewpoint.sysml +8 -0
- package/examples/gpca-pump/model/{views → catalog/viewpoints/usability/views}/document_usability_view.sysml +8 -6
- package/examples/gpca-pump/model/catalog/viewpoints/verification/viewpoint.sysml +8 -0
- package/examples/gpca-pump/model/{views → catalog/viewpoints/verification/views}/document_vv_view.sysml +7 -5
- package/examples/gpca-pump/model/{views → catalog/viewpoints/verification/views}/verification_verification_coverage_view.sysml +3 -3
- package/examples/ivd-laboratory-system/model/catalog/project.sysml +24 -0
- package/examples/ivd-laboratory-system/model/catalog/viewpoints/unassigned/viewpoint.sysml +9 -0
- package/examples/ivd-laboratory-system/model/{viewpoints → catalog/viewpoints/unassigned/views}/ivd_laboratory_system_overview.sysml +1 -1
- package/examples/manual-surgical-instrument/model/catalog/manual_surgical_instrument.sysml +4 -2
- package/examples/manual-surgical-instrument/model/catalog/project.sysml +24 -0
- package/examples/manual-surgical-instrument/model/catalog/viewpoints/unassigned/viewpoint.sysml +9 -0
- package/examples/manual-surgical-instrument/model/{viewpoints → catalog/viewpoints/unassigned/views}/manual_surgical_instrument_overview.sysml +1 -1
- package/examples/multidimensional-layers/model/catalog/multidimensional_layers.sysml +6 -2
- package/examples/multidimensional-layers/model/catalog/project.sysml +24 -0
- package/examples/multidimensional-layers/model/catalog/viewpoints/unassigned/viewpoint.sysml +9 -0
- package/examples/multidimensional-layers/model/{viewpoints → catalog/viewpoints/unassigned/views}/multidimensional_layers_overview.sysml +1 -1
- package/examples/nested-architecture-dsm/README.md +49 -0
- package/examples/nested-architecture-dsm/model/catalog/architecture/functional/functions.sysml +179 -0
- package/examples/nested-architecture-dsm/model/catalog/architecture/logical/structure.sysml +165 -0
- package/examples/nested-architecture-dsm/model/catalog/assurance/requirements/needs.sysml +53 -0
- package/examples/nested-architecture-dsm/model/catalog/assurance/requirements/requirements.sysml +89 -0
- package/examples/nested-architecture-dsm/model/catalog/assurance/verification_validation/verification_validation.sysml +113 -0
- package/examples/nested-architecture-dsm/model/catalog/project.sysml +28 -0
- package/examples/nested-architecture-dsm/model/catalog/traces.sysml +48 -0
- package/examples/reusable-instrument/model/catalog/project.sysml +24 -0
- package/examples/reusable-instrument/model/catalog/reusable_instrument.sysml +11 -8
- package/examples/reusable-instrument/model/catalog/viewpoints/unassigned/viewpoint.sysml +9 -0
- package/examples/reusable-instrument/model/{viewpoints → catalog/viewpoints/unassigned/views}/reusable_instrument_overview.sysml +1 -1
- package/examples/ros-mobile-robot/README.md +40 -0
- package/examples/ros-mobile-robot/model/catalog/project.sysml +33 -0
- package/examples/ros-mobile-robot/model/catalog/ros_mobile_robot.sysml +296 -0
- package/examples/ros-mobile-robot/model/catalog/viewpoints/unassigned/viewpoint.sysml +7 -0
- package/examples/ros-mobile-robot/model/catalog/viewpoints/unassigned/views/ros_mobile_robot_overview.sysml +13 -0
- package/examples/software-only-medical-device/model/catalog/project.sysml +28 -0
- package/examples/software-only-medical-device/model/catalog/software_only_medical_device.sysml +11 -5
- package/examples/software-only-medical-device/model/catalog/viewpoints/unassigned/viewpoint.sysml +9 -0
- package/examples/software-only-medical-device/model/{viewpoints → catalog/viewpoints/unassigned/views}/software_only_medical_device_overview.sysml +1 -1
- package/examples/surgical-closure-workflow/model/catalog/project.sysml +24 -0
- package/examples/surgical-closure-workflow/model/catalog/surgical_closure_workflow.sysml +57 -57
- package/examples/surgical-closure-workflow/model/catalog/viewpoints/unassigned/viewpoint.sysml +9 -0
- package/examples/surgical-closure-workflow/model/{viewpoints → catalog/viewpoints/unassigned/views}/surgical_closure_workflow_overview.sysml +1 -1
- package/examples/surgical-robot/model/catalog/project.sysml +24 -0
- package/examples/surgical-robot/model/catalog/surgical_robot.sysml +6 -4
- package/examples/surgical-robot/model/catalog/viewpoints/unassigned/viewpoint.sysml +9 -0
- package/examples/surgical-robot/model/{viewpoints → catalog/viewpoints/unassigned/views}/surgical_robot_overview.sysml +1 -1
- package/examples/sysml-diagram-samples/README.md +7 -0
- package/examples/sysml-diagram-samples/dhf/documents/DOC-HAR-001.md +11 -0
- package/examples/sysml-diagram-samples/memo.package.yaml +11 -5
- package/examples/sysml-diagram-samples/model/catalog/project.sysml +33 -0
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/viewpoint.sysml +9 -0
- package/examples/sysml-diagram-samples/model/{samples → catalog/viewpoints/unassigned/views}/action_flow_view.sysml +23 -20
- package/examples/sysml-diagram-samples/model/{samples → catalog/viewpoints/unassigned/views}/context_view.sysml +11 -11
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/context_view.viewlayout +47 -0
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/functional_flow_view.sysml +143 -0
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/interconnection_view.sysml +87 -0
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/interconnection_view.viewlayout +94 -0
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/operational_behaviour_view.sysml +109 -0
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/operational_behaviour_view.viewlayout +13 -0
- package/examples/sysml-diagram-samples/model/{samples → catalog/viewpoints/unassigned/views}/requirements_view.sysml +6 -7
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/standard_activity_view.sysml +33 -0
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/state_transition_view.sysml +80 -0
- package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/tree_view.sysml +48 -0
- package/examples/sysml-diagram-samples/model/{samples → catalog/viewpoints/unassigned/views}/use_case_view.sysml +15 -9
- package/examples/sysml-diagram-samples/model/sysml_v2_activity_example.sysml +93 -0
- package/examples/temperature-alarm/model/catalog/project.sysml +24 -0
- package/examples/temperature-alarm/model/catalog/temperature_alarm.sysml +29 -21
- package/examples/temperature-alarm/model/catalog/viewpoints/unassigned/viewpoint.sysml +9 -0
- package/examples/temperature-alarm/model/{viewpoints → catalog/viewpoints/unassigned/views}/temperature_alarm_overview.sysml +1 -1
- package/examples/ui-screen-regions/README.md +117 -0
- package/examples/ui-screen-regions/model/catalog/architecture/functional/functions.sysml +84 -0
- package/examples/ui-screen-regions/model/catalog/architecture/implementation/ui.sysml +212 -0
- package/examples/ui-screen-regions/model/catalog/artifacts/assets/catalog.sysml +61 -0
- package/examples/ui-screen-regions/model/catalog/artifacts/assets/screen-captures/drugSelectorRegion/drug-selector-expanded-2.4.1.png +0 -0
- package/examples/ui-screen-regions/model/catalog/artifacts/assets/screen-captures/mainScreenLayout/main-screen-2.4.1.png +0 -0
- package/examples/ui-screen-regions/model/catalog/artifacts/assets/screen-captures/settingsScreenLayout/settings-screen-2.4.1.png +0 -0
- package/examples/ui-screen-regions/model/catalog/artifacts/reviews/comments.sysml +51 -0
- package/examples/ui-screen-regions/model/catalog/artifacts/reviews/notes.sysml +27 -0
- package/examples/ui-screen-regions/model/catalog/artifacts/reviews/rationales.sysml +27 -0
- package/examples/ui-screen-regions/model/catalog/assurance/human_factors/human_factors.sysml +59 -0
- package/examples/ui-screen-regions/model/catalog/assurance/requirements/needs.sysml +25 -0
- package/examples/ui-screen-regions/model/catalog/assurance/requirements/requirements.sysml +178 -0
- package/examples/ui-screen-regions/model/catalog/assurance/safety_risk/risk.sysml +93 -0
- package/examples/ui-screen-regions/model/catalog/assurance/verification_validation/verification_validation.sysml +75 -0
- package/examples/ui-screen-regions/model/catalog/project.sysml +45 -0
- package/examples/ui-screen-regions/model/catalog/relationships.sysml +8 -0
- package/examples/ui-screen-regions/model/catalog/traces.sysml +179 -0
- package/examples/ui-screen-regions/model/catalog/viewpoints/functional/viewpoint.sysml +8 -0
- package/examples/ui-screen-regions/model/catalog/viewpoints/functional/views/ui_functional_tree.sysml +62 -0
- package/examples/ui-screen-regions/model/catalog/viewpoints/requirements/viewpoint.sysml +8 -0
- package/examples/ui-screen-regions/model/catalog/viewpoints/requirements/views/ui_requirements_trace.sysml +62 -0
- package/examples/ui-screen-regions/model/catalog/viewpoints/risk/viewpoint.sysml +8 -0
- package/examples/ui-screen-regions/model/catalog/viewpoints/risk/views/ui_risk_chain.sysml +62 -0
- package/examples/ui-screen-regions/model/catalog/viewpoints/ui_layout/viewpoint.sysml +8 -0
- package/examples/ui-screen-regions/model/catalog/viewpoints/ui_layout/views/main_screen_layout.sysml +57 -0
- package/examples/ui-screen-regions/model/catalog/viewpoints/ui_layout/views/settings_screen_layout.sysml +52 -0
- package/examples/ui-screen-regions/model/catalog/viewpoints/ui_layout/views/ui_region_trace.sysml +54 -0
- package/extensions/LICENSES/MIT.txt +19 -0
- package/extensions/README.md +94 -0
- package/extensions/aadl/memo.package.yaml +18 -0
- package/extensions/aadl/src/aadl_extension.sysml +6 -0
- package/extensions/aadl/src/correspondence/memo_aadl_correspondence.sysml +147 -0
- package/extensions/aadl/src/methodology/aadl_methodology.sysml +17 -0
- package/extensions/aadl/src/runtime/memo_aadl_runtime.sysml +56 -0
- package/extensions/clinical/memo.package.yaml +18 -0
- package/extensions/clinical/src/methodology/clinical_methodology.sysml +22 -0
- package/extensions/cloud/memo.package.yaml +18 -0
- package/extensions/cloud/src/cloud_extension.sysml +44 -0
- package/extensions/cloud/src/methodology/cloud_methodology.sysml +17 -0
- package/extensions/container/memo.package.yaml +18 -0
- package/extensions/container/src/container_extension.sysml +37 -0
- package/extensions/container/src/methodology/container_methodology.sysml +17 -0
- package/extensions/messaging/memo.package.yaml +18 -0
- package/extensions/messaging/src/messaging_extension.sysml +64 -0
- package/extensions/messaging/src/methodology/messaging_methodology.sysml +17 -0
- package/extensions/ros/memo.package.yaml +18 -0
- package/extensions/ros/src/methodology/ros_methodology.sysml +25 -0
- package/extensions/ros/src/ros_extension.sysml +200 -0
- package/extensions/template/memo.package.yaml +17 -0
- package/extensions/template/src/extension.sysml +37 -0
- package/memo.manifest.yaml +15 -2
- package/methodologies/default/memo.package.yaml +19 -9
- package/methodologies/gpca/memo.package.yaml +18 -9
- package/ontology/memo.package.yaml +23 -8
- package/package.json +6 -6
- package/profile/memo.package.yaml +18 -9
- package/src/architecture/decisions/memo_decisions.sysml +28 -0
- package/src/architecture/functional/behavior/memo_behavior.sysml +50 -22
- package/src/architecture/functional/constraints/memo_constraints.sysml +3 -2
- package/src/architecture/functional/functions/memo_functions.sysml +93 -43
- package/src/architecture/implementation/software/runtime/memo_software_runtime.sysml +46 -24
- package/src/architecture/implementation/software/structure/memo_software_structure.sysml +52 -12
- package/src/architecture/implementation/ui/memo_ui.sysml +276 -53
- package/src/architecture/logical/interfaces/memo_interfaces.sysml +64 -13
- package/src/architecture/logical/structure/memo_logical_structure.sysml +92 -35
- package/src/architecture/operational/activities/memo_activities.sysml +10 -4
- package/src/architecture/operational/context/actors/memo_actors.sysml +5 -8
- package/src/architecture/operational/context/stakeholders/memo_stakeholders.sysml +13 -30
- package/src/architecture/operational/context/use_context/memo_use_context.sysml +42 -16
- package/src/architecture/operational/scenarios/memo_scenarios.sysml +57 -23
- package/src/architecture/operational/use_cases/memo_use_cases.sysml +35 -26
- package/src/architecture/operational/workflows/memo_workflows.sysml +28 -15
- package/src/architecture/realization/deployment/memo_deployment.sysml +111 -16
- package/src/architecture/realization/physical/memo_physical_architecture.sysml +27 -2
- package/src/artifacts/configuration_management/memo_configuration_management.sysml +35 -0
- package/src/artifacts/core/memo_controlled_artifacts.sysml +35 -0
- package/src/artifacts/documents/risk_management/memo_risk_management.sysml +12 -0
- package/src/artifacts/standards/cfr_21_820.sysml +116 -0
- package/src/artifacts/standards/fda_cybersecurity_2023.sysml +80 -0
- package/src/artifacts/standards/iec_60601_1.sysml +149 -0
- package/src/artifacts/standards/iec_60601_1_2.sysml +56 -0
- package/src/artifacts/standards/iec_60812.sysml +51 -0
- package/src/artifacts/standards/iec_62304.sysml +210 -0
- package/src/artifacts/standards/iec_62366_1.sysml +113 -0
- package/src/artifacts/standards/iec_81001_5_1.sysml +84 -0
- package/src/artifacts/standards/iso_13485.sysml +113 -0
- package/src/artifacts/standards/iso_14971.sysml +94 -0
- package/src/artifacts/standards/iso_iec_ieee_42010.sysml +42 -0
- package/src/artifacts/standards/memo_artifacts_standards_traceability.sysml +132 -0
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/21cfr820/design-input.md +1 -1
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/21cfr820/design-output.md +5 -5
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/21cfr820/design-review.md +1 -1
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/21cfr820/design-validation.md +2 -2
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/21cfr820/design-verification.md +2 -2
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/21cfr820/dhf-index.md +2 -2
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/21cfr820/transfer-plan.md +1 -1
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/21cfr820/user-needs.md +1 -1
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/21cfr820/vv-plan.md +3 -3
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/21cfr820/vv-report.md +4 -4
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/fda-cybersecurity/incident-response.md +1 -1
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/fda-cybersecurity/postmarket-surveillance.md +3 -2
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/fda-cybersecurity/security-arch.md +2 -2
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/fda-cybersecurity/threat-model.md +4 -4
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/fda-cybersecurity/vuln-assessment.md +4 -3
- package/src/artifacts/templates/dhf/iec-60601/hrs.md +170 -0
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iec-62304/detailed-design.md +1 -1
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iec-62304/integration-test.md +3 -3
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iec-62304/sad.md +6 -5
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iec-62304/sbom.md +3 -2
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iec-62304/sdp.md +5 -4
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iec-62304/soup.md +4 -2
- package/src/artifacts/templates/dhf/iec-62304/srs.md +172 -0
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iec-62304/sw-traceability.md +3 -3
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iec-62304/system-test.md +1 -1
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iec-62366/summative-eval.md +1 -1
- package/src/artifacts/templates/dhf/iec-62366/task-analysis.md +93 -0
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iec-62366/ue-plan.md +1 -1
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iec-62366/urra.md +3 -3
- package/src/artifacts/templates/dhf/iso-14971/fmea.md +116 -0
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iso-14971/har.md +3 -3
- package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iso-14971/rmp.md +2 -2
- package/src/artifacts/templates/dhf/system/sad.md +173 -0
- package/src/artifacts/templates/dhf/system/standards-checklist.md +87 -0
- package/src/artifacts/templates/dhf/system/standards-traceability.md +125 -0
- package/src/artifacts/templates/dhf/system/syrs.md +128 -0
- package/src/assurance/cybersecurity/memo_cybersecurity.sysml +39 -20
- package/src/assurance/human_factors/memo_human_factors.sysml +29 -22
- package/src/assurance/requirements/memo_requirements.sysml +5 -2
- package/src/assurance/requirements/needs/memo_needs.sysml +1 -1
- package/src/assurance/safety_risk/analysis/memo_fmea.sysml +118 -13
- package/src/assurance/safety_risk/memo_risk.sysml +78 -7
- package/src/assurance/safety_risk/postmarket_surveillance/memo_postmarket_surveillance.sysml +27 -0
- package/src/assurance/verification_validation/clinical_evaluation/memo_clinical_evaluation.sysml +11 -0
- package/src/assurance/verification_validation/memo_assurance.sysml +17 -21
- package/src/core/annotations/memo_annotations.sysml +96 -0
- package/src/core/common/memo_common.sysml +140 -18
- package/src/core/consistency_rules/consistency_rules.sysml +7 -0
- package/src/core/dimensions/dimensions.sysml +17 -1
- package/src/core/enumerations/memo_enumerations.sysml +101 -20
- package/src/core/methodology_scope/methodology_scope.sysml +7 -15
- package/src/core/relationships/memo_relationships.sysml +199 -194
- package/src/memo_namespaces.sysml +127 -67
- package/src/methodology/core/memo_core.sysml +69 -2
- package/src/methodology/profiles/memo_profiles.sysml +31 -41
- package/src/methodology/workflow/memo_workflow.sysml +7 -2
- package/src/rules/closure/closure_rules.sysml +104 -31
- package/src/rules/coverage/coverage_rules.sysml +4 -256
- package/src/rules/crosslayer/cross_layer_rules.sysml +6 -15
- package/src/rules/lifecycle/lifecycle_rules.sysml +4 -39
- package/src/rules/ontology/ontology_invariants.sysml +243 -74
- package/src/rules/quantitative/quantitative_rules.sysml +8 -8
- package/src/viewpoints/catalog/memo_viewpoint_catalog.sysml +10 -3
- package/src/viewpoints/clinical/clinical_viewpoint.sysml +4 -2
- package/src/viewpoints/clinical/{clinical_evidence_view → views/clinical_evidence_view}/clinical_evidence_view.sysml +2 -2
- package/src/viewpoints/context/context_viewpoint.sysml +4 -2
- package/src/viewpoints/context/{system_context_view → views/system_context_view}/system_context_view.sysml +2 -2
- package/src/viewpoints/cybersecurity/cybersecurity_viewpoint.sysml +4 -2
- package/src/viewpoints/cybersecurity/{cybersecurity_assessment_view → views/cybersecurity_assessment_view}/cybersecurity_assessment_view.sysml +2 -2
- package/src/viewpoints/cybersecurity/{threat_model_view → views/threat_model_view}/threat_model_view.sysml +2 -2
- package/src/viewpoints/definitions/memo_viewpoint_definitions.sysml +5 -0
- package/src/viewpoints/functional/functional_viewpoint.sysml +4 -2
- package/src/viewpoints/functional/{function_allocation_view → views/function_allocation_view}/function_allocation_view.sysml +3 -3
- package/src/viewpoints/functional/{system_functional_tree_view → views/system_functional_tree_view}/system_functional_tree_view.sysml +3 -3
- package/src/viewpoints/logical/logical_viewpoint.sysml +3 -1
- package/src/viewpoints/logical/{logical_architecture_view → views/logical_architecture_view}/logical_architecture_view.sysml +2 -2
- package/src/viewpoints/operational/operational_viewpoint.sysml +4 -2
- package/src/viewpoints/operational/{use_case_view → views/use_case_view}/use_case_view.sysml +3 -3
- package/src/viewpoints/physical/physical_viewpoint.sysml +3 -1
- package/src/viewpoints/physical/{network_topology_view → views/network_topology_view}/network_topology_view.sysml +2 -2
- package/src/viewpoints/physical/{physical_bom_view → views/physical_bom_view}/physical_bom_view.sysml +2 -2
- package/src/viewpoints/rendering/memo_rendering.sysml +354 -0
- package/src/viewpoints/requirements/requirements_viewpoint.sysml +3 -1
- package/src/viewpoints/requirements/{requirements_traceability_view → views/requirements_traceability_view}/requirements_traceability_view.sysml +2 -2
- package/src/viewpoints/risk/risk_viewpoint.sysml +3 -1
- package/src/viewpoints/risk/{risk_chain_view → views/risk_chain_view}/risk_chain_view.sysml +2 -2
- package/src/viewpoints/software/software_viewpoint.sysml +3 -1
- package/src/viewpoints/software/{software_architecture_view → views/software_architecture_view}/software_architecture_view.sysml +2 -2
- package/src/viewpoints/ui_layout/ui_layout_viewpoint.sysml +28 -0
- package/src/viewpoints/ui_layout/views/screen_layout_view/screen_layout_view.sysml +23 -0
- package/src/viewpoints/usability/usability_viewpoint.sysml +3 -1
- package/src/viewpoints/usability/{usability_engineering_view → views/usability_engineering_view}/usability_engineering_view.sysml +2 -2
- package/src/viewpoints/verification/verification_viewpoint.sysml +4 -2
- package/src/viewpoints/verification/{verification_coverage_view → views/verification_coverage_view}/verification_coverage_view.sysml +3 -3
- package/templates/connected-device/memo.package.yaml +11 -5
- package/templates/connected-device/model/catalog/project.sysml +28 -0
- package/templates/connected-device/syside.toml +1 -1
- package/templates/default/memo.package.yaml +11 -5
- package/templates/default/model/catalog/project.sysml +28 -0
- package/templates/default/syside.toml +1 -1
- package/templates/infusion-pump/memo.package.yaml +11 -5
- package/templates/infusion-pump/model/catalog/project.sysml +28 -0
- package/templates/infusion-pump/syside.toml +1 -1
- package/templates/monitoring-device/memo.package.yaml +11 -5
- package/templates/monitoring-device/model/catalog/project.sysml +28 -0
- package/templates/monitoring-device/syside.toml +1 -1
- package/templates/samd/memo.package.yaml +11 -5
- package/templates/samd/model/catalog/project.sysml +28 -0
- package/templates/samd/syside.toml +1 -1
- package/examples/connected-patient-monitor/model/connected_patient_monitor.sysml +0 -3
- package/examples/embedded-infusion-pump/model/embedded_infusion_pump.sysml +0 -3
- package/examples/extensions/README.md +0 -16
- package/examples/extensions/clinical/memo.package.yaml +0 -9
- package/examples/extensions/clinical/src/methodology/clinical_methodology.sysml +0 -14
- package/examples/extensions/template/memo.package.yaml +0 -9
- package/examples/extensions/template/src/extension.sysml +0 -15
- package/examples/functional-logical-physical/model/functional_logical_physical.sysml +0 -3
- package/examples/gpca-pump/memo.config.yaml +0 -9
- package/examples/gpca-pump/methodology/gpca_scope.sysml +0 -25
- package/examples/ivd-laboratory-system/model/ivd_laboratory_system.sysml +0 -3
- package/examples/manual-surgical-instrument/model/manual_surgical_instrument.sysml +0 -3
- package/examples/multidimensional-layers/model/multidimensional_layers.sysml +0 -4
- package/examples/reusable-instrument/model/reusable_instrument.sysml +0 -4
- package/examples/software-only-medical-device/model/software_only_medical_device.sysml +0 -4
- package/examples/surgical-closure-workflow/model/surgical_closure_workflow.sysml +0 -4
- package/examples/surgical-robot/model/surgical_robot.sysml +0 -4
- package/examples/sysml-diagram-samples/model/samples/functional_flow_view.sysml +0 -164
- package/examples/sysml-diagram-samples/model/samples/interconnection_view.sysml +0 -94
- package/examples/sysml-diagram-samples/model/samples/operational_behaviour_view.sysml +0 -135
- package/examples/sysml-diagram-samples/model/samples/state_transition_view.sysml +0 -109
- package/examples/sysml-diagram-samples/model/samples/tree_view.sysml +0 -56
- package/examples/temperature-alarm/model/temperature_alarm.sysml +0 -4
- package/ontology/memo.rendering.yaml +0 -84
- package/src/compliance/artifacts/memo_artifacts.sysml +0 -12
- package/src/compliance/change/memo_change.sysml +0 -17
- package/src/compliance/dhf-templates/iec-62304/srs.md +0 -138
- package/src/compliance/dhf-templates/iec-62366/task-analysis.md +0 -57
- package/src/compliance/dhf-templates/iso-14971/fmea.md +0 -93
- package/src/compliance/document_views/memo_document_views.sysml +0 -7
- package/src/compliance/iso14971/risk_management_file.sysml +0 -16
- package/src/compliance/postmarket/memo_postmarket.sysml +0 -16
- /package/{examples/extensions → extensions}/clinical/src/clinical_extension.sysml +0 -0
- /package/{examples/extensions → extensions}/clinical/src/procedures/memo_clinical_procedures.sysml +0 -0
- /package/src/{compliance/dhf-templates → artifacts/templates/dhf}/21cfr820/change-record.md +0 -0
- /package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iec-62304/change-control.md +0 -0
- /package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iec-62366/formative-eval.md +0 -0
- /package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iec-62366/ui-spec.md +0 -0
- /package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iec-62366/use-spec.md +0 -0
- /package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iso-14971/fta.md +0 -0
- /package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iso-14971/risk-benefit.md +0 -0
- /package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iso-14971/risk-matrix.md +0 -0
- /package/src/{compliance/dhf-templates → artifacts/templates/dhf}/iso-14971/rmr.md +0 -0
- /package/src/{compliance/dhf-templates → artifacts/templates/dhf}/shared/snippets/approval-block.md +0 -0
- /package/src/{compliance/dhf-templates → artifacts/templates/dhf}/shared/snippets/document-control-header.md +0 -0
- /package/src/{compliance/dhf-templates → artifacts/templates/dhf}/shared/snippets/references-section.md +0 -0
- /package/src/{compliance/dhf-templates → artifacts/templates/dhf}/shared/snippets/revision-history-table.md +0 -0
- /package/templates/connected-device/{src → model/catalog}/architecture/system.sysml +0 -0
- /package/templates/connected-device/{src/artifacts/artifacts.sysml → model/catalog/artifacts/catalog.sysml} +0 -0
- /package/templates/connected-device/{src → model/catalog}/assurance/requirements.sysml +0 -0
- /package/templates/default/{src → model/catalog}/architecture/system.sysml +0 -0
- /package/templates/default/{src/artifacts/artifacts.sysml → model/catalog/artifacts/catalog.sysml} +0 -0
- /package/templates/default/{src → model/catalog}/assurance/requirements.sysml +0 -0
- /package/templates/infusion-pump/{src → model/catalog}/architecture/system.sysml +0 -0
- /package/templates/infusion-pump/{src/artifacts/artifacts.sysml → model/catalog/artifacts/catalog.sysml} +0 -0
- /package/templates/infusion-pump/{src → model/catalog}/assurance/requirements.sysml +0 -0
- /package/templates/monitoring-device/{src → model/catalog}/architecture/system.sysml +0 -0
- /package/templates/monitoring-device/{src/artifacts/artifacts.sysml → model/catalog/artifacts/catalog.sysml} +0 -0
- /package/templates/monitoring-device/{src → model/catalog}/assurance/requirements.sysml +0 -0
- /package/templates/samd/{src → model/catalog}/architecture/system.sysml +0 -0
- /package/templates/samd/{src/artifacts/artifacts.sysml → model/catalog/artifacts/catalog.sysml} +0 -0
- /package/templates/samd/{src → model/catalog}/assurance/requirements.sysml +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
package
|
|
1
|
+
package memo_viewpoints_functional_views_function_allocation_view {
|
|
2
2
|
private import ScalarValues::*;
|
|
3
3
|
|
|
4
4
|
private import memo_viewpoints_definitions::*;
|
|
@@ -6,7 +6,7 @@ package memo_viewpoints_functional_function_allocation_view {
|
|
|
6
6
|
private import memo_viewpoints_functional_functional_viewpoint::*;
|
|
7
7
|
|
|
8
8
|
view functionAllocationView : MemoDiagramView {
|
|
9
|
-
expose
|
|
9
|
+
expose memo_viewpoints_functional_views_function_allocation_view::*;
|
|
10
10
|
attribute depth = 2;
|
|
11
11
|
attribute :>> id = "VIEW-FUNC-002";
|
|
12
12
|
attribute :>> name = "FunctionAllocationView";
|
|
@@ -20,7 +20,7 @@ package memo_viewpoints_functional_function_allocation_view {
|
|
|
20
20
|
part :>> selectionQuery {
|
|
21
21
|
attribute :>> id = "QRY-FUNC-002";
|
|
22
22
|
attribute :>> name = "FunctionAllocationQuery";
|
|
23
|
-
attribute :>> includeElementKinds = ("SystemFunction", "LogicalComponent");
|
|
23
|
+
attribute :>> includeElementKinds = ("SystemFunction", "ComponentFunction", "LogicalComponent");
|
|
24
24
|
attribute :>> includeLayers = ("functions", "logical_structure");
|
|
25
25
|
attribute :>> rationaleText = "Auto-populate function-to-component allocation from the functions and logical structure layers.";
|
|
26
26
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
package
|
|
1
|
+
package memo_viewpoints_functional_views_system_functional_tree_view {
|
|
2
2
|
private import ScalarValues::*;
|
|
3
3
|
|
|
4
4
|
private import memo_viewpoints_definitions::*;
|
|
@@ -6,7 +6,7 @@ package memo_viewpoints_functional_system_functional_tree_view {
|
|
|
6
6
|
private import memo_viewpoints_functional_functional_viewpoint::*;
|
|
7
7
|
|
|
8
8
|
view systemFunctionalTreeView : MemoDiagramView {
|
|
9
|
-
expose
|
|
9
|
+
expose memo_viewpoints_functional_views_system_functional_tree_view::*;
|
|
10
10
|
attribute depth = 2;
|
|
11
11
|
attribute :>> id = "VIEW-FUNC-001";
|
|
12
12
|
attribute :>> name = "SystemFunctionalTreeView";
|
|
@@ -20,7 +20,7 @@ package memo_viewpoints_functional_system_functional_tree_view {
|
|
|
20
20
|
part :>> selectionQuery {
|
|
21
21
|
attribute :>> id = "QRY-FUNC-001";
|
|
22
22
|
attribute :>> name = "SystemFunctionalTreeQuery";
|
|
23
|
-
attribute :>> includeElementKinds = ("SystemFunction");
|
|
23
|
+
attribute :>> includeElementKinds = ("SystemFunction", "ComponentFunction");
|
|
24
24
|
attribute :>> includeLayers = ("functions");
|
|
25
25
|
attribute :>> rationaleText = "Auto-populate the functional tree from the functions layer.";
|
|
26
26
|
}
|
|
@@ -9,7 +9,7 @@ package memo_viewpoints_logical_logical_viewpoint {
|
|
|
9
9
|
attribute :>> name = "LogicalArchitectureViewpoint";
|
|
10
10
|
attribute :>> title = "Logical Viewpoint";
|
|
11
11
|
attribute :>> shortDescription = "Shows logical decomposition and interfaces.";
|
|
12
|
-
attribute :>>
|
|
12
|
+
attribute :>> description = "Default viewpoint derived from the logical architecture layer for subsystem structure, responsibilities, and major interactions, independent of physical realization.";
|
|
13
13
|
attribute :>> purpose = "Describe the system's logical decomposition.";
|
|
14
14
|
attribute :>> audience = (AudienceKind::systemArchitect);
|
|
15
15
|
attribute :>> stage = WorkflowStageKind::architecture;
|
|
@@ -18,6 +18,8 @@ package memo_viewpoints_logical_logical_viewpoint {
|
|
|
18
18
|
attribute :>> presentationKind = (PresentationKind::blockDiagram);
|
|
19
19
|
attribute :>> concernKinds = (ConcernKind::safety, ConcernKind::performance);
|
|
20
20
|
attribute :>> includedLayers = ("logical_structure", "interfaces");
|
|
21
|
+
attribute :>> explorerLane = "architecture";
|
|
22
|
+
attribute :>> explorerOrder = 3;
|
|
21
23
|
attribute :>> allowedElementKinds = ("LogicalComponent", "Interface");
|
|
22
24
|
attribute :>> userExtensible = true;
|
|
23
25
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
package
|
|
1
|
+
package memo_viewpoints_logical_views_logical_architecture_view {
|
|
2
2
|
private import ScalarValues::*;
|
|
3
3
|
|
|
4
4
|
private import memo_viewpoints_definitions::*;
|
|
@@ -6,7 +6,7 @@ package memo_viewpoints_logical_logical_architecture_view {
|
|
|
6
6
|
private import memo_viewpoints_logical_logical_viewpoint::*;
|
|
7
7
|
|
|
8
8
|
view logicalArchitectureView : MemoDiagramView {
|
|
9
|
-
expose
|
|
9
|
+
expose memo_viewpoints_logical_views_logical_architecture_view::*;
|
|
10
10
|
attribute depth = 2;
|
|
11
11
|
attribute :>> id = "VIEW-LOG-001";
|
|
12
12
|
attribute :>> name = "LogicalArchitectureView";
|
|
@@ -9,7 +9,7 @@ package memo_viewpoints_operational_operational_viewpoint {
|
|
|
9
9
|
attribute :>> name = "OperationalViewpoint";
|
|
10
10
|
attribute :>> title = "Operational & Use-Case Viewpoint";
|
|
11
11
|
attribute :>> shortDescription = "Shows actors, use contexts, operational scenarios, and system capabilities.";
|
|
12
|
-
attribute :>>
|
|
12
|
+
attribute :>> description = "Default viewpoint derived from the context, operational, and system layers for how actors use the device — operational scenarios, capabilities, and the functional chains that realize them.";
|
|
13
13
|
attribute :>> purpose = "Communicate how actors interact with the system and which capabilities they invoke.";
|
|
14
14
|
attribute :>> audience = (AudienceKind::projectLead, AudienceKind::systemArchitect);
|
|
15
15
|
attribute :>> stage = WorkflowStageKind::context;
|
|
@@ -18,7 +18,9 @@ package memo_viewpoints_operational_operational_viewpoint {
|
|
|
18
18
|
attribute :>> presentationKind = (PresentationKind::custom);
|
|
19
19
|
attribute :>> concernKinds = (ConcernKind::performance, ConcernKind::interoperability);
|
|
20
20
|
attribute :>> includedLayers = ("context", "operational", "system");
|
|
21
|
-
attribute :>>
|
|
21
|
+
attribute :>> explorerLane = "architecture";
|
|
22
|
+
attribute :>> explorerOrder = 1;
|
|
23
|
+
attribute :>> allowedElementKinds = ("Actor", "UseContext", "OperationalActivity", "MemoScenario[scenarioKind=operative]");
|
|
22
24
|
attribute :>> userExtensible = true;
|
|
23
25
|
}
|
|
24
26
|
}
|
package/src/viewpoints/operational/{use_case_view → views/use_case_view}/use_case_view.sysml
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
package
|
|
1
|
+
package memo_viewpoints_operational_views_use_case_view {
|
|
2
2
|
private import ScalarValues::*;
|
|
3
3
|
|
|
4
4
|
private import memo_viewpoints_definitions::*;
|
|
@@ -6,7 +6,7 @@ package memo_viewpoints_operational_use_case_view {
|
|
|
6
6
|
private import memo_viewpoints_operational_operational_viewpoint::*;
|
|
7
7
|
|
|
8
8
|
view useCaseView : MemoDiagramView {
|
|
9
|
-
expose
|
|
9
|
+
expose memo_viewpoints_operational_views_use_case_view::*;
|
|
10
10
|
attribute depth = 2;
|
|
11
11
|
attribute :>> id = "VIEW-OPS-001";
|
|
12
12
|
attribute :>> name = "UseCaseView";
|
|
@@ -20,7 +20,7 @@ package memo_viewpoints_operational_use_case_view {
|
|
|
20
20
|
part :>> selectionQuery {
|
|
21
21
|
attribute :>> id = "QRY-OPS-001";
|
|
22
22
|
attribute :>> name = "UseCaseQuery";
|
|
23
|
-
attribute :>> includeElementKinds = ("Actor", "UseContext", "
|
|
23
|
+
attribute :>> includeElementKinds = ("Actor", "UseContext", "MemoScenario[scenarioKind=operative]");
|
|
24
24
|
attribute :>> includeLayers = ("context", "operational");
|
|
25
25
|
attribute :>> rationaleText = "Auto-populate the use case view from the context and operational layers.";
|
|
26
26
|
}
|
|
@@ -9,7 +9,7 @@ package memo_viewpoints_physical_physical_viewpoint {
|
|
|
9
9
|
attribute :>> name = "PhysicalViewpoint";
|
|
10
10
|
attribute :>> title = "Physical Viewpoint";
|
|
11
11
|
attribute :>> shortDescription = "Shows physical components, hardware structure, and their interconnections.";
|
|
12
|
-
attribute :>>
|
|
12
|
+
attribute :>> description = "Default viewpoint derived from the physical and hardware structure layers for bill-of-materials, hardware decomposition, physical interfaces, and network/connectivity topology.";
|
|
13
13
|
attribute :>> purpose = "Describe the system's physical realization and interconnections.";
|
|
14
14
|
attribute :>> audience = (AudienceKind::hardwareEngineer);
|
|
15
15
|
attribute :>> stage = WorkflowStageKind::architecture;
|
|
@@ -18,6 +18,8 @@ package memo_viewpoints_physical_physical_viewpoint {
|
|
|
18
18
|
attribute :>> presentationKind = (PresentationKind::blockDiagram);
|
|
19
19
|
attribute :>> concernKinds = (ConcernKind::reliability, ConcernKind::interoperability);
|
|
20
20
|
attribute :>> includedLayers = ("hardware_structure", "physical");
|
|
21
|
+
attribute :>> explorerLane = "architecture";
|
|
22
|
+
attribute :>> explorerOrder = 5;
|
|
21
23
|
attribute :>> allowedElementKinds = ("ProcessingNode", "HardwareAssembly", "PhysicalPort");
|
|
22
24
|
attribute :>> userExtensible = true;
|
|
23
25
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
package
|
|
1
|
+
package memo_viewpoints_physical_views_network_topology_view {
|
|
2
2
|
private import ScalarValues::*;
|
|
3
3
|
|
|
4
4
|
private import memo_viewpoints_definitions::*;
|
|
@@ -6,7 +6,7 @@ package memo_viewpoints_physical_network_topology_view {
|
|
|
6
6
|
private import memo_viewpoints_physical_physical_viewpoint::*;
|
|
7
7
|
|
|
8
8
|
view networkTopologyView : MemoDiagramView {
|
|
9
|
-
expose
|
|
9
|
+
expose memo_viewpoints_physical_views_network_topology_view::*;
|
|
10
10
|
attribute depth = 2;
|
|
11
11
|
attribute :>> id = "VIEW-PHY-002";
|
|
12
12
|
attribute :>> name = "NetworkTopologyView";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
package
|
|
1
|
+
package memo_viewpoints_physical_views_physical_bom_view {
|
|
2
2
|
private import ScalarValues::*;
|
|
3
3
|
|
|
4
4
|
private import memo_viewpoints_definitions::*;
|
|
@@ -6,7 +6,7 @@ package memo_viewpoints_physical_physical_bom_view {
|
|
|
6
6
|
private import memo_viewpoints_physical_physical_viewpoint::*;
|
|
7
7
|
|
|
8
8
|
view physicalBOMView : MemoDiagramView {
|
|
9
|
-
expose
|
|
9
|
+
expose memo_viewpoints_physical_views_physical_bom_view::*;
|
|
10
10
|
attribute depth = 2;
|
|
11
11
|
attribute :>> id = "VIEW-PHY-001";
|
|
12
12
|
attribute :>> name = "PhysicalBOMView";
|
|
@@ -0,0 +1,354 @@
|
|
|
1
|
+
// Architecture-layer rendering and Model Explorer taxonomy.
|
|
2
|
+
//
|
|
3
|
+
// This content used to live in `ontology/memo.rendering.yaml`. Both halves of
|
|
4
|
+
// that file decided how MEMO's own kinds are grouped and presented, which makes
|
|
5
|
+
// them ontology metadata, not application settings: a project that received the
|
|
6
|
+
// ontology without the YAML got a different Explorer. They are SysML here so
|
|
7
|
+
// that the ontology carries its own taxonomy wherever it is resolved.
|
|
8
|
+
//
|
|
9
|
+
// The colours are the v12 Visual Map palette. They are the ontology's authored
|
|
10
|
+
// default; an application may still theme over them, but it no longer has to
|
|
11
|
+
// supply them for the model to be complete.
|
|
12
|
+
package memo_viewpoints_rendering {
|
|
13
|
+
private import ScalarValues::*;
|
|
14
|
+
|
|
15
|
+
private import memo_core_common::*;
|
|
16
|
+
|
|
17
|
+
// The presentation identity of one architecture layer.
|
|
18
|
+
part def LayerRendering :> MemoPart {
|
|
19
|
+
attribute layerId : String;
|
|
20
|
+
attribute layerLabel : String;
|
|
21
|
+
attribute layerColor : String;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
// Where a source namespace's kinds appear in the Model Explorer tree.
|
|
25
|
+
// `sourceNamespace` names the ontology namespace or kind group the
|
|
26
|
+
// classification applies to; `explorerDomain` and `explorerGroup` name its
|
|
27
|
+
// place in MEMO's V-model taxonomy.
|
|
28
|
+
part def ExplorerClassification :> MemoPart {
|
|
29
|
+
attribute sourceNamespace : String;
|
|
30
|
+
attribute explorerDomain : String;
|
|
31
|
+
attribute explorerGroup : String;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
part layerOperationalRendering : LayerRendering {
|
|
35
|
+
attribute :>> id = "LAYER-OPERATIONAL";
|
|
36
|
+
attribute :>> name = "OperationalLayerRendering";
|
|
37
|
+
attribute :>> layerId = "operational";
|
|
38
|
+
attribute :>> layerLabel = "Operational";
|
|
39
|
+
attribute :>> layerColor = "#C0392B";
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
part layerBehavioralRendering : LayerRendering {
|
|
43
|
+
attribute :>> id = "LAYER-BEHAVIORAL";
|
|
44
|
+
attribute :>> name = "BehavioralLayerRendering";
|
|
45
|
+
attribute :>> layerId = "behavioral";
|
|
46
|
+
attribute :>> layerLabel = "Behavioral";
|
|
47
|
+
attribute :>> layerColor = "#E74C3C";
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
part layerFunctionalRendering : LayerRendering {
|
|
51
|
+
attribute :>> id = "LAYER-FUNCTIONAL";
|
|
52
|
+
attribute :>> name = "FunctionalLayerRendering";
|
|
53
|
+
attribute :>> layerId = "functional";
|
|
54
|
+
attribute :>> layerLabel = "Functional";
|
|
55
|
+
attribute :>> layerColor = "#E67E22";
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
part layerLogicalRendering : LayerRendering {
|
|
59
|
+
attribute :>> id = "LAYER-LOGICAL";
|
|
60
|
+
attribute :>> name = "LogicalLayerRendering";
|
|
61
|
+
attribute :>> layerId = "logical";
|
|
62
|
+
attribute :>> layerLabel = "Logical";
|
|
63
|
+
attribute :>> layerColor = "#7B68EE";
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
part layerSoftwareRendering : LayerRendering {
|
|
67
|
+
attribute :>> id = "LAYER-SOFTWARE";
|
|
68
|
+
attribute :>> name = "SoftwareLayerRendering";
|
|
69
|
+
attribute :>> layerId = "software";
|
|
70
|
+
attribute :>> layerLabel = "Software";
|
|
71
|
+
attribute :>> layerColor = "#F39C12";
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
part layerSoftwareExtensionRendering : LayerRendering {
|
|
75
|
+
attribute :>> id = "LAYER-SOFTWARE-EXTENSION";
|
|
76
|
+
attribute :>> name = "Software Extension (ROS)LayerRendering";
|
|
77
|
+
attribute :>> layerId = "software-extension";
|
|
78
|
+
attribute :>> layerLabel = "Software Extension (ROS)";
|
|
79
|
+
attribute :>> layerColor = "#D4AC0D";
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
part layerHardwareRendering : LayerRendering {
|
|
83
|
+
attribute :>> id = "LAYER-HARDWARE";
|
|
84
|
+
attribute :>> name = "HardwareLayerRendering";
|
|
85
|
+
attribute :>> layerId = "hardware";
|
|
86
|
+
attribute :>> layerLabel = "Hardware";
|
|
87
|
+
attribute :>> layerColor = "#95A5A6";
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
part layerSafetyRendering : LayerRendering {
|
|
91
|
+
attribute :>> id = "LAYER-SAFETY";
|
|
92
|
+
attribute :>> name = "SafetyLayerRendering";
|
|
93
|
+
attribute :>> layerId = "safety";
|
|
94
|
+
attribute :>> layerLabel = "Safety";
|
|
95
|
+
attribute :>> layerColor = "#E74C3C";
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
part layerSecurityRendering : LayerRendering {
|
|
99
|
+
attribute :>> id = "LAYER-SECURITY";
|
|
100
|
+
attribute :>> name = "SecurityLayerRendering";
|
|
101
|
+
attribute :>> layerId = "security";
|
|
102
|
+
attribute :>> layerLabel = "Security";
|
|
103
|
+
attribute :>> layerColor = "#2C3E50";
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
part layerPrivacyRendering : LayerRendering {
|
|
107
|
+
attribute :>> id = "LAYER-PRIVACY";
|
|
108
|
+
attribute :>> name = "PrivacyLayerRendering";
|
|
109
|
+
attribute :>> layerId = "privacy";
|
|
110
|
+
attribute :>> layerLabel = "Privacy";
|
|
111
|
+
attribute :>> layerColor = "#8E44AD";
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
part layerVerificationRendering : LayerRendering {
|
|
115
|
+
attribute :>> id = "LAYER-VERIFICATION";
|
|
116
|
+
attribute :>> name = "VerificationLayerRendering";
|
|
117
|
+
attribute :>> layerId = "verification";
|
|
118
|
+
attribute :>> layerLabel = "Verification";
|
|
119
|
+
attribute :>> layerColor = "#2ECC71";
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
part explorerActivitiesClassification : ExplorerClassification {
|
|
123
|
+
attribute :>> id = "EXPL-001";
|
|
124
|
+
attribute :>> name = "activitiesExplorerClassification";
|
|
125
|
+
attribute :>> sourceNamespace = "activities";
|
|
126
|
+
attribute :>> explorerDomain = "architecture";
|
|
127
|
+
attribute :>> explorerGroup = "operational";
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
part explorerContextClassification : ExplorerClassification {
|
|
131
|
+
attribute :>> id = "EXPL-002";
|
|
132
|
+
attribute :>> name = "contextExplorerClassification";
|
|
133
|
+
attribute :>> sourceNamespace = "context";
|
|
134
|
+
attribute :>> explorerDomain = "architecture";
|
|
135
|
+
attribute :>> explorerGroup = "operational";
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
part explorerActorsClassification : ExplorerClassification {
|
|
139
|
+
attribute :>> id = "EXPL-003";
|
|
140
|
+
attribute :>> name = "actorsExplorerClassification";
|
|
141
|
+
attribute :>> sourceNamespace = "actors";
|
|
142
|
+
attribute :>> explorerDomain = "architecture";
|
|
143
|
+
attribute :>> explorerGroup = "operational";
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
part explorerUseContextClassification : ExplorerClassification {
|
|
147
|
+
attribute :>> id = "EXPL-004";
|
|
148
|
+
attribute :>> name = "use_contextExplorerClassification";
|
|
149
|
+
attribute :>> sourceNamespace = "use_context";
|
|
150
|
+
attribute :>> explorerDomain = "architecture";
|
|
151
|
+
attribute :>> explorerGroup = "operational";
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
part explorerWorkflowsClassification : ExplorerClassification {
|
|
155
|
+
attribute :>> id = "EXPL-005";
|
|
156
|
+
attribute :>> name = "workflowsExplorerClassification";
|
|
157
|
+
attribute :>> sourceNamespace = "workflows";
|
|
158
|
+
attribute :>> explorerDomain = "architecture";
|
|
159
|
+
attribute :>> explorerGroup = "operational";
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
part explorerScenariosClassification : ExplorerClassification {
|
|
163
|
+
attribute :>> id = "EXPL-006";
|
|
164
|
+
attribute :>> name = "scenariosExplorerClassification";
|
|
165
|
+
attribute :>> sourceNamespace = "scenarios";
|
|
166
|
+
attribute :>> explorerDomain = "architecture";
|
|
167
|
+
attribute :>> explorerGroup = "operational";
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
part explorerUseCasesClassification : ExplorerClassification {
|
|
171
|
+
attribute :>> id = "EXPL-007";
|
|
172
|
+
attribute :>> name = "use_casesExplorerClassification";
|
|
173
|
+
attribute :>> sourceNamespace = "use_cases";
|
|
174
|
+
attribute :>> explorerDomain = "architecture";
|
|
175
|
+
attribute :>> explorerGroup = "operational";
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
part explorerInteractionClassification : ExplorerClassification {
|
|
179
|
+
attribute :>> id = "EXPL-008";
|
|
180
|
+
attribute :>> name = "interactionExplorerClassification";
|
|
181
|
+
attribute :>> sourceNamespace = "interaction";
|
|
182
|
+
attribute :>> explorerDomain = "architecture";
|
|
183
|
+
attribute :>> explorerGroup = "operational";
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
part explorerOperationalClassification : ExplorerClassification {
|
|
187
|
+
attribute :>> id = "EXPL-009";
|
|
188
|
+
attribute :>> name = "operationalExplorerClassification";
|
|
189
|
+
attribute :>> sourceNamespace = "operational";
|
|
190
|
+
attribute :>> explorerDomain = "architecture";
|
|
191
|
+
attribute :>> explorerGroup = "operational";
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
part explorerFunctionsClassification : ExplorerClassification {
|
|
195
|
+
attribute :>> id = "EXPL-010";
|
|
196
|
+
attribute :>> name = "functionsExplorerClassification";
|
|
197
|
+
attribute :>> sourceNamespace = "functions";
|
|
198
|
+
attribute :>> explorerDomain = "architecture";
|
|
199
|
+
attribute :>> explorerGroup = "functional";
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
part explorerBehaviorClassification : ExplorerClassification {
|
|
203
|
+
attribute :>> id = "EXPL-011";
|
|
204
|
+
attribute :>> name = "behaviorExplorerClassification";
|
|
205
|
+
attribute :>> sourceNamespace = "behavior";
|
|
206
|
+
attribute :>> explorerDomain = "architecture";
|
|
207
|
+
attribute :>> explorerGroup = "functional";
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
part explorerConstraintsClassification : ExplorerClassification {
|
|
211
|
+
attribute :>> id = "EXPL-012";
|
|
212
|
+
attribute :>> name = "constraintsExplorerClassification";
|
|
213
|
+
attribute :>> sourceNamespace = "constraints";
|
|
214
|
+
attribute :>> explorerDomain = "architecture";
|
|
215
|
+
attribute :>> explorerGroup = "functional";
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
part explorerLogicalStructureClassification : ExplorerClassification {
|
|
219
|
+
attribute :>> id = "EXPL-013";
|
|
220
|
+
attribute :>> name = "logical_structureExplorerClassification";
|
|
221
|
+
attribute :>> sourceNamespace = "logical_structure";
|
|
222
|
+
attribute :>> explorerDomain = "architecture";
|
|
223
|
+
attribute :>> explorerGroup = "logical";
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
part explorerInterfacesClassification : ExplorerClassification {
|
|
227
|
+
attribute :>> id = "EXPL-014";
|
|
228
|
+
attribute :>> name = "interfacesExplorerClassification";
|
|
229
|
+
attribute :>> sourceNamespace = "interfaces";
|
|
230
|
+
attribute :>> explorerDomain = "architecture";
|
|
231
|
+
attribute :>> explorerGroup = "logical";
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
part explorerHardwareStructureClassification : ExplorerClassification {
|
|
235
|
+
attribute :>> id = "EXPL-015";
|
|
236
|
+
attribute :>> name = "hardware_structureExplorerClassification";
|
|
237
|
+
attribute :>> sourceNamespace = "hardware_structure";
|
|
238
|
+
attribute :>> explorerDomain = "architecture";
|
|
239
|
+
attribute :>> explorerGroup = "implementation";
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
part explorerImplementationClassification : ExplorerClassification {
|
|
243
|
+
attribute :>> id = "EXPL-016";
|
|
244
|
+
attribute :>> name = "implementationExplorerClassification";
|
|
245
|
+
attribute :>> sourceNamespace = "implementation";
|
|
246
|
+
attribute :>> explorerDomain = "architecture";
|
|
247
|
+
attribute :>> explorerGroup = "implementation";
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
part explorerSoftwareStructureClassification : ExplorerClassification {
|
|
251
|
+
attribute :>> id = "EXPL-017";
|
|
252
|
+
attribute :>> name = "software_structureExplorerClassification";
|
|
253
|
+
attribute :>> sourceNamespace = "software_structure";
|
|
254
|
+
attribute :>> explorerDomain = "architecture";
|
|
255
|
+
attribute :>> explorerGroup = "implementation";
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
part explorerSoftwareRuntimeClassification : ExplorerClassification {
|
|
259
|
+
attribute :>> id = "EXPL-018";
|
|
260
|
+
attribute :>> name = "software_runtimeExplorerClassification";
|
|
261
|
+
attribute :>> sourceNamespace = "software_runtime";
|
|
262
|
+
attribute :>> explorerDomain = "architecture";
|
|
263
|
+
attribute :>> explorerGroup = "implementation";
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
part explorerPhysicalClassification : ExplorerClassification {
|
|
267
|
+
attribute :>> id = "EXPL-019";
|
|
268
|
+
attribute :>> name = "physicalExplorerClassification";
|
|
269
|
+
attribute :>> sourceNamespace = "physical";
|
|
270
|
+
attribute :>> explorerDomain = "architecture";
|
|
271
|
+
attribute :>> explorerGroup = "realization";
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
part explorerDeploymentClassification : ExplorerClassification {
|
|
275
|
+
attribute :>> id = "EXPL-020";
|
|
276
|
+
attribute :>> name = "deploymentExplorerClassification";
|
|
277
|
+
attribute :>> sourceNamespace = "deployment";
|
|
278
|
+
attribute :>> explorerDomain = "architecture";
|
|
279
|
+
attribute :>> explorerGroup = "realization";
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
part explorerNeedsClassification : ExplorerClassification {
|
|
283
|
+
attribute :>> id = "EXPL-021";
|
|
284
|
+
attribute :>> name = "needsExplorerClassification";
|
|
285
|
+
attribute :>> sourceNamespace = "needs";
|
|
286
|
+
attribute :>> explorerDomain = "assurance";
|
|
287
|
+
attribute :>> explorerGroup = "requirements";
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
part explorerRequirementsClassification : ExplorerClassification {
|
|
291
|
+
attribute :>> id = "EXPL-022";
|
|
292
|
+
attribute :>> name = "requirementsExplorerClassification";
|
|
293
|
+
attribute :>> sourceNamespace = "requirements";
|
|
294
|
+
attribute :>> explorerDomain = "assurance";
|
|
295
|
+
attribute :>> explorerGroup = "requirements";
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
part explorerSafetyClassification : ExplorerClassification {
|
|
299
|
+
attribute :>> id = "EXPL-023";
|
|
300
|
+
attribute :>> name = "safetyExplorerClassification";
|
|
301
|
+
attribute :>> sourceNamespace = "safety";
|
|
302
|
+
attribute :>> explorerDomain = "assurance";
|
|
303
|
+
attribute :>> explorerGroup = "safety-risk";
|
|
304
|
+
}
|
|
305
|
+
|
|
306
|
+
part explorerSafetyAnalysisClassification : ExplorerClassification {
|
|
307
|
+
attribute :>> id = "EXPL-024";
|
|
308
|
+
attribute :>> name = "safety_analysisExplorerClassification";
|
|
309
|
+
attribute :>> sourceNamespace = "safety_analysis";
|
|
310
|
+
attribute :>> explorerDomain = "assurance";
|
|
311
|
+
attribute :>> explorerGroup = "safety-risk";
|
|
312
|
+
}
|
|
313
|
+
|
|
314
|
+
part explorerCybersecurityClassification : ExplorerClassification {
|
|
315
|
+
attribute :>> id = "EXPL-025";
|
|
316
|
+
attribute :>> name = "cybersecurityExplorerClassification";
|
|
317
|
+
attribute :>> sourceNamespace = "cybersecurity";
|
|
318
|
+
attribute :>> explorerDomain = "assurance";
|
|
319
|
+
attribute :>> explorerGroup = "cybersecurity";
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
part explorerHumanFactorsClassification : ExplorerClassification {
|
|
323
|
+
attribute :>> id = "EXPL-026";
|
|
324
|
+
attribute :>> name = "human_factorsExplorerClassification";
|
|
325
|
+
attribute :>> sourceNamespace = "human_factors";
|
|
326
|
+
attribute :>> explorerDomain = "assurance";
|
|
327
|
+
attribute :>> explorerGroup = "human-factors";
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
part explorerVerificationClassification : ExplorerClassification {
|
|
331
|
+
attribute :>> id = "EXPL-027";
|
|
332
|
+
attribute :>> name = "verificationExplorerClassification";
|
|
333
|
+
attribute :>> sourceNamespace = "verification";
|
|
334
|
+
attribute :>> explorerDomain = "assurance";
|
|
335
|
+
attribute :>> explorerGroup = "verification-validation";
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
part explorerCoreClassification : ExplorerClassification {
|
|
339
|
+
attribute :>> id = "EXPL-028";
|
|
340
|
+
attribute :>> name = "coreExplorerClassification";
|
|
341
|
+
attribute :>> sourceNamespace = "core";
|
|
342
|
+
attribute :>> explorerDomain = "assurance";
|
|
343
|
+
attribute :>> explorerGroup = "evidence";
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
part explorerMethodologyClassification : ExplorerClassification {
|
|
347
|
+
attribute :>> id = "EXPL-029";
|
|
348
|
+
attribute :>> name = "methodologyExplorerClassification";
|
|
349
|
+
attribute :>> sourceNamespace = "methodology";
|
|
350
|
+
attribute :>> explorerDomain = "methodology";
|
|
351
|
+
attribute :>> explorerGroup = "methodology";
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
}
|
|
@@ -9,7 +9,7 @@ package memo_viewpoints_requirements_requirements_viewpoint {
|
|
|
9
9
|
attribute :>> name = "RequirementsViewpoint";
|
|
10
10
|
attribute :>> title = "Requirements Viewpoint";
|
|
11
11
|
attribute :>> shortDescription = "Shows stakeholder needs and their decomposition into system, software, and hardware requirements.";
|
|
12
|
-
attribute :>>
|
|
12
|
+
attribute :>> description = "Default viewpoint derived from the requirements layer for requirements traceability — the chain from stakeholder need through system, software, and hardware requirements, supporting IEC 62304 §5.1.1 and ISO 13485 §7.3.3.";
|
|
13
13
|
attribute :>> purpose = "Communicate requirements decomposition and traceability.";
|
|
14
14
|
attribute :>> audience = (AudienceKind::regulatoryEngineer, AudienceKind::systemArchitect);
|
|
15
15
|
attribute :>> stage = WorkflowStageKind::requirements;
|
|
@@ -18,6 +18,8 @@ package memo_viewpoints_requirements_requirements_viewpoint {
|
|
|
18
18
|
attribute :>> presentationKind = (PresentationKind::traceMatrix);
|
|
19
19
|
attribute :>> concernKinds = (ConcernKind::regulatory, ConcernKind::safety);
|
|
20
20
|
attribute :>> includedLayers = ("requirements");
|
|
21
|
+
attribute :>> explorerLane = "assurance";
|
|
22
|
+
attribute :>> explorerOrder = 1;
|
|
21
23
|
attribute :>> allowedElementKinds = ("Need", "Requirement");
|
|
22
24
|
attribute :>> userExtensible = true;
|
|
23
25
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
package
|
|
1
|
+
package memo_viewpoints_requirements_views_requirements_traceability_view {
|
|
2
2
|
private import ScalarValues::*;
|
|
3
3
|
|
|
4
4
|
private import memo_viewpoints_definitions::*;
|
|
@@ -6,7 +6,7 @@ package memo_viewpoints_requirements_requirements_traceability_view {
|
|
|
6
6
|
private import memo_viewpoints_requirements_requirements_viewpoint::*;
|
|
7
7
|
|
|
8
8
|
view requirementsTraceabilityView : MemoDiagramView {
|
|
9
|
-
expose
|
|
9
|
+
expose memo_viewpoints_requirements_views_requirements_traceability_view::*;
|
|
10
10
|
attribute depth = 2;
|
|
11
11
|
attribute :>> id = "VIEW-REQ-001";
|
|
12
12
|
attribute :>> name = "RequirementsTraceabilityView";
|
|
@@ -9,7 +9,7 @@ package memo_viewpoints_risk_risk_viewpoint {
|
|
|
9
9
|
attribute :>> name = "RiskViewpoint";
|
|
10
10
|
attribute :>> title = "Risk and Control Viewpoint";
|
|
11
11
|
attribute :>> shortDescription = "Shows hazards, risks, controls, and assurance links.";
|
|
12
|
-
attribute :>>
|
|
12
|
+
attribute :>> description = "Default viewpoint derived from the risk layer for ISO 14971-style reasoning across hazard, hazardous situation, harm, control, and verification evidence.";
|
|
13
13
|
attribute :>> purpose = "Communicate safety risk chains and controls.";
|
|
14
14
|
attribute :>> audience = (AudienceKind::safetyEngineer);
|
|
15
15
|
attribute :>> stage = WorkflowStageKind::risk;
|
|
@@ -18,6 +18,8 @@ package memo_viewpoints_risk_risk_viewpoint {
|
|
|
18
18
|
attribute :>> presentationKind = (PresentationKind::riskTable);
|
|
19
19
|
attribute :>> concernKinds = (ConcernKind::safety, ConcernKind::regulatory);
|
|
20
20
|
attribute :>> includedLayers = ("risk", "assurance");
|
|
21
|
+
attribute :>> explorerLane = "assurance";
|
|
22
|
+
attribute :>> explorerOrder = 2;
|
|
21
23
|
attribute :>> allowedElementKinds = ("SafetyRelatedCharacteristic", "HazardCause", "Hazard", "SequenceOfEvents", "HazardousSituation", "Harm", "Risk", "RiskControlMeasure", "ResidualRisk", "Benefit", "OverallResidualRiskEvaluation", "VerificationCase");
|
|
22
24
|
attribute :>> userExtensible = true;
|
|
23
25
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
package
|
|
1
|
+
package memo_viewpoints_risk_views_risk_chain_view {
|
|
2
2
|
private import ScalarValues::*;
|
|
3
3
|
|
|
4
4
|
private import memo_viewpoints_definitions::*;
|
|
@@ -6,7 +6,7 @@ package memo_viewpoints_risk_risk_chain_view {
|
|
|
6
6
|
private import memo_viewpoints_risk_risk_viewpoint::*;
|
|
7
7
|
|
|
8
8
|
view riskChainView : MemoDiagramView {
|
|
9
|
-
expose
|
|
9
|
+
expose memo_viewpoints_risk_views_risk_chain_view::*;
|
|
10
10
|
attribute depth = 2;
|
|
11
11
|
attribute :>> id = "VIEW-RISK-001";
|
|
12
12
|
attribute :>> name = "RiskChainView";
|
|
@@ -9,7 +9,7 @@ package memo_viewpoints_software_software_viewpoint {
|
|
|
9
9
|
attribute :>> name = "SoftwareViewpoint";
|
|
10
10
|
attribute :>> title = "Software Viewpoint";
|
|
11
11
|
attribute :>> shortDescription = "Shows software systems, components, SOUP, and software interfaces.";
|
|
12
|
-
attribute :>>
|
|
12
|
+
attribute :>> description = "Default viewpoint derived from the software structure layer for IEC 62304 software architecture description — software item decomposition, SOUP inventory, and software-to-software interfaces, distinct from system-level logical decomposition.";
|
|
13
13
|
attribute :>> purpose = "Describe the software architecture for IEC 62304 design documentation.";
|
|
14
14
|
attribute :>> audience = (AudienceKind::softwareArchitect);
|
|
15
15
|
attribute :>> stage = WorkflowStageKind::architecture;
|
|
@@ -18,6 +18,8 @@ package memo_viewpoints_software_software_viewpoint {
|
|
|
18
18
|
attribute :>> presentationKind = (PresentationKind::blockDiagram);
|
|
19
19
|
attribute :>> concernKinds = (ConcernKind::safety, ConcernKind::reliability);
|
|
20
20
|
attribute :>> includedLayers = ("software_structure", "interfaces");
|
|
21
|
+
attribute :>> explorerLane = "architecture";
|
|
22
|
+
attribute :>> explorerOrder = 4;
|
|
21
23
|
attribute :>> allowedElementKinds = ("SoftwareSystem", "SoftwareModule", "SoftwareModule[moduleKind=soup]", "Interface");
|
|
22
24
|
attribute :>> userExtensible = true;
|
|
23
25
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
package
|
|
1
|
+
package memo_viewpoints_software_views_software_architecture_view {
|
|
2
2
|
private import ScalarValues::*;
|
|
3
3
|
|
|
4
4
|
private import memo_viewpoints_definitions::*;
|
|
@@ -6,7 +6,7 @@ package memo_viewpoints_software_software_architecture_view {
|
|
|
6
6
|
private import memo_viewpoints_software_software_viewpoint::*;
|
|
7
7
|
|
|
8
8
|
view softwareArchitectureView : MemoDiagramView {
|
|
9
|
-
expose
|
|
9
|
+
expose memo_viewpoints_software_views_software_architecture_view::*;
|
|
10
10
|
attribute depth = 2;
|
|
11
11
|
attribute :>> id = "VIEW-SW-001";
|
|
12
12
|
attribute :>> name = "SoftwareArchitectureView";
|