@memoarchitect/ontology 0.4.6 → 0.6.1
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 +7 -6
- package/examples/connected-patient-monitor/README.md +7 -0
- package/examples/connected-patient-monitor/model/catalog/connected_patient_monitor.sysml +70 -0
- package/examples/connected-patient-monitor/model/connected_patient_monitor.sysml +3 -0
- package/examples/connected-patient-monitor/model/viewpoints/connected_patient_monitor_overview.sysml +6 -0
- package/examples/embedded-infusion-pump/README.md +7 -0
- package/examples/embedded-infusion-pump/model/catalog/embedded_infusion_pump.sysml +66 -0
- package/examples/embedded-infusion-pump/model/embedded_infusion_pump.sysml +3 -0
- package/examples/embedded-infusion-pump/model/viewpoints/embedded_infusion_pump_overview.sysml +6 -0
- package/examples/extensions/README.md +16 -0
- package/examples/extensions/clinical/memo.package.yaml +9 -0
- package/examples/extensions/clinical/src/clinical_extension.sysml +3 -0
- package/examples/extensions/clinical/src/methodology/clinical_methodology.sysml +14 -0
- package/examples/extensions/clinical/src/procedures/memo_clinical_procedures.sysml +16 -0
- package/examples/extensions/template/memo.package.yaml +9 -0
- package/examples/extensions/template/src/extension.sysml +15 -0
- package/examples/functional-logical-physical/README.md +7 -0
- package/examples/functional-logical-physical/model/catalog/functional_logical_physical.sysml +50 -0
- package/examples/functional-logical-physical/model/functional_logical_physical.sysml +3 -0
- package/examples/functional-logical-physical/model/viewpoints/functional_logical_physical_overview.sysml +6 -0
- package/examples/gpca-pump/README.md +26 -0
- package/examples/gpca-pump/dhf/documents/DOC-RMP-001.md +1 -1
- package/examples/gpca-pump/memo.config.yaml +2 -2
- package/examples/gpca-pump/methodology/gpca_profiles.sysml +1 -1
- package/examples/gpca-pump/methodology/gpca_scope.sysml +2 -2
- package/examples/gpca-pump/model/catalog/gpca_analysis.sysml +1 -1
- package/examples/gpca-pump/model/catalog/gpca_architecture.sysml +10 -10
- package/examples/gpca-pump/model/catalog/gpca_behavior_actions.sysml +17 -6
- package/examples/gpca-pump/model/catalog/gpca_behavior_modes.sysml +11 -11
- package/examples/gpca-pump/model/catalog/gpca_behavior_subsystems.sysml +35 -22
- package/examples/gpca-pump/model/catalog/gpca_context.sysml +25 -6
- package/examples/gpca-pump/model/catalog/gpca_cybersecurity.sysml +6 -6
- package/examples/gpca-pump/model/catalog/gpca_formal_behavior.sysml +29 -15
- package/examples/gpca-pump/model/catalog/gpca_interfaces.sysml +293 -169
- package/examples/gpca-pump/model/catalog/gpca_operational.sysml +145 -27
- package/examples/gpca-pump/model/catalog/gpca_physical.sysml +1 -1
- package/examples/gpca-pump/model/catalog/gpca_requirements.sysml +210 -105
- package/examples/gpca-pump/model/catalog/gpca_risk.sysml +66 -69
- package/examples/gpca-pump/model/catalog/gpca_system.sysml +43 -76
- package/examples/gpca-pump/model/catalog/gpca_trace.sysml +73 -70
- package/examples/gpca-pump/model/catalog/gpca_verification.sysml +27 -27
- package/examples/gpca-pump/model/views/context_system_context_view.sysml +2 -2
- package/examples/gpca-pump/model/views/document_architecture_description_view.sysml +2 -2
- package/examples/gpca-pump/model/views/document_cyber_assessment_view.sysml +2 -2
- package/examples/gpca-pump/model/views/document_hazard_analysis_view.sysml +1 -1
- package/examples/gpca-pump/model/views/document_rmf_view.sysml +2 -2
- package/examples/gpca-pump/model/views/document_sdd_view.sysml +2 -2
- package/examples/gpca-pump/model/views/document_threat_model_view.sysml +1 -1
- package/examples/gpca-pump/model/views/document_usability_view.sysml +1 -1
- package/examples/gpca-pump/model/views/document_vv_view.sysml +1 -1
- package/examples/gpca-pump/model/views/functional_function_allocation_view.sysml +1 -1
- package/examples/gpca-pump/model/views/functional_function_browser_view.sysml +1 -1
- package/examples/gpca-pump/model/views/logical_device_interconnect_view.sysml +1 -1
- package/examples/gpca-pump/model/views/logical_mode_state_view.sysml +1 -1
- package/examples/gpca-pump/model/views/logical_system_decomposition_view.sysml +1 -1
- package/examples/gpca-pump/model/views/operational_scenario_sequence_view.sysml +1 -1
- package/examples/gpca-pump/model/views/operational_use_case_view.sysml +6 -6
- package/examples/gpca-pump/model/views/physical_physical_bom_view.sysml +1 -1
- package/examples/gpca-pump/model/views/requirements_requirements_trace_view.sysml +1 -1
- package/examples/gpca-pump/model/views/risk_risk_chain_view.sysml +2 -2
- package/examples/gpca-pump/model/views/software_software_architecture_view.sysml +1 -1
- package/examples/gpca-pump/model/views/verification_verification_coverage_view.sysml +1 -1
- package/examples/ivd-laboratory-system/README.md +7 -0
- package/examples/ivd-laboratory-system/model/catalog/ivd_laboratory_system.sysml +58 -0
- package/examples/ivd-laboratory-system/model/ivd_laboratory_system.sysml +3 -0
- package/examples/ivd-laboratory-system/model/viewpoints/ivd_laboratory_system_overview.sysml +6 -0
- package/examples/manual-surgical-instrument/README.md +7 -0
- package/examples/manual-surgical-instrument/model/catalog/manual_surgical_instrument.sysml +41 -0
- package/examples/manual-surgical-instrument/model/manual_surgical_instrument.sysml +3 -0
- package/examples/manual-surgical-instrument/model/viewpoints/manual_surgical_instrument_overview.sysml +6 -0
- package/examples/multidimensional-layers/README.md +7 -0
- package/examples/multidimensional-layers/model/catalog/multidimensional_layers.sysml +51 -0
- package/examples/multidimensional-layers/model/multidimensional_layers.sysml +4 -0
- package/examples/multidimensional-layers/model/viewpoints/multidimensional_layers_overview.sysml +13 -0
- package/examples/reusable-instrument/README.md +7 -0
- package/examples/reusable-instrument/model/catalog/reusable_instrument.sysml +71 -0
- package/examples/reusable-instrument/model/reusable_instrument.sysml +4 -0
- package/examples/reusable-instrument/model/viewpoints/reusable_instrument_overview.sysml +13 -0
- package/examples/software-only-medical-device/README.md +7 -0
- package/examples/software-only-medical-device/model/catalog/software_only_medical_device.sysml +62 -0
- package/examples/software-only-medical-device/model/software_only_medical_device.sysml +4 -0
- package/examples/software-only-medical-device/model/viewpoints/software_only_medical_device_overview.sysml +13 -0
- package/examples/surgical-closure-workflow/README.md +8 -0
- package/examples/surgical-closure-workflow/model/catalog/surgical_closure_workflow.sysml +151 -0
- package/examples/surgical-closure-workflow/model/surgical_closure_workflow.sysml +4 -0
- package/examples/surgical-closure-workflow/model/viewpoints/surgical_closure_workflow_overview.sysml +13 -0
- package/examples/surgical-robot/README.md +7 -0
- package/examples/surgical-robot/model/catalog/surgical_robot.sysml +58 -0
- package/examples/surgical-robot/model/surgical_robot.sysml +4 -0
- package/examples/surgical-robot/model/viewpoints/surgical_robot_overview.sysml +13 -0
- package/examples/sysml-diagram-samples/README.md +32 -0
- package/examples/sysml-diagram-samples/memo.package.yaml +5 -0
- package/examples/{gpca-pump → sysml-diagram-samples}/model/samples/action_flow_view.sysml +22 -4
- package/examples/sysml-diagram-samples/model/samples/context_view.sysml +55 -0
- package/examples/{gpca-pump → sysml-diagram-samples}/model/samples/functional_flow_view.sysml +17 -6
- package/examples/{gpca-pump → sysml-diagram-samples}/model/samples/interconnection_view.sysml +4 -3
- package/examples/{gpca-pump → sysml-diagram-samples}/model/samples/operational_behaviour_view.sysml +32 -42
- package/examples/sysml-diagram-samples/model/samples/requirements_view.sysml +63 -0
- package/examples/sysml-diagram-samples/model/samples/state_transition_view.sysml +109 -0
- package/examples/{gpca-pump → sysml-diagram-samples}/model/samples/tree_view.sysml +3 -3
- package/examples/sysml-diagram-samples/model/samples/use_case_view.sysml +81 -0
- package/examples/temperature-alarm/README.md +7 -0
- package/examples/temperature-alarm/model/catalog/temperature_alarm.sysml +140 -0
- package/examples/temperature-alarm/model/temperature_alarm.sysml +4 -0
- package/examples/temperature-alarm/model/viewpoints/temperature_alarm_overview.sysml +13 -0
- package/memo.manifest.yaml +12 -4
- package/methodologies/default/memo.package.yaml +1 -1
- package/methodologies/gpca/memo.package.yaml +4 -4
- package/ontology/memo.package.yaml +1 -1
- package/ontology/memo.rendering.yaml +37 -0
- package/package.json +19 -11
- package/profile/memo.package.yaml +3 -3
- package/src/architecture/decisions/memo_decisions.sysml +1 -1
- package/src/architecture/{behavior → functional/behavior}/memo_behavior.sysml +12 -11
- package/src/architecture/{constraints → functional/constraints}/memo_constraints.sysml +2 -2
- package/src/architecture/functional/functions/memo_functions.sysml +81 -0
- package/src/architecture/implementation/hardware/common/memo_hardware_common.sysml +46 -0
- package/src/architecture/implementation/hardware/electrical/memo_hardware_electrical.sysml +36 -0
- package/src/architecture/implementation/hardware/fluidic/memo_hardware_fluidic.sysml +14 -0
- package/src/architecture/implementation/hardware/mechanical/memo_hardware_mechanical.sysml +14 -0
- package/src/architecture/implementation/hardware/optical/memo_hardware_optical.sysml +11 -0
- package/src/architecture/implementation/hardware/sensing/memo_hardware_sensing.sysml +17 -0
- package/src/architecture/implementation/hardware/structure/memo_hardware_structure.sysml +12 -0
- package/src/architecture/implementation/software/runtime/memo_software_runtime.sysml +70 -0
- package/src/architecture/implementation/software/structure/memo_software_structure.sysml +80 -0
- package/src/architecture/implementation/ui/memo_ui.sysml +159 -0
- package/src/architecture/logical/interfaces/memo_interfaces.sysml +102 -0
- package/src/architecture/logical/structure/memo_logical_structure.sysml +150 -0
- package/src/architecture/operational/activities/memo_activities.sysml +86 -0
- package/src/architecture/operational/context/actors/memo_actors.sysml +38 -0
- package/src/architecture/operational/context/stakeholders/memo_stakeholders.sysml +64 -0
- package/src/architecture/operational/context/use_context/memo_use_context.sysml +53 -0
- package/src/architecture/operational/scenarios/memo_scenarios.sysml +116 -0
- package/src/architecture/operational/structure/memo_operational.sysml +31 -0
- package/src/architecture/operational/use_cases/memo_use_cases.sysml +67 -0
- package/src/architecture/operational/workflows/memo_workflows.sysml +126 -0
- package/src/architecture/realization/deployment/memo_deployment.sysml +90 -0
- package/src/architecture/{physical → realization/physical}/memo_physical_architecture.sysml +12 -1
- package/src/artifacts/definitions/memo_artifact_definitions.sysml +1 -1
- package/src/{architecture → assurance}/cybersecurity/memo_cybersecurity.sysml +14 -10
- package/src/assurance/human_factors/memo_human_factors.sysml +50 -0
- package/src/{architecture → assurance}/requirements/memo_requirements.sysml +45 -21
- package/src/assurance/requirements/needs/memo_needs.sysml +43 -0
- package/src/{architecture → assurance/safety_risk}/analysis/memo_fmea.sysml +13 -13
- package/src/{architecture/risk → assurance/safety_risk}/memo_arch_risk.sysml +2 -2
- package/src/{architecture/risk → assurance/safety_risk}/memo_risk.sysml +25 -16
- package/src/assurance/verification_validation/memo_assurance.sysml +49 -0
- package/src/compliance/artifacts/memo_artifacts.sysml +1 -1
- package/src/compliance/change/memo_change.sysml +2 -2
- package/src/compliance/dhf-templates/21cfr820/design-input.md +1 -1
- package/src/compliance/dhf-templates/21cfr820/design-validation.md +1 -1
- package/src/compliance/dhf-templates/21cfr820/user-needs.md +2 -2
- package/src/compliance/dhf-templates/iec-62366/urra.md +1 -1
- package/src/compliance/dhf-templates/iso-14971/fmea.md +1 -1
- package/src/compliance/dhf-templates/iso-14971/har.md +4 -4
- package/src/compliance/dhf-templates/iso-14971/risk-matrix.md +1 -1
- package/src/compliance/dhf-templates/iso-14971/rmp.md +1 -1
- package/src/compliance/dhf-templates/iso-14971/rmr.md +1 -1
- package/src/compliance/iso14971/risk_management_file.sysml +1 -1
- package/src/compliance/postmarket/memo_postmarket.sysml +2 -2
- package/src/core/common/memo_common.sysml +123 -14
- package/src/core/consistency_rules/consistency_rules.sysml +2 -2
- package/src/core/dimensions/dimensions.sysml +45 -24
- package/src/core/enumerations/memo_enumerations.sysml +11 -16
- package/src/core/methodology_scope/methodology_scope.sysml +10 -28
- package/src/core/relationships/memo_relationships.sysml +178 -146
- package/src/core/stdlib/{collections.sysml → collections/collections.sysml} +1 -1
- package/src/core/stdlib/{functions.sysml → functions/functions.sysml} +1 -1
- package/src/core/stdlib/{scalars.sysml → scalars/scalars.sysml} +1 -1
- package/src/core/stdlib/{time.sysml → time/time.sysml} +1 -1
- package/src/core/terminology/terminology.sysml +35 -0
- package/src/memo_namespaces.sysml +247 -302
- package/src/methodology/{memo_core.sysml → core/memo_core.sysml} +19 -13
- package/src/methodology/{memo_gates.sysml → gates/memo_gates.sysml} +1 -1
- package/src/methodology/{memo_patterns.sysml → patterns/memo_patterns.sysml} +1 -1
- package/src/methodology/{memo_profiles.sysml → profiles/memo_profiles.sysml} +27 -35
- package/src/methodology/{memo_workflow.sysml → workflow/memo_workflow.sysml} +1 -1
- package/src/rules/closure/closure_rules.sysml +11 -11
- package/src/rules/coverage/coverage_rules.sysml +8 -8
- package/src/rules/crosslayer/cross_layer_rules.sysml +2 -2
- package/src/rules/lifecycle/lifecycle_rules.sysml +1 -1
- package/src/rules/ontology/ontology_invariants.sysml +133 -0
- package/src/rules/quantitative/quantitative_rules.sysml +2 -2
- package/src/viewpoints/catalog/memo_viewpoint_catalog.sysml +189 -0
- package/src/viewpoints/clinical/clinical_viewpoint.sysml +0 -1
- package/src/viewpoints/context/context_viewpoint.sysml +1 -2
- package/src/viewpoints/cybersecurity/cybersecurity_viewpoint.sysml +1 -2
- package/src/viewpoints/definitions/memo_viewpoint_definitions.sysml +8 -8
- package/src/viewpoints/functional/{function_allocation_view.sysml → function_allocation_view/function_allocation_view.sysml} +1 -1
- package/src/viewpoints/functional/functional_viewpoint.sysml +2 -3
- package/src/viewpoints/functional/{system_functional_tree_view.sysml → system_functional_tree_view/system_functional_tree_view.sysml} +1 -1
- package/src/viewpoints/logical/logical_viewpoint.sysml +0 -1
- package/src/viewpoints/operational/operational_viewpoint.sysml +1 -2
- package/src/viewpoints/operational/{use_case_view.sysml → use_case_view/use_case_view.sysml} +1 -1
- package/src/viewpoints/physical/physical_viewpoint.sysml +0 -1
- package/src/viewpoints/requirements/{requirements_traceability_view.sysml → requirements_traceability_view/requirements_traceability_view.sysml} +1 -1
- package/src/viewpoints/requirements/requirements_viewpoint.sysml +1 -2
- package/src/viewpoints/risk/{risk_chain_view.sysml → risk_chain_view/risk_chain_view.sysml} +2 -2
- package/src/viewpoints/risk/risk_viewpoint.sysml +1 -2
- package/src/viewpoints/software/{software_architecture_view.sysml → software_architecture_view/software_architecture_view.sysml} +1 -1
- package/src/viewpoints/software/software_viewpoint.sysml +1 -2
- package/src/viewpoints/usability/usability_viewpoint.sysml +0 -1
- package/src/viewpoints/verification/verification_viewpoint.sysml +0 -1
- package/templates/connected-device/memo.package.yaml +5 -0
- package/templates/connected-device/src/architecture/system.sysml +5 -0
- package/templates/connected-device/src/artifacts/artifacts.sysml +5 -0
- package/templates/connected-device/src/assurance/requirements.sysml +7 -0
- package/templates/default/memo.package.yaml +5 -0
- package/templates/default/src/architecture/system.sysml +7 -0
- package/templates/default/src/artifacts/artifacts.sysml +5 -0
- package/templates/default/src/assurance/requirements.sysml +8 -0
- package/templates/infusion-pump/memo.package.yaml +5 -0
- package/templates/infusion-pump/src/architecture/system.sysml +5 -0
- package/templates/infusion-pump/src/artifacts/artifacts.sysml +5 -0
- package/templates/infusion-pump/src/assurance/requirements.sysml +7 -0
- package/templates/monitoring-device/memo.package.yaml +5 -0
- package/templates/monitoring-device/src/architecture/system.sysml +5 -0
- package/templates/monitoring-device/src/artifacts/artifacts.sysml +5 -0
- package/templates/monitoring-device/src/assurance/requirements.sysml +7 -0
- package/templates/samd/memo.package.yaml +5 -0
- package/templates/samd/src/architecture/system.sysml +5 -0
- package/templates/samd/src/artifacts/artifacts.sysml +5 -0
- package/templates/samd/src/assurance/requirements.sysml +7 -0
- package/examples/gpca-pump/model/samples/README.md +0 -24
- package/examples/gpca-pump/model/samples/action_flow_view.viewlayout +0 -9
- package/examples/gpca-pump/model/samples/interconnection_view.viewlayout +0 -99
- package/profile/archetypes.yaml +0 -36
- package/profile/templates/connected-device/starter.sysml +0 -8
- package/profile/templates/infusion-pump/starter.sysml +0 -8
- package/profile/templates/monitoring-device/starter.sysml +0 -8
- package/profile/templates/samd/starter.sysml +0 -8
- package/src/architecture/assurance/memo_assurance.sysml +0 -29
- package/src/architecture/context/memo_context.sysml +0 -58
- package/src/architecture/functions/memo_functions.sysml +0 -30
- package/src/architecture/hardware_structure/memo_hardware_structure.sysml +0 -15
- package/src/architecture/interfaces/memo_interfaces.sysml +0 -103
- package/src/architecture/logical_structure/memo_logical_structure.sysml +0 -10
- package/src/architecture/operational/memo_operational.sysml +0 -51
- package/src/architecture/software_structure/memo_software_structure.sysml +0 -44
- package/src/architecture/system/memo_system_analysis.sysml +0 -54
- package/src/artifacts/clinical_safety_report.sysml +0 -12
- package/src/artifacts/cybersecurity_assessment_report.sysml +0 -12
- package/src/artifacts/design_change_log.sysml +0 -12
- package/src/artifacts/design_history_file_index.sysml +0 -12
- package/src/artifacts/design_input_plan.sysml +0 -12
- package/src/artifacts/design_output_plan.sysml +0 -12
- package/src/artifacts/evidence_record.sysml +0 -12
- package/src/artifacts/failure_mode_effects_analysis.sysml +0 -12
- package/src/artifacts/hazard_analysis_report.sysml +0 -12
- package/src/artifacts/labeling_specification.sysml +0 -12
- package/src/artifacts/requirements_specification.sysml +0 -12
- package/src/artifacts/requirements_traceability_matrix.sysml +0 -12
- package/src/artifacts/risk_management_plan.sysml +0 -12
- package/src/artifacts/software_design_description.sysml +0 -12
- package/src/artifacts/software_development_plan.sysml +0 -12
- package/src/artifacts/soup_list.sysml +0 -12
- package/src/artifacts/system_architecture_description.sysml +0 -12
- package/src/artifacts/test_protocol.sysml +0 -12
- package/src/artifacts/test_report.sysml +0 -12
- package/src/artifacts/threat_model_report.sysml +0 -12
- package/src/artifacts/usability_engineering_report.sysml +0 -12
- package/src/medical_device_library.sysml +0 -100
- package/template/memo.package.yaml +0 -5
- package/template/src/catalog/starter.sysml +0 -12
- package/template/src/documents/.gitkeep +0 -1
- package/template/src/views/.gitkeep +0 -1
- /package/src/methodology/{memo_archetypes.sysml → archetypes/memo_archetypes.sysml} +0 -0
- /package/src/methodology/{memo_rules.sysml → rules/memo_rules.sysml} +0 -0
- /package/src/methodology/{memo_viewpoints.sysml → viewpoints/memo_viewpoints.sysml} +0 -0
- /package/src/viewpoints/clinical/{clinical_evidence_view.sysml → clinical_evidence_view/clinical_evidence_view.sysml} +0 -0
- /package/src/viewpoints/context/{system_context_view.sysml → system_context_view/system_context_view.sysml} +0 -0
- /package/src/viewpoints/cybersecurity/{cybersecurity_assessment_view.sysml → cybersecurity_assessment_view/cybersecurity_assessment_view.sysml} +0 -0
- /package/src/viewpoints/cybersecurity/{threat_model_view.sysml → threat_model_view/threat_model_view.sysml} +0 -0
- /package/src/viewpoints/logical/{logical_architecture_view.sysml → logical_architecture_view/logical_architecture_view.sysml} +0 -0
- /package/src/viewpoints/physical/{network_topology_view.sysml → network_topology_view/network_topology_view.sysml} +0 -0
- /package/src/viewpoints/physical/{physical_bom_view.sysml → physical_bom_view/physical_bom_view.sysml} +0 -0
- /package/src/viewpoints/usability/{usability_engineering_view.sysml → usability_engineering_view/usability_engineering_view.sysml} +0 -0
- /package/src/viewpoints/verification/{verification_coverage_view.sysml → verification_coverage_view/verification_coverage_view.sysml} +0 -0
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
format: memo.viewlayout/v1
|
|
2
|
-
viewSource: model/samples/interconnection_view.sysml
|
|
3
|
-
layouts:
|
|
4
|
-
diag-sample-sampleInterconnectionView:
|
|
5
|
-
nodes:
|
|
6
|
-
coffeeMachine:
|
|
7
|
-
x: 364
|
|
8
|
-
y: 0
|
|
9
|
-
ports:
|
|
10
|
-
mainsWaterIn:
|
|
11
|
-
x: -12
|
|
12
|
-
y: 273
|
|
13
|
-
side: left
|
|
14
|
-
beverageOut:
|
|
15
|
-
x: 1253.1
|
|
16
|
-
y: 137.70963541666669
|
|
17
|
-
side: right
|
|
18
|
-
serviceInterface:
|
|
19
|
-
x: 1253.1
|
|
20
|
-
y: 240.73784722222223
|
|
21
|
-
side: right
|
|
22
|
-
diagnostics:
|
|
23
|
-
x: 1253.1
|
|
24
|
-
y: 380.19422743055554
|
|
25
|
-
side: right
|
|
26
|
-
waterTank:
|
|
27
|
-
x: 128
|
|
28
|
-
y: 114
|
|
29
|
-
ports:
|
|
30
|
-
tankWaterOut:
|
|
31
|
-
x: 376
|
|
32
|
-
y: 72
|
|
33
|
-
side: right
|
|
34
|
-
tankWaterIn:
|
|
35
|
-
x: -12
|
|
36
|
-
y: 72
|
|
37
|
-
side: left
|
|
38
|
-
heaterAssembly:
|
|
39
|
-
x: 570
|
|
40
|
-
y: 70
|
|
41
|
-
ports:
|
|
42
|
-
heaterWaterIn:
|
|
43
|
-
x: -12
|
|
44
|
-
y: 116
|
|
45
|
-
side: left
|
|
46
|
-
heatedWaterOut:
|
|
47
|
-
x: 555.1
|
|
48
|
-
y: 116
|
|
49
|
-
side: right
|
|
50
|
-
heatingElement:
|
|
51
|
-
x: 128
|
|
52
|
-
y: 70
|
|
53
|
-
ports:
|
|
54
|
-
heaterStatusOut:
|
|
55
|
-
x: 299.1
|
|
56
|
-
y: 72
|
|
57
|
-
side: right
|
|
58
|
-
brewGroup:
|
|
59
|
-
x: 659.55
|
|
60
|
-
y: 384
|
|
61
|
-
ports:
|
|
62
|
-
brewWaterIn:
|
|
63
|
-
x: -12
|
|
64
|
-
y: 72
|
|
65
|
-
side: left
|
|
66
|
-
brewedCoffeeOut:
|
|
67
|
-
x: 376
|
|
68
|
-
y: 72
|
|
69
|
-
side: right
|
|
70
|
-
waterSupply:
|
|
71
|
-
x: 0
|
|
72
|
-
y: 201
|
|
73
|
-
ports:
|
|
74
|
-
supplyWaterOut:
|
|
75
|
-
x: 262
|
|
76
|
-
y: 72
|
|
77
|
-
side: right
|
|
78
|
-
cup:
|
|
79
|
-
x: 1719.1
|
|
80
|
-
y: 5
|
|
81
|
-
ports:
|
|
82
|
-
cupBeverageIn:
|
|
83
|
-
x: -12
|
|
84
|
-
y: 72
|
|
85
|
-
side: left
|
|
86
|
-
edges:
|
|
87
|
-
rel-683: {}
|
|
88
|
-
rel-684: {}
|
|
89
|
-
rel-685: {}
|
|
90
|
-
rel-686: {}
|
|
91
|
-
rel-687: {}
|
|
92
|
-
rel-688: {}
|
|
93
|
-
rel-689: {}
|
|
94
|
-
canvas:
|
|
95
|
-
autoLayout: false
|
|
96
|
-
zoom: 0.72
|
|
97
|
-
pan:
|
|
98
|
-
x: -201.51599999999996
|
|
99
|
-
y: 59.80000000000001
|
package/profile/archetypes.yaml
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
archetypes:
|
|
2
|
-
- id: samd
|
|
3
|
-
label: Software as Medical Device (SaMD)
|
|
4
|
-
description: Clinical decision support, diagnostic algorithm, AI/ML tool, mobile medical app
|
|
5
|
-
category: device-class
|
|
6
|
-
templateDir: samd
|
|
7
|
-
includedLayers: [context, requirements, functions, logical_structure, software_structure, risk, assurance, cybersecurity]
|
|
8
|
-
includedStandards: [ISO 14971, IEC 62304, IEC 82304-1, FDA Cybersecurity Guidance]
|
|
9
|
-
- id: connected
|
|
10
|
-
label: Connected / IoT Device
|
|
11
|
-
description: Remote monitoring, wearable, smart device with cloud connectivity and cybersecurity requirements
|
|
12
|
-
category: device-class
|
|
13
|
-
templateDir: connected-device
|
|
14
|
-
includedLayers: [context, requirements, functions, logical_structure, logical_interfaces, software_structure, hardware_structure, risk, assurance, cybersecurity]
|
|
15
|
-
includedStandards: [ISO 14971, IEC 62304, 21 CFR 820, FDA Cybersecurity Guidance]
|
|
16
|
-
- id: monitoring
|
|
17
|
-
label: Monitoring / Diagnostic Device
|
|
18
|
-
description: Patient monitor, ECG, SpO2, vital signs, bedside diagnostic equipment
|
|
19
|
-
category: device-class
|
|
20
|
-
templateDir: monitoring-device
|
|
21
|
-
includedLayers: [context, requirements, functions, logical_structure, logical_interfaces, physical_interfaces, software_structure, hardware_structure, risk, assurance]
|
|
22
|
-
includedStandards: [ISO 14971, IEC 62304, IEC 60601-1, 21 CFR 820]
|
|
23
|
-
- id: infusion_pump
|
|
24
|
-
label: Infusion / Drug Delivery Device
|
|
25
|
-
description: Infusion pump, syringe driver, implantable drug delivery, dosing device
|
|
26
|
-
category: device-class
|
|
27
|
-
templateDir: infusion-pump
|
|
28
|
-
includedLayers: [context, requirements, functions, logical_structure, logical_interfaces, physical_interfaces, software_structure, hardware_structure, behavior, risk, arch_risk, assurance, cybersecurity]
|
|
29
|
-
includedStandards: [ISO 14971, IEC 62304, IEC 60601-1, 21 CFR 820, ISO 13485]
|
|
30
|
-
- id: blank
|
|
31
|
-
label: Blank Project
|
|
32
|
-
description: Start from scratch with a minimal SysML shell
|
|
33
|
-
category: device-class
|
|
34
|
-
templateDir: ""
|
|
35
|
-
includedLayers: []
|
|
36
|
-
includedStandards: []
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
package memo_architecture_assurance {
|
|
2
|
-
private import ScalarValues::*;
|
|
3
|
-
|
|
4
|
-
private import memo_core_common::*;
|
|
5
|
-
private import memo_core_enumerations::*;
|
|
6
|
-
part def VerificationCase specializes VerifiableElement {
|
|
7
|
-
attribute methodKind : VerificationMethodKind;
|
|
8
|
-
attribute acceptanceCriteria : String;
|
|
9
|
-
attribute status : String;
|
|
10
|
-
}
|
|
11
|
-
part def ValidationCase specializes VerifiableElement {
|
|
12
|
-
attribute validationMethod : ValidationMethodKind;
|
|
13
|
-
attribute userParticipation : String;
|
|
14
|
-
attribute acceptanceCriteria : String;
|
|
15
|
-
attribute clinicalContext : String;
|
|
16
|
-
}
|
|
17
|
-
part def TestArtifact specializes EvidenceElement {
|
|
18
|
-
attribute version : String;
|
|
19
|
-
attribute lifecycleState : LifecycleStateKind;
|
|
20
|
-
attribute artifactKind : ArtifactKind;
|
|
21
|
-
attribute resultSummary : String;
|
|
22
|
-
}
|
|
23
|
-
part def Evidence specializes EvidenceElement {
|
|
24
|
-
attribute version : String;
|
|
25
|
-
attribute lifecycleState : LifecycleStateKind;
|
|
26
|
-
attribute evidenceType : String;
|
|
27
|
-
attribute integrityStatus : String;
|
|
28
|
-
}
|
|
29
|
-
}
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
package memo_architecture_context {
|
|
2
|
-
private import ScalarValues::*;
|
|
3
|
-
|
|
4
|
-
private import memo_core_common::*;
|
|
5
|
-
private import memo_core_enumerations::*;
|
|
6
|
-
private import memo_core_relationships::*;
|
|
7
|
-
part def IntendedUse specializes DocumentedElement {
|
|
8
|
-
attribute indication : String;
|
|
9
|
-
attribute contraindication : String;
|
|
10
|
-
attribute patientPopulation : String;
|
|
11
|
-
attribute clinicalBenefit : String;
|
|
12
|
-
attribute regulatoryClassification : String;
|
|
13
|
-
}
|
|
14
|
-
part def Actor specializes TraceableElement {
|
|
15
|
-
attribute actorKind : ActorKind;
|
|
16
|
-
attribute trainingLevel : String;
|
|
17
|
-
}
|
|
18
|
-
part def UseContext specializes TraceableElement {
|
|
19
|
-
attribute careSetting : String;
|
|
20
|
-
attribute environment : String;
|
|
21
|
-
attribute jurisdiction : String;
|
|
22
|
-
attribute connectedUse : Boolean;
|
|
23
|
-
attribute intendedUseReference : String;
|
|
24
|
-
}
|
|
25
|
-
part def UseError specializes TraceableElement {
|
|
26
|
-
attribute errorCategory : UseErrorCategoryKind;
|
|
27
|
-
attribute taskReference : String;
|
|
28
|
-
attribute severity : SeverityKind;
|
|
29
|
-
attribute rootCauseType : String;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
connection def InteractsWith :> SemanticLink {
|
|
33
|
-
end contextParticipant : Actor;
|
|
34
|
-
end target : TraceableElement;
|
|
35
|
-
}
|
|
36
|
-
// Directional context-level data flow between boundary entities
|
|
37
|
-
// (Fig 2.1-style "Data Flow" edges).
|
|
38
|
-
connection def ExchangesWith :> SemanticLink {
|
|
39
|
-
end source : TraceableElement;
|
|
40
|
-
end target : TraceableElement;
|
|
41
|
-
}
|
|
42
|
-
// Physical connection between boundary entities (fluid path,
|
|
43
|
-
// mechanical mounting) as opposed to a data flow.
|
|
44
|
-
connection def ConnectsPhysically :> SemanticLink {
|
|
45
|
-
end source : TraceableElement;
|
|
46
|
-
end target : TraceableElement;
|
|
47
|
-
}
|
|
48
|
-
// Anchors an intended use to the system it governs.
|
|
49
|
-
connection def GovernsUse :> SemanticLink {
|
|
50
|
-
end intendedUse : IntendedUse;
|
|
51
|
-
end governedElement : TraceableElement;
|
|
52
|
-
}
|
|
53
|
-
// Binds a use context to the system or environment it applies to.
|
|
54
|
-
connection def AppliesInContext :> SemanticLink {
|
|
55
|
-
end useContext : UseContext;
|
|
56
|
-
end subjectElement : TraceableElement;
|
|
57
|
-
}
|
|
58
|
-
}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
package memo_architecture_functions {
|
|
2
|
-
private import ScalarValues::*;
|
|
3
|
-
|
|
4
|
-
private import memo_core_common::*;
|
|
5
|
-
private import memo_core_enumerations::*;
|
|
6
|
-
part def LogicalFunction specializes ArchitectureElement {
|
|
7
|
-
attribute functionCategory : String;
|
|
8
|
-
attribute trigger : String;
|
|
9
|
-
attribute outputSummary : String;
|
|
10
|
-
attribute concernKind : ConcernKind;
|
|
11
|
-
attribute criticality : CriticalityKind;
|
|
12
|
-
}
|
|
13
|
-
part def LogicalFlow specializes ArchitectureElement {
|
|
14
|
-
attribute flowKind : FlowKind;
|
|
15
|
-
attribute direction : DirectionKind;
|
|
16
|
-
attribute latencyBudgetMs : Real;
|
|
17
|
-
attribute staleAfterMs : Real;
|
|
18
|
-
attribute integrityLevel : String;
|
|
19
|
-
}
|
|
20
|
-
part def DataDefinition specializes ExchangeItem {
|
|
21
|
-
attribute confidentialityClass : String;
|
|
22
|
-
attribute integrityClass : String;
|
|
23
|
-
attribute availabilityClass : String;
|
|
24
|
-
}
|
|
25
|
-
part def ControlDefinition specializes ExchangeItem {
|
|
26
|
-
attribute controlType : String;
|
|
27
|
-
attribute timeoutMs : Real;
|
|
28
|
-
attribute retryPolicy : String;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
package memo_architecture_hardware_structure {
|
|
2
|
-
private import ScalarValues::*;
|
|
3
|
-
|
|
4
|
-
private import memo_core_common::*;
|
|
5
|
-
private import memo_core_enumerations::*;
|
|
6
|
-
part def HardwareAssembly specializes ArchitectureElement {
|
|
7
|
-
attribute responsibility : String;
|
|
8
|
-
attribute safetyRole : String;
|
|
9
|
-
attribute partNumber : String;
|
|
10
|
-
attribute mtbfHours : String;
|
|
11
|
-
attribute protectionClass : String;
|
|
12
|
-
attribute ipRating : String;
|
|
13
|
-
attribute lifecycleState : LifecycleStateKind;
|
|
14
|
-
}
|
|
15
|
-
}
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
package memo_architecture_interfaces {
|
|
2
|
-
private import ScalarValues::*;
|
|
3
|
-
|
|
4
|
-
private import memo_core_common::*;
|
|
5
|
-
private import memo_core_enumerations::*;
|
|
6
|
-
|
|
7
|
-
// ─── Interface taxonomy ──────────────────────────────────────────
|
|
8
|
-
// One root `Interface`, specialized by realization domain
|
|
9
|
-
// (hardware / software) then by signaling family then by concrete
|
|
10
|
-
// protocol. The Arcadia layer (operational/system/logical/physical)
|
|
11
|
-
// is carried as the `arcadiaLayer` attribute, not as a type branch.
|
|
12
|
-
|
|
13
|
-
part def Interface specializes InterfaceElement {
|
|
14
|
-
attribute arcadiaLayer : ArcadiaLayerKind;
|
|
15
|
-
attribute interfaceKind : InterfaceKind;
|
|
16
|
-
attribute direction : DirectionKind;
|
|
17
|
-
attribute protocol : String;
|
|
18
|
-
attribute protocolSemantics : String;
|
|
19
|
-
attribute interactionPattern : String;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
// ─── Hardware interfaces ─────────────────────────────────────────
|
|
23
|
-
|
|
24
|
-
part def HardwareInterface specializes Interface {
|
|
25
|
-
attribute electricalStandard : String;
|
|
26
|
-
attribute nominalVoltageV : Real;
|
|
27
|
-
attribute nominalCurrentA : Real;
|
|
28
|
-
attribute directionality : DirectionKind;
|
|
29
|
-
attribute bandwidth : String;
|
|
30
|
-
attribute timingConstraint : String;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
part def DigitalInterface specializes HardwareInterface {
|
|
34
|
-
attribute bitRateBps : String;
|
|
35
|
-
attribute signaling : String;
|
|
36
|
-
}
|
|
37
|
-
part def SPIInterface specializes DigitalInterface;
|
|
38
|
-
part def USBInterface specializes DigitalInterface;
|
|
39
|
-
part def I2CInterface specializes DigitalInterface;
|
|
40
|
-
part def CANInterface specializes DigitalInterface;
|
|
41
|
-
part def UARTInterface specializes DigitalInterface;
|
|
42
|
-
part def EthernetInterface specializes DigitalInterface;
|
|
43
|
-
|
|
44
|
-
part def AnalogInterface specializes HardwareInterface {
|
|
45
|
-
attribute signalRange : String;
|
|
46
|
-
}
|
|
47
|
-
part def VoltageInterface specializes AnalogInterface;
|
|
48
|
-
part def CurrentInterface specializes AnalogInterface;
|
|
49
|
-
part def CurrentLoop4To20mA specializes AnalogInterface;
|
|
50
|
-
part def ThermocoupleInterface specializes AnalogInterface;
|
|
51
|
-
|
|
52
|
-
// ─── Software interfaces ─────────────────────────────────────────
|
|
53
|
-
|
|
54
|
-
part def SoftwareInterface specializes Interface {
|
|
55
|
-
attribute apiStyle : String;
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
part def SynchronousInterface specializes SoftwareInterface;
|
|
59
|
-
part def RestInterface specializes SynchronousInterface;
|
|
60
|
-
part def GrpcInterface specializes SynchronousInterface;
|
|
61
|
-
part def RpcInterface specializes SynchronousInterface;
|
|
62
|
-
part def LocalApiInterface specializes SynchronousInterface;
|
|
63
|
-
|
|
64
|
-
part def AsynchronousInterface specializes SoftwareInterface;
|
|
65
|
-
part def MessageQueueInterface specializes AsynchronousInterface;
|
|
66
|
-
part def PubSubInterface specializes AsynchronousInterface;
|
|
67
|
-
part def EventStreamInterface specializes AsynchronousInterface;
|
|
68
|
-
|
|
69
|
-
// ─── Ports, interface defs, and exchanges ────────────────────────
|
|
70
|
-
// SysML port/interface mechanism + logical exchange, relocated here
|
|
71
|
-
// from the former logical_interfaces namespace.
|
|
72
|
-
|
|
73
|
-
abstract interface def DataInterface specializes InterfaceElement {
|
|
74
|
-
attribute interfaceKind : InterfaceKind;
|
|
75
|
-
attribute protocolSemantics : String;
|
|
76
|
-
}
|
|
77
|
-
port def DataPort {
|
|
78
|
-
attribute direction : DirectionKind;
|
|
79
|
-
attribute interfaceType : String;
|
|
80
|
-
}
|
|
81
|
-
port def SensorPort specializes DataPort { attribute sensorDomain : String; }
|
|
82
|
-
port def CommandPort specializes DataPort { attribute commandDomain : String; }
|
|
83
|
-
|
|
84
|
-
part def ComponentExchange specializes ArchitectureElement {
|
|
85
|
-
attribute exchangeKind : FlowKind;
|
|
86
|
-
attribute sourcePort : String;
|
|
87
|
-
attribute targetPort : String;
|
|
88
|
-
attribute allocatedFunctionalExchanges : String;
|
|
89
|
-
attribute direction : DirectionKind;
|
|
90
|
-
// Connection timing discipline from the source architecture
|
|
91
|
-
// (e.g. AADL Communication_Properties::Timing — immediate
|
|
92
|
-
// connections deliver in the same execution step).
|
|
93
|
-
attribute timingSemantics : String;
|
|
94
|
-
}
|
|
95
|
-
// Boundary data port of a software system (e.g. an AADL top-level
|
|
96
|
-
// data port), modeled as a first-class element so exchanges can
|
|
97
|
-
// reference it and views can render the system boundary.
|
|
98
|
-
part def SoftwarePort specializes InterfaceElement {
|
|
99
|
-
attribute portKind : InterfaceKind;
|
|
100
|
-
attribute direction : DirectionKind;
|
|
101
|
-
attribute dataTypeName : String;
|
|
102
|
-
}
|
|
103
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
package memo_architecture_logical_structure {
|
|
2
|
-
private import ScalarValues::*;
|
|
3
|
-
|
|
4
|
-
private import memo_core_common::*;
|
|
5
|
-
part def LogicalComponent specializes ArchitectureElement {
|
|
6
|
-
attribute responsibility : String;
|
|
7
|
-
attribute decompositionLevel : String;
|
|
8
|
-
attribute safetyPartition : String;
|
|
9
|
-
}
|
|
10
|
-
}
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
package memo_architecture_operational {
|
|
2
|
-
private import ScalarValues::*;
|
|
3
|
-
|
|
4
|
-
private import memo_core_common::*;
|
|
5
|
-
private import memo_core_enumerations::*;
|
|
6
|
-
private import memo_core_relationships::*;
|
|
7
|
-
part def OperationalEntity specializes ArchitectureElement {
|
|
8
|
-
attribute entityKind : OperationalEntityKind;
|
|
9
|
-
attribute operationalDomain : String;
|
|
10
|
-
attribute responsibility : String;
|
|
11
|
-
}
|
|
12
|
-
part def OperationalActivity specializes ArchitectureElement {
|
|
13
|
-
attribute trigger : String;
|
|
14
|
-
attribute preCondition : String;
|
|
15
|
-
attribute postCondition : String;
|
|
16
|
-
attribute criticality : CriticalityKind;
|
|
17
|
-
}
|
|
18
|
-
part def OperationalCapability specializes ArchitectureElement {
|
|
19
|
-
attribute capabilityLevel : String;
|
|
20
|
-
attribute preCondition : String;
|
|
21
|
-
attribute postCondition : String;
|
|
22
|
-
}
|
|
23
|
-
part def OperationalScenario specializes TraceableElement {
|
|
24
|
-
attribute scenarioKind : ScenarioKind;
|
|
25
|
-
attribute preCondition : String;
|
|
26
|
-
attribute postCondition : String;
|
|
27
|
-
attribute sequenceDescription : String;
|
|
28
|
-
}
|
|
29
|
-
part def OperationalInteraction specializes ArchitectureElement {
|
|
30
|
-
attribute exchangeKind : FlowKind;
|
|
31
|
-
attribute direction : DirectionKind;
|
|
32
|
-
attribute latencyConstraint : String;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
connection def Performs :> SemanticLink {
|
|
36
|
-
end entity : OperationalEntity;
|
|
37
|
-
end activity : OperationalActivity;
|
|
38
|
-
}
|
|
39
|
-
connection def ContributesToCapability :> SemanticLink {
|
|
40
|
-
end activity : OperationalActivity;
|
|
41
|
-
end capability : OperationalCapability;
|
|
42
|
-
}
|
|
43
|
-
connection def SequencesStep :> SemanticLink {
|
|
44
|
-
end activity : OperationalActivity;
|
|
45
|
-
end nextActivity : OperationalActivity;
|
|
46
|
-
}
|
|
47
|
-
connection def DerivesSystemNeed :> SemanticLink {
|
|
48
|
-
end activity : OperationalActivity;
|
|
49
|
-
end systemNeed : VerifiableElement;
|
|
50
|
-
}
|
|
51
|
-
}
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
package memo_architecture_software_structure {
|
|
2
|
-
private import ScalarValues::*;
|
|
3
|
-
|
|
4
|
-
private import memo_core_common::*;
|
|
5
|
-
private import memo_core_enumerations::*;
|
|
6
|
-
part def SoftwareSystem specializes ArchitectureElement {
|
|
7
|
-
attribute version : String;
|
|
8
|
-
attribute lifecycleState : LifecycleStateKind;
|
|
9
|
-
attribute safetyClass : SafetyClassKind;
|
|
10
|
-
attribute complexity : ComplexityKind;
|
|
11
|
-
attribute operatingSystem : String;
|
|
12
|
-
}
|
|
13
|
-
part def SoftwareComponent specializes ArchitectureElement {
|
|
14
|
-
attribute responsibility : String;
|
|
15
|
-
attribute safetyClass : SafetyClassKind;
|
|
16
|
-
attribute complexity : ComplexityKind;
|
|
17
|
-
attribute periodMs : Real;
|
|
18
|
-
attribute deadlineMs : Real;
|
|
19
|
-
attribute wcetMs : Real;
|
|
20
|
-
attribute schedulingPolicy : SchedulingPolicyKind;
|
|
21
|
-
}
|
|
22
|
-
part def SoftwareItem specializes SoftwareComponent {
|
|
23
|
-
attribute softwareItemKind : String;
|
|
24
|
-
attribute iec62304Role : String;
|
|
25
|
-
}
|
|
26
|
-
part def FirmwareItem specializes SoftwareItem {
|
|
27
|
-
attribute firmwareTarget : String;
|
|
28
|
-
attribute updateMechanism : String;
|
|
29
|
-
}
|
|
30
|
-
part def SOUPComponent specializes SoftwareComponent {
|
|
31
|
-
attribute soupVersion : String;
|
|
32
|
-
attribute soupVendor : String;
|
|
33
|
-
attribute knownAnomalies : String;
|
|
34
|
-
attribute riskAcceptance : String;
|
|
35
|
-
attribute classification : SOUPClassificationKind;
|
|
36
|
-
}
|
|
37
|
-
item def SBOMEntry specializes TraceableElement {
|
|
38
|
-
attribute componentName : String;
|
|
39
|
-
attribute version : String;
|
|
40
|
-
attribute supplier : String;
|
|
41
|
-
attribute license : String;
|
|
42
|
-
attribute hash : String;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
package memo_architecture_system {
|
|
2
|
-
private import ScalarValues::*;
|
|
3
|
-
|
|
4
|
-
private import memo_core_common::*;
|
|
5
|
-
private import memo_core_enumerations::*;
|
|
6
|
-
private import memo_core_relationships::*;
|
|
7
|
-
private import memo_architecture_functions::*;
|
|
8
|
-
part def SystemCapability specializes ArchitectureElement {
|
|
9
|
-
attribute capabilityKind : String;
|
|
10
|
-
attribute primaryFunction : String;
|
|
11
|
-
attribute safetyRelevant : Boolean;
|
|
12
|
-
}
|
|
13
|
-
part def FunctionalChain specializes ArchitectureElement {
|
|
14
|
-
attribute chainKind : FunctionalChainKind;
|
|
15
|
-
attribute startFunction : String;
|
|
16
|
-
attribute endFunction : String;
|
|
17
|
-
attribute endToEndLatencyBudgetMs : String;
|
|
18
|
-
attribute safetyRelevant : Boolean;
|
|
19
|
-
attribute securityRelevant : Boolean;
|
|
20
|
-
}
|
|
21
|
-
part def FunctionalChainStep specializes TraceableElement {
|
|
22
|
-
attribute stepOrder : String;
|
|
23
|
-
attribute allocatedFunction : String;
|
|
24
|
-
attribute exchangeItem : String;
|
|
25
|
-
}
|
|
26
|
-
part def SystemScenario specializes TraceableElement {
|
|
27
|
-
attribute scenarioKind : ScenarioKind;
|
|
28
|
-
attribute sequenceDiagramRef : String;
|
|
29
|
-
attribute precondition : String;
|
|
30
|
-
attribute postcondition : String;
|
|
31
|
-
}
|
|
32
|
-
part def Mission specializes DocumentedElement {
|
|
33
|
-
attribute missionKind : String;
|
|
34
|
-
attribute successCriteria : String;
|
|
35
|
-
attribute operationalContext : String;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
connection def RealizesCapability :> SemanticLink {
|
|
39
|
-
end functionalChain : FunctionalChain;
|
|
40
|
-
end capability : SystemCapability;
|
|
41
|
-
}
|
|
42
|
-
connection def IncludesStep :> SemanticLink {
|
|
43
|
-
end functionalChain : FunctionalChain;
|
|
44
|
-
end step : FunctionalChainStep;
|
|
45
|
-
}
|
|
46
|
-
connection def InvolvesFunction :> SemanticLink {
|
|
47
|
-
end functionalChain : FunctionalChain;
|
|
48
|
-
end function : LogicalFunction;
|
|
49
|
-
}
|
|
50
|
-
connection def RealizesScenario :> SemanticLink {
|
|
51
|
-
end functionalChain : FunctionalChain;
|
|
52
|
-
end scenario : SystemScenario;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
package memo_artifacts_clinical_safety_report {
|
|
2
|
-
private import ScalarValues::*;
|
|
3
|
-
|
|
4
|
-
private import memo_artifacts_definitions::*;
|
|
5
|
-
private import memo_core_enumerations::*;
|
|
6
|
-
|
|
7
|
-
part def ClinicalSafetyReport specializes ArtifactKindDef {
|
|
8
|
-
attribute :>> documentTitle = "Clinical Safety Report";
|
|
9
|
-
attribute :>> regulatoryRef = "ISO 14971:2019 §10";
|
|
10
|
-
attribute :>> artifactKind = ArtifactKind::clinicalSafetyReport;
|
|
11
|
-
}
|
|
12
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
package memo_artifacts_cybersecurity_assessment_report {
|
|
2
|
-
private import ScalarValues::*;
|
|
3
|
-
|
|
4
|
-
private import memo_artifacts_definitions::*;
|
|
5
|
-
private import memo_core_enumerations::*;
|
|
6
|
-
|
|
7
|
-
part def CybersecurityAssessmentReport specializes ArtifactKindDef {
|
|
8
|
-
attribute :>> documentTitle = "Cybersecurity Risk Assessment";
|
|
9
|
-
attribute :>> regulatoryRef = "FDA Cybersecurity Guidance";
|
|
10
|
-
attribute :>> artifactKind = ArtifactKind::cybersecurityAssessment;
|
|
11
|
-
}
|
|
12
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
package memo_artifacts_design_change_log {
|
|
2
|
-
private import ScalarValues::*;
|
|
3
|
-
|
|
4
|
-
private import memo_artifacts_definitions::*;
|
|
5
|
-
private import memo_core_enumerations::*;
|
|
6
|
-
|
|
7
|
-
part def DesignChangeLog specializes ArtifactKindDef {
|
|
8
|
-
attribute :>> documentTitle = "Design Change Log";
|
|
9
|
-
attribute :>> regulatoryRef = "ISO 13485:2016 §7.3.9";
|
|
10
|
-
attribute :>> artifactKind = ArtifactKind::designChangeLog;
|
|
11
|
-
}
|
|
12
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
package memo_artifacts_design_history_file_index {
|
|
2
|
-
private import ScalarValues::*;
|
|
3
|
-
|
|
4
|
-
private import memo_artifacts_definitions::*;
|
|
5
|
-
private import memo_core_enumerations::*;
|
|
6
|
-
|
|
7
|
-
part def DesignHistoryFileIndex specializes ArtifactKindDef {
|
|
8
|
-
attribute :>> documentTitle = "Design History File Index";
|
|
9
|
-
attribute :>> regulatoryRef = "ISO 13485:2016 §4.2.4 / 21 CFR 820.30";
|
|
10
|
-
attribute :>> artifactKind = ArtifactKind::designHistoryFileIndex;
|
|
11
|
-
}
|
|
12
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
package memo_artifacts_design_input_plan {
|
|
2
|
-
private import ScalarValues::*;
|
|
3
|
-
|
|
4
|
-
private import memo_artifacts_definitions::*;
|
|
5
|
-
private import memo_core_enumerations::*;
|
|
6
|
-
|
|
7
|
-
part def DesignInputPlan specializes ArtifactKindDef {
|
|
8
|
-
attribute :>> documentTitle = "Design Input Plan";
|
|
9
|
-
attribute :>> regulatoryRef = "ISO 13485:2016 §7.3.3";
|
|
10
|
-
attribute :>> artifactKind = ArtifactKind::designInputPlan;
|
|
11
|
-
}
|
|
12
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
package memo_artifacts_design_output_plan {
|
|
2
|
-
private import ScalarValues::*;
|
|
3
|
-
|
|
4
|
-
private import memo_artifacts_definitions::*;
|
|
5
|
-
private import memo_core_enumerations::*;
|
|
6
|
-
|
|
7
|
-
part def DesignOutputPlan specializes ArtifactKindDef {
|
|
8
|
-
attribute :>> documentTitle = "Design Output Plan";
|
|
9
|
-
attribute :>> regulatoryRef = "ISO 13485:2016 §7.3.4";
|
|
10
|
-
attribute :>> artifactKind = ArtifactKind::designOutputPlan;
|
|
11
|
-
}
|
|
12
|
-
}
|