@memoarchitect/ontology 0.4.4
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/LICENSE +19 -0
- package/README.md +70 -0
- package/examples/gpca-pump/dhf/documents/DOC-RMP-001.md +210 -0
- package/examples/gpca-pump/memo.config.yaml +9 -0
- package/examples/gpca-pump/methodology/gpca_methodology.sysml +11 -0
- package/examples/gpca-pump/methodology/gpca_profiles.sysml +25 -0
- package/examples/gpca-pump/methodology/gpca_scope.sysml +25 -0
- package/examples/gpca-pump/model/catalog/gpca_analysis.sysml +231 -0
- package/examples/gpca-pump/model/catalog/gpca_architecture.sysml +272 -0
- package/examples/gpca-pump/model/catalog/gpca_behavior_actions.sysml +81 -0
- package/examples/gpca-pump/model/catalog/gpca_behavior_modes.sysml +363 -0
- package/examples/gpca-pump/model/catalog/gpca_behavior_subsystems.sysml +205 -0
- package/examples/gpca-pump/model/catalog/gpca_context.sysml +113 -0
- package/examples/gpca-pump/model/catalog/gpca_cybersecurity.sysml +172 -0
- package/examples/gpca-pump/model/catalog/gpca_formal_behavior.sysml +173 -0
- package/examples/gpca-pump/model/catalog/gpca_interfaces.sysml +1062 -0
- package/examples/gpca-pump/model/catalog/gpca_operational.sysml +209 -0
- package/examples/gpca-pump/model/catalog/gpca_physical.sysml +53 -0
- package/examples/gpca-pump/model/catalog/gpca_requirements.sysml +1505 -0
- package/examples/gpca-pump/model/catalog/gpca_risk.sysml +744 -0
- package/examples/gpca-pump/model/catalog/gpca_system.sysml +144 -0
- package/examples/gpca-pump/model/catalog/gpca_trace.sysml +696 -0
- package/examples/gpca-pump/model/catalog/gpca_verification.sysml +285 -0
- package/examples/gpca-pump/model/samples/README.md +24 -0
- package/examples/gpca-pump/model/samples/action_flow_view.sysml +72 -0
- package/examples/gpca-pump/model/samples/action_flow_view.viewlayout +9 -0
- package/examples/gpca-pump/model/samples/functional_flow_view.sysml +153 -0
- package/examples/gpca-pump/model/samples/interconnection_view.sysml +93 -0
- package/examples/gpca-pump/model/samples/interconnection_view.viewlayout +99 -0
- package/examples/gpca-pump/model/samples/operational_behaviour_view.sysml +145 -0
- package/examples/gpca-pump/model/samples/tree_view.sysml +56 -0
- package/examples/gpca-pump/model/views/behavior_action_flow_view.sysml +41 -0
- package/examples/gpca-pump/model/views/context_system_context_view.sysml +43 -0
- package/examples/gpca-pump/model/views/cybersecurity_cybersecurity_view.sysml +44 -0
- package/examples/gpca-pump/model/views/document_architecture_description_view.sysml +29 -0
- package/examples/gpca-pump/model/views/document_cyber_assessment_view.sysml +28 -0
- package/examples/gpca-pump/model/views/document_dhf_index_view.sysml +29 -0
- package/examples/gpca-pump/model/views/document_hazard_analysis_view.sysml +29 -0
- package/examples/gpca-pump/model/views/document_rmf_view.sysml +29 -0
- package/examples/gpca-pump/model/views/document_sdd_view.sysml +29 -0
- package/examples/gpca-pump/model/views/document_threat_model_view.sysml +28 -0
- package/examples/gpca-pump/model/views/document_usability_view.sysml +28 -0
- package/examples/gpca-pump/model/views/document_vv_view.sysml +29 -0
- package/examples/gpca-pump/model/views/functional_function_allocation_view.sysml +42 -0
- package/examples/gpca-pump/model/views/functional_function_browser_view.sysml +41 -0
- package/examples/gpca-pump/model/views/logical_device_interconnect_view.sysml +43 -0
- package/examples/gpca-pump/model/views/logical_logical_architecture_view.sysml +42 -0
- package/examples/gpca-pump/model/views/logical_mode_state_view.sysml +42 -0
- package/examples/gpca-pump/model/views/logical_system_decomposition_view.sysml +44 -0
- package/examples/gpca-pump/model/views/operational_scenario_sequence_view.sysml +41 -0
- package/examples/gpca-pump/model/views/operational_use_case_view.sysml +43 -0
- package/examples/gpca-pump/model/views/physical_physical_bom_view.sysml +41 -0
- package/examples/gpca-pump/model/views/requirements_requirements_trace_view.sysml +42 -0
- package/examples/gpca-pump/model/views/risk_fmea_view.sysml +42 -0
- package/examples/gpca-pump/model/views/risk_risk_chain_view.sysml +44 -0
- package/examples/gpca-pump/model/views/software_software_architecture_view.sysml +43 -0
- package/examples/gpca-pump/model/views/verification_verification_coverage_view.sysml +42 -0
- package/memo.manifest.yaml +13 -0
- package/methodologies/default/memo.package.yaml +9 -0
- package/methodologies/gpca/memo.package.yaml +9 -0
- package/ontology/memo.package.yaml +8 -0
- package/ontology/memo.rendering.yaml +47 -0
- package/package.json +65 -0
- package/profile/archetypes.yaml +36 -0
- package/profile/memo.package.yaml +9 -0
- package/profile/templates/connected-device/starter.sysml +8 -0
- package/profile/templates/infusion-pump/starter.sysml +8 -0
- package/profile/templates/monitoring-device/starter.sysml +8 -0
- package/profile/templates/samd/starter.sysml +8 -0
- package/src/architecture/analysis/memo_fmea.sysml +91 -0
- package/src/architecture/assurance/memo_assurance.sysml +29 -0
- package/src/architecture/behavior/memo_behavior.sysml +65 -0
- package/src/architecture/constraints/memo_constraints.sysml +14 -0
- package/src/architecture/context/memo_context.sysml +58 -0
- package/src/architecture/cybersecurity/memo_cybersecurity.sysml +99 -0
- package/src/architecture/decisions/memo_decisions.sysml +12 -0
- package/src/architecture/functions/memo_functions.sysml +30 -0
- package/src/architecture/hardware_structure/memo_hardware_structure.sysml +15 -0
- package/src/architecture/interfaces/memo_interfaces.sysml +103 -0
- package/src/architecture/logical_structure/memo_logical_structure.sysml +10 -0
- package/src/architecture/operational/memo_operational.sysml +51 -0
- package/src/architecture/physical/memo_physical_architecture.sysml +19 -0
- package/src/architecture/requirements/memo_requirements.sysml +69 -0
- package/src/architecture/risk/memo_arch_risk.sysml +7 -0
- package/src/architecture/risk/memo_risk.sysml +80 -0
- package/src/architecture/software_structure/memo_software_structure.sysml +44 -0
- package/src/architecture/system/memo_system_analysis.sysml +54 -0
- package/src/artifacts/clinical_safety_report.sysml +12 -0
- package/src/artifacts/cybersecurity_assessment_report.sysml +12 -0
- package/src/artifacts/definitions/memo_artifact_definitions.sysml +12 -0
- package/src/artifacts/design_change_log.sysml +12 -0
- package/src/artifacts/design_history_file_index.sysml +12 -0
- package/src/artifacts/design_input_plan.sysml +12 -0
- package/src/artifacts/design_output_plan.sysml +12 -0
- package/src/artifacts/evidence_record.sysml +12 -0
- package/src/artifacts/failure_mode_effects_analysis.sysml +12 -0
- package/src/artifacts/hazard_analysis_report.sysml +12 -0
- package/src/artifacts/labeling_specification.sysml +12 -0
- package/src/artifacts/requirements_specification.sysml +12 -0
- package/src/artifacts/requirements_traceability_matrix.sysml +12 -0
- package/src/artifacts/risk_management_plan.sysml +12 -0
- package/src/artifacts/software_design_description.sysml +12 -0
- package/src/artifacts/software_development_plan.sysml +12 -0
- package/src/artifacts/soup_list.sysml +12 -0
- package/src/artifacts/system_architecture_description.sysml +12 -0
- package/src/artifacts/test_protocol.sysml +12 -0
- package/src/artifacts/test_report.sysml +12 -0
- package/src/artifacts/threat_model_report.sysml +12 -0
- package/src/artifacts/usability_engineering_report.sysml +12 -0
- package/src/compliance/artifacts/memo_artifacts.sysml +13 -0
- package/src/compliance/change/memo_change.sysml +17 -0
- package/src/compliance/dhf-templates/21cfr820/change-record.md +45 -0
- package/src/compliance/dhf-templates/21cfr820/design-input.md +67 -0
- package/src/compliance/dhf-templates/21cfr820/design-output.md +80 -0
- package/src/compliance/dhf-templates/21cfr820/design-review.md +51 -0
- package/src/compliance/dhf-templates/21cfr820/design-validation.md +64 -0
- package/src/compliance/dhf-templates/21cfr820/design-verification.md +57 -0
- package/src/compliance/dhf-templates/21cfr820/dhf-index.md +111 -0
- package/src/compliance/dhf-templates/21cfr820/transfer-plan.md +50 -0
- package/src/compliance/dhf-templates/21cfr820/user-needs.md +81 -0
- package/src/compliance/dhf-templates/21cfr820/vv-plan.md +89 -0
- package/src/compliance/dhf-templates/21cfr820/vv-report.md +85 -0
- package/src/compliance/dhf-templates/fda-cybersecurity/incident-response.md +66 -0
- package/src/compliance/dhf-templates/fda-cybersecurity/postmarket-surveillance.md +63 -0
- package/src/compliance/dhf-templates/fda-cybersecurity/security-arch.md +83 -0
- package/src/compliance/dhf-templates/fda-cybersecurity/threat-model.md +100 -0
- package/src/compliance/dhf-templates/fda-cybersecurity/vuln-assessment.md +77 -0
- package/src/compliance/dhf-templates/iec-62304/change-control.md +40 -0
- package/src/compliance/dhf-templates/iec-62304/detailed-design.md +69 -0
- package/src/compliance/dhf-templates/iec-62304/integration-test.md +68 -0
- package/src/compliance/dhf-templates/iec-62304/sad.md +115 -0
- package/src/compliance/dhf-templates/iec-62304/sbom.md +67 -0
- package/src/compliance/dhf-templates/iec-62304/sdp.md +108 -0
- package/src/compliance/dhf-templates/iec-62304/soup.md +77 -0
- package/src/compliance/dhf-templates/iec-62304/srs.md +138 -0
- package/src/compliance/dhf-templates/iec-62304/sw-traceability.md +111 -0
- package/src/compliance/dhf-templates/iec-62304/system-test.md +67 -0
- package/src/compliance/dhf-templates/iec-62366/formative-eval.md +47 -0
- package/src/compliance/dhf-templates/iec-62366/summative-eval.md +69 -0
- package/src/compliance/dhf-templates/iec-62366/task-analysis.md +57 -0
- package/src/compliance/dhf-templates/iec-62366/ue-plan.md +81 -0
- package/src/compliance/dhf-templates/iec-62366/ui-spec.md +61 -0
- package/src/compliance/dhf-templates/iec-62366/urra.md +74 -0
- package/src/compliance/dhf-templates/iec-62366/use-spec.md +61 -0
- package/src/compliance/dhf-templates/iso-14971/fmea.md +93 -0
- package/src/compliance/dhf-templates/iso-14971/fta.md +70 -0
- package/src/compliance/dhf-templates/iso-14971/har.md +165 -0
- package/src/compliance/dhf-templates/iso-14971/risk-benefit.md +51 -0
- package/src/compliance/dhf-templates/iso-14971/risk-matrix.md +51 -0
- package/src/compliance/dhf-templates/iso-14971/rmp.md +169 -0
- package/src/compliance/dhf-templates/iso-14971/rmr.md +101 -0
- package/src/compliance/dhf-templates/shared/snippets/approval-block.md +16 -0
- package/src/compliance/dhf-templates/shared/snippets/document-control-header.md +15 -0
- package/src/compliance/dhf-templates/shared/snippets/references-section.md +16 -0
- package/src/compliance/dhf-templates/shared/snippets/revision-history-table.md +11 -0
- package/src/compliance/document_views/memo_document_views.sysml +7 -0
- package/src/compliance/iso14971/risk_management_file.sysml +16 -0
- package/src/compliance/postmarket/memo_postmarket.sysml +16 -0
- package/src/core/common/memo_common.sysml +50 -0
- package/src/core/consistency_rules/consistency_rules.sysml +41 -0
- package/src/core/dimensions/dimensions.sysml +37 -0
- package/src/core/enumerations/memo_enumerations.sysml +562 -0
- package/src/core/methodology_scope/methodology_scope.sysml +46 -0
- package/src/core/relationships/memo_relationships.sysml +230 -0
- package/src/core/semantics/semantics.sysml +20 -0
- package/src/core/stdlib/collections.sysml +6 -0
- package/src/core/stdlib/functions.sysml +6 -0
- package/src/core/stdlib/scalars.sysml +6 -0
- package/src/core/stdlib/time.sysml +6 -0
- package/src/medical_device_library.sysml +100 -0
- package/src/memo_namespaces.sysml +668 -0
- package/src/methodology/LICENSES/MIT.txt +19 -0
- package/src/methodology/memo_archetypes.sysml +93 -0
- package/src/methodology/memo_core.sysml +53 -0
- package/src/methodology/memo_gates.sysml +11 -0
- package/src/methodology/memo_patterns.sysml +12 -0
- package/src/methodology/memo_profiles.sysml +218 -0
- package/src/methodology/memo_rules.sysml +15 -0
- package/src/methodology/memo_viewpoints.sysml +5 -0
- package/src/methodology/memo_workflow.sysml +14 -0
- package/src/rules/closure/closure_rules.sysml +180 -0
- package/src/rules/coverage/coverage_rules.sysml +258 -0
- package/src/rules/crosslayer/cross_layer_rules.sysml +38 -0
- package/src/rules/lifecycle/lifecycle_rules.sysml +41 -0
- package/src/rules/quantitative/quantitative_rules.sysml +34 -0
- package/src/viewpoints/clinical/clinical_evidence_view.sysml +13 -0
- package/src/viewpoints/clinical/clinical_viewpoint.sysml +25 -0
- package/src/viewpoints/context/context_viewpoint.sysml +25 -0
- package/src/viewpoints/context/system_context_view.sysml +29 -0
- package/src/viewpoints/cybersecurity/cybersecurity_assessment_view.sysml +13 -0
- package/src/viewpoints/cybersecurity/cybersecurity_viewpoint.sysml +27 -0
- package/src/viewpoints/cybersecurity/threat_model_view.sysml +13 -0
- package/src/viewpoints/definitions/memo_viewpoint_definitions.sysml +82 -0
- package/src/viewpoints/functional/function_allocation_view.sysml +29 -0
- package/src/viewpoints/functional/functional_viewpoint.sysml +25 -0
- package/src/viewpoints/functional/system_functional_tree_view.sysml +29 -0
- package/src/viewpoints/logical/logical_architecture_view.sysml +29 -0
- package/src/viewpoints/logical/logical_viewpoint.sysml +25 -0
- package/src/viewpoints/operational/operational_viewpoint.sysml +25 -0
- package/src/viewpoints/operational/use_case_view.sysml +29 -0
- package/src/viewpoints/physical/network_topology_view.sysml +29 -0
- package/src/viewpoints/physical/physical_bom_view.sysml +29 -0
- package/src/viewpoints/physical/physical_viewpoint.sysml +25 -0
- package/src/viewpoints/requirements/requirements_traceability_view.sysml +29 -0
- package/src/viewpoints/requirements/requirements_viewpoint.sysml +25 -0
- package/src/viewpoints/risk/risk_chain_view.sysml +30 -0
- package/src/viewpoints/risk/risk_viewpoint.sysml +25 -0
- package/src/viewpoints/software/software_architecture_view.sysml +29 -0
- package/src/viewpoints/software/software_viewpoint.sysml +25 -0
- package/src/viewpoints/usability/usability_engineering_view.sysml +13 -0
- package/src/viewpoints/usability/usability_viewpoint.sysml +25 -0
- package/src/viewpoints/verification/verification_coverage_view.sysml +29 -0
- package/src/viewpoints/verification/verification_viewpoint.sysml +25 -0
- package/template/memo.package.yaml +5 -0
- package/template/src/catalog/starter.sysml +12 -0
- package/template/src/documents/.gitkeep +1 -0
- package/template/src/views/.gitkeep +1 -0
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: fmea
|
|
3
|
+
title: Failure Mode and Effects Analysis
|
|
4
|
+
standard: IEC 60812:2018
|
|
5
|
+
clauses: ["5", "6", "7"]
|
|
6
|
+
required_for: ["CE", "FDA_510k", "FDA_PMA"]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
{{include:shared/snippets/document-control-header.md}}
|
|
10
|
+
|
|
11
|
+
{{toc}}
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 1. Purpose and Scope
|
|
16
|
+
|
|
17
|
+
This FMEA documents failure modes for **{{project.product}}** components, their effects, severity, and mitigations. Combines hardware, software, and system-level failure analysis.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## 2. Component Inventory
|
|
22
|
+
|
|
23
|
+
This section is generated from the system model. The table below lists the **Component Inventory** elements currently defined:
|
|
24
|
+
|
|
25
|
+
```memo-query
|
|
26
|
+
kind: [Component, Subsystem, SoftwareItem]
|
|
27
|
+
display: table
|
|
28
|
+
columns: name, kind, layer, doc
|
|
29
|
+
sort: name
|
|
30
|
+
empty: "No components defined. Add Component, Subsystem, or SoftwareItem elements."
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## 3. FMEA Worksheet
|
|
36
|
+
|
|
37
|
+
### 3.1 Hardware Failures
|
|
38
|
+
|
|
39
|
+
```memo-query
|
|
40
|
+
kind: Component
|
|
41
|
+
display: table
|
|
42
|
+
columns: name, layer, doc
|
|
43
|
+
sort: name
|
|
44
|
+
empty: "No hardware components defined."
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### 3.2 Software Failures
|
|
48
|
+
|
|
49
|
+
```memo-query
|
|
50
|
+
kind: [SoftwareItem, SoftwareUnit]
|
|
51
|
+
display: table
|
|
52
|
+
columns: name, kind, layer, doc
|
|
53
|
+
sort: name
|
|
54
|
+
empty: "No software items defined."
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
### 3.3 Interface Failures
|
|
58
|
+
|
|
59
|
+
```memo-query
|
|
60
|
+
kind: Interface
|
|
61
|
+
display: table
|
|
62
|
+
columns: name, layer, doc
|
|
63
|
+
sort: name
|
|
64
|
+
empty: "No interfaces defined."
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## 4. Risk Controls for FMEA Items
|
|
70
|
+
|
|
71
|
+
This section is generated from the system model. The table below lists the **Risk Controls for FMEA Items** elements currently defined:
|
|
72
|
+
|
|
73
|
+
```memo-query
|
|
74
|
+
kind: RiskControl
|
|
75
|
+
display: table
|
|
76
|
+
columns: name, layer, doc
|
|
77
|
+
sort: name
|
|
78
|
+
empty: "No risk controls defined."
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## 5. Unmitigated Failures
|
|
84
|
+
|
|
85
|
+
Complete this section for **{{project.product}}** using the guidance below.
|
|
86
|
+
|
|
87
|
+
_[TODO: List any failure modes without risk controls and justify residual risk]_
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
{{include:shared/snippets/revision-history-table.md}}
|
|
92
|
+
|
|
93
|
+
{{include:shared/snippets/approval-block.md}}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: fta
|
|
3
|
+
title: Fault Tree Analysis
|
|
4
|
+
standard: ISO 14971:2019
|
|
5
|
+
clauses: ["5", "6"]
|
|
6
|
+
required_for: ["CE"]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
{{include:shared/snippets/document-control-header.md}}
|
|
10
|
+
|
|
11
|
+
{{toc}}
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 1. Purpose
|
|
16
|
+
|
|
17
|
+
This Fault Tree Analysis (FTA) complements the FMEA by providing a top-down analysis of failure modes that could lead to identified harms for **{{project.product}}**.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## 2. Top Events (Harms)
|
|
22
|
+
|
|
23
|
+
This section is generated from the system model. The table below lists the **Top Events (Harms)** elements currently defined:
|
|
24
|
+
|
|
25
|
+
```memo-query
|
|
26
|
+
kind: Harm
|
|
27
|
+
display: table
|
|
28
|
+
columns: name, doc, layer
|
|
29
|
+
sort: name
|
|
30
|
+
empty: "No harm elements defined. Add Harm elements to the model."
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## 3. Contributing Failure Modes
|
|
36
|
+
|
|
37
|
+
This section is generated from the system model. The table below lists the **Contributing Failure Modes** elements currently defined:
|
|
38
|
+
|
|
39
|
+
```memo-query
|
|
40
|
+
kind: [Hazard, HazardousSituation]
|
|
41
|
+
display: grouped
|
|
42
|
+
group_by: layer
|
|
43
|
+
columns: name, kind, doc
|
|
44
|
+
sort: name
|
|
45
|
+
empty: "No hazards or hazardous situations defined."
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## 4. Fault Tree Diagrams
|
|
51
|
+
|
|
52
|
+
The diagram below is rendered from the corresponding model view and reflects the current state of the model:
|
|
53
|
+
|
|
54
|
+
{{diagram:fta-diagram}}
|
|
55
|
+
|
|
56
|
+
_[TODO: Attach or reference FTA diagram files]_
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
## 5. Cut Sets and Recommendations
|
|
61
|
+
|
|
62
|
+
Complete this section for **{{project.product}}** using the guidance below.
|
|
63
|
+
|
|
64
|
+
_[TODO: List minimal cut sets and associated risk reduction recommendations]_
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
{{include:shared/snippets/revision-history-table.md}}
|
|
69
|
+
|
|
70
|
+
{{include:shared/snippets/approval-block.md}}
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: har
|
|
3
|
+
title: Hazard Analysis Report
|
|
4
|
+
standard: ISO 14971:2019
|
|
5
|
+
clauses: ["5", "6", "7"]
|
|
6
|
+
required_for: ["CE", "FDA_510k", "FDA_PMA", "MDR"]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
{{include:shared/snippets/document-control-header.md}}
|
|
10
|
+
|
|
11
|
+
{{toc}}
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 1. Purpose
|
|
16
|
+
|
|
17
|
+
This Hazard Analysis Report documents the systematic identification of hazards, hazardous situations, and harms associated with **{{project.product}}**, along with the associated risk estimation and risk control measures.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## 2. Hazard Summary
|
|
22
|
+
|
|
23
|
+
The following metric is computed live from the model:
|
|
24
|
+
|
|
25
|
+
```memo-query
|
|
26
|
+
kind: Hazard
|
|
27
|
+
display: count
|
|
28
|
+
label: Total hazards identified
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
```memo-query
|
|
32
|
+
kind: HazardousSituation
|
|
33
|
+
display: count
|
|
34
|
+
label: Hazardous situations
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
```memo-query
|
|
38
|
+
kind: RiskControl
|
|
39
|
+
display: count
|
|
40
|
+
label: Risk control measures
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
## 3. Hazard Identification
|
|
46
|
+
|
|
47
|
+
All foreseeable hazards arising from the device, its intended use, and reasonably foreseeable misuse are listed below.
|
|
48
|
+
|
|
49
|
+
### 3.1 Energy Hazards
|
|
50
|
+
|
|
51
|
+
```memo-query
|
|
52
|
+
kind: Hazard
|
|
53
|
+
where: doc contains "energy"
|
|
54
|
+
display: table
|
|
55
|
+
columns: name, doc, layer
|
|
56
|
+
sort: name
|
|
57
|
+
empty: "No energy hazards identified."
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
### 3.2 Biological and Chemical Hazards
|
|
61
|
+
|
|
62
|
+
```memo-query
|
|
63
|
+
kind: Hazard
|
|
64
|
+
where: doc contains "biolog"
|
|
65
|
+
display: table
|
|
66
|
+
columns: name, doc, layer
|
|
67
|
+
empty: "No biological/chemical hazards identified."
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### 3.3 Operational Hazards
|
|
71
|
+
|
|
72
|
+
```memo-query
|
|
73
|
+
kind: Hazard
|
|
74
|
+
display: grouped
|
|
75
|
+
group_by: layer
|
|
76
|
+
columns: name, doc
|
|
77
|
+
sort: name
|
|
78
|
+
empty: "No hazards defined. Add Hazard elements to model/risk/*.sysml."
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## 4. Hazardous Situations
|
|
84
|
+
|
|
85
|
+
This section is generated from the system model. The table below lists the **Hazardous Situations** elements currently defined:
|
|
86
|
+
|
|
87
|
+
```memo-query
|
|
88
|
+
kind: HazardousSituation
|
|
89
|
+
display: table
|
|
90
|
+
columns: name, doc, layer
|
|
91
|
+
sort: name
|
|
92
|
+
empty: "No hazardous situations defined. Add HazardousSituation elements."
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## 5. Risk Estimation
|
|
98
|
+
|
|
99
|
+
<!-- [GUIDANCE] For each hazardous situation, estimate probability of occurrence and severity of harm per ISO 14971:2019 §5. -->
|
|
100
|
+
|
|
101
|
+
```memo-query
|
|
102
|
+
kind: Harm
|
|
103
|
+
display: table
|
|
104
|
+
columns: name, doc, layer
|
|
105
|
+
sort: name
|
|
106
|
+
empty: "No harm elements defined. Add Harm elements linked to HazardousSituation."
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
## 6. Risk Control Measures
|
|
112
|
+
|
|
113
|
+
### 6.1 Inherent Safety by Design
|
|
114
|
+
|
|
115
|
+
```memo-query
|
|
116
|
+
kind: RiskControl
|
|
117
|
+
where: doc contains "design"
|
|
118
|
+
display: table
|
|
119
|
+
columns: name, doc, layer
|
|
120
|
+
empty: "No inherent safety controls."
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
### 6.2 Protective Measures
|
|
124
|
+
|
|
125
|
+
```memo-query
|
|
126
|
+
kind: RiskControl
|
|
127
|
+
display: table
|
|
128
|
+
columns: name, doc, layer
|
|
129
|
+
sort: name
|
|
130
|
+
empty: "No risk controls defined. Add RiskControl elements."
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
### 6.3 Information for Safety
|
|
134
|
+
|
|
135
|
+
_[TODO: List all warnings, cautions, and contraindications in labeling]_
|
|
136
|
+
|
|
137
|
+
---
|
|
138
|
+
|
|
139
|
+
## 7. Residual Risk Evaluation
|
|
140
|
+
|
|
141
|
+
This section is generated from the system model. The table below lists the **Residual Risk Evaluation** elements currently defined:
|
|
142
|
+
|
|
143
|
+
```memo-query
|
|
144
|
+
kind: Hazard
|
|
145
|
+
display: table
|
|
146
|
+
columns: name, layer, doc
|
|
147
|
+
sort: name
|
|
148
|
+
empty: "All hazards have been evaluated."
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
---
|
|
152
|
+
|
|
153
|
+
## 8. Benefit-Risk Analysis
|
|
154
|
+
|
|
155
|
+
<!-- [GUIDANCE] Per ISO 14971:2019 §8, if residual risks remain after all control measures, the overall residual risk must be judged acceptable relative to medical benefits. -->
|
|
156
|
+
|
|
157
|
+
_[TODO: Document benefit-risk justification if any residual risks remain]_
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
{{include:shared/snippets/revision-history-table.md}}
|
|
162
|
+
|
|
163
|
+
{{include:shared/snippets/approval-block.md}}
|
|
164
|
+
|
|
165
|
+
{{include:shared/snippets/references-section.md}}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: risk-benefit
|
|
3
|
+
title: Risk-Benefit Analysis
|
|
4
|
+
standard: ISO 14971:2019
|
|
5
|
+
clauses: ["8"]
|
|
6
|
+
required_for: ["CE", "MDR"]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
{{include:shared/snippets/document-control-header.md}}
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## 1. Purpose
|
|
14
|
+
|
|
15
|
+
This document provides the benefit-risk analysis for **{{project.product}}** as required by ISO 14971:2019 §8. It is prepared when residual risks cannot be further reduced and a judgment of acceptability must be made.
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## 2. Medical Benefits
|
|
20
|
+
|
|
21
|
+
Complete this section for **{{project.product}}** using the guidance below.
|
|
22
|
+
|
|
23
|
+
_[TODO: Describe the medical benefits of the device for its intended patient population]_
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## 3. Residual Risks Summary
|
|
28
|
+
|
|
29
|
+
This section is generated from the system model. The table below lists the **Residual Risks Summary** elements currently defined:
|
|
30
|
+
|
|
31
|
+
```memo-query
|
|
32
|
+
kind: Hazard
|
|
33
|
+
display: table
|
|
34
|
+
columns: name, doc, layer
|
|
35
|
+
sort: name
|
|
36
|
+
empty: "No residual risks identified — standard risk controls are sufficient."
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## 4. Benefit-Risk Conclusion
|
|
42
|
+
|
|
43
|
+
Complete this section for **{{project.product}}** using the guidance below.
|
|
44
|
+
|
|
45
|
+
_[TODO: State the conclusion: the medical benefits of the intended use outweigh the residual risks]_
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
{{include:shared/snippets/revision-history-table.md}}
|
|
50
|
+
|
|
51
|
+
{{include:shared/snippets/approval-block.md}}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: risk-matrix
|
|
3
|
+
title: Risk Matrix
|
|
4
|
+
standard: ISO 14971:2019
|
|
5
|
+
clauses: ["5", "6"]
|
|
6
|
+
required_for: ["CE", "MDR"]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
{{include:shared/snippets/document-control-header.md}}
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## Risk Matrix
|
|
14
|
+
|
|
15
|
+
This matrix shows the distribution of identified hazards across severity and probability levels.
|
|
16
|
+
|
|
17
|
+
```memo-query
|
|
18
|
+
kind: Hazard
|
|
19
|
+
display: matrix
|
|
20
|
+
row_kind: kind
|
|
21
|
+
col_kind: layer
|
|
22
|
+
empty: "No hazards defined."
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
### Hazard Coverage by Layer
|
|
26
|
+
|
|
27
|
+
```memo-query
|
|
28
|
+
kind: [Hazard, HazardousSituation, Harm]
|
|
29
|
+
display: grouped
|
|
30
|
+
group_by: layer
|
|
31
|
+
columns: name, kind, doc
|
|
32
|
+
empty: "No risk elements defined."
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## Risk Control Coverage
|
|
38
|
+
|
|
39
|
+
This section is generated from the system model. The table below lists the **Risk Control Coverage** elements currently defined:
|
|
40
|
+
|
|
41
|
+
```memo-query
|
|
42
|
+
kind: RiskControl
|
|
43
|
+
display: table
|
|
44
|
+
columns: name, layer, doc
|
|
45
|
+
sort: name
|
|
46
|
+
empty: "No risk controls defined."
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
{{include:shared/snippets/revision-history-table.md}}
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: rmp
|
|
3
|
+
title: Risk Management Plan
|
|
4
|
+
standard: ISO 14971:2019
|
|
5
|
+
clauses: ["4.4"]
|
|
6
|
+
required_for: ["CE", "FDA_510k", "FDA_PMA", "MDR"]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
{{include:shared/snippets/document-control-header.md}}
|
|
10
|
+
|
|
11
|
+
{{toc}}
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 1. Purpose and Scope
|
|
16
|
+
|
|
17
|
+
This Risk Management Plan (RMP) defines the risk management activities for **{{project.product}}** developed by **{{project.company}}**. This plan is maintained throughout the product lifecycle in accordance with ISO 14971:2019.
|
|
18
|
+
|
|
19
|
+
### 1.1 Intended Use
|
|
20
|
+
|
|
21
|
+
<!-- [GUIDANCE] Describe the intended use of the device, intended users, and intended use environment. -->
|
|
22
|
+
|
|
23
|
+
_[TODO: Describe intended use, intended users, and intended use environment]_
|
|
24
|
+
|
|
25
|
+
### 1.2 Scope of Risk Management
|
|
26
|
+
|
|
27
|
+
This plan applies to all phases of the product lifecycle: design, development, manufacture, post-market surveillance, and eventual decommission.
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## 2. Regulatory Context
|
|
32
|
+
|
|
33
|
+
Complete the table below for **{{project.product}}**:
|
|
34
|
+
|
|
35
|
+
| Requirement | Reference |
|
|
36
|
+
| --- | --- |
|
|
37
|
+
| Risk Management Process | ISO 14971:2019 §4.1 |
|
|
38
|
+
| Risk Management Plan | ISO 14971:2019 §4.4 |
|
|
39
|
+
| Risk Estimation | ISO 14971:2019 §5 |
|
|
40
|
+
| Risk Evaluation | ISO 14971:2019 §6 |
|
|
41
|
+
| Risk Control | ISO 14971:2019 §7 |
|
|
42
|
+
| Overall Residual Risk | ISO 14971:2019 §8 |
|
|
43
|
+
| Risk Management Review | ISO 14971:2019 §9 |
|
|
44
|
+
| Post-production | ISO 14971:2019 §10 |
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## 3. Risk Management Team
|
|
49
|
+
|
|
50
|
+
<!-- [GUIDANCE] List all personnel involved in risk management activities. -->
|
|
51
|
+
|
|
52
|
+
| Role | Name | Responsibilities |
|
|
53
|
+
| --- | --- | --- |
|
|
54
|
+
| Risk Management Lead | | Overall RM coordination |
|
|
55
|
+
| Clinical Representative | | Clinical risk input |
|
|
56
|
+
| Software Engineer | | Software FMEA and SOUP risk |
|
|
57
|
+
| Regulatory Affairs | | Standards compliance |
|
|
58
|
+
| Quality Engineer | | Process compliance |
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
## 4. Risk Acceptability Criteria
|
|
63
|
+
|
|
64
|
+
### 4.1 Severity Levels
|
|
65
|
+
|
|
66
|
+
```memo-query
|
|
67
|
+
kind: RiskAcceptabilityCriteria
|
|
68
|
+
display: table
|
|
69
|
+
columns: name, doc, layer
|
|
70
|
+
empty: "No risk acceptability criteria defined. Add RiskAcceptabilityCriteria elements to the model."
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
### 4.2 Risk Policy
|
|
74
|
+
|
|
75
|
+
<!-- [GUIDANCE] Define the risk policy: ALARP, broadly acceptable, or unacceptable regions. -->
|
|
76
|
+
|
|
77
|
+
_[TODO: Define risk acceptability matrix — probability vs. severity]_
|
|
78
|
+
|
|
79
|
+
Residual risk is acceptable when:
|
|
80
|
+
- All individual risks are reduced to ALARP or broadly acceptable level
|
|
81
|
+
- Overall residual risk is acceptable per §8 of ISO 14971:2019
|
|
82
|
+
- Unmitigated hazards:
|
|
83
|
+
|
|
84
|
+
```memo-query
|
|
85
|
+
kind: Hazard
|
|
86
|
+
where: layer == "risk"
|
|
87
|
+
display: count
|
|
88
|
+
label: Total hazards in model
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
## 5. Risk Management Activities
|
|
94
|
+
|
|
95
|
+
### 5.1 Hazard Identification
|
|
96
|
+
|
|
97
|
+
All hazard identification activities are documented in the Hazard Analysis Report (HAR).
|
|
98
|
+
|
|
99
|
+
```memo-query
|
|
100
|
+
kind: Hazard
|
|
101
|
+
display: table
|
|
102
|
+
columns: name, layer, doc
|
|
103
|
+
sort: name
|
|
104
|
+
empty: "No hazards defined. Add Hazard elements to model/risk/*.sysml."
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
### 5.2 Risk Estimation and Evaluation
|
|
108
|
+
|
|
109
|
+
Risk estimation is performed for each hazardous situation per ISO 14971:2019 §5–6.
|
|
110
|
+
|
|
111
|
+
```memo-query
|
|
112
|
+
kind: HazardousSituation
|
|
113
|
+
display: table
|
|
114
|
+
columns: name, layer, doc
|
|
115
|
+
sort: name
|
|
116
|
+
empty: "No hazardous situations defined."
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
### 5.3 Risk Control Measures
|
|
120
|
+
|
|
121
|
+
```memo-query
|
|
122
|
+
kind: RiskControl
|
|
123
|
+
display: table
|
|
124
|
+
columns: name, layer, doc
|
|
125
|
+
sort: name
|
|
126
|
+
empty: "No risk controls defined."
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### 5.4 Residual Risk Evaluation
|
|
130
|
+
|
|
131
|
+
Unmitigated hazards (hazards without associated risk controls):
|
|
132
|
+
|
|
133
|
+
```memo-query
|
|
134
|
+
kind: Hazard
|
|
135
|
+
display: table
|
|
136
|
+
columns: name, doc
|
|
137
|
+
empty: "All hazards have associated risk controls."
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
---
|
|
141
|
+
|
|
142
|
+
## 6. Risk Management Documentation
|
|
143
|
+
|
|
144
|
+
Complete the table below for **{{project.product}}**:
|
|
145
|
+
|
|
146
|
+
| Document | Purpose | Reference |
|
|
147
|
+
| --- | --- | --- |
|
|
148
|
+
| Hazard Analysis Report (HAR) | Hazard identification and estimation | HAR |
|
|
149
|
+
| FMEA | Failure mode analysis | FMEA |
|
|
150
|
+
| Risk Benefit Analysis | Benefit-risk justification | N/A |
|
|
151
|
+
| Risk Management Report | Overall residual risk summary | N/A |
|
|
152
|
+
|
|
153
|
+
---
|
|
154
|
+
|
|
155
|
+
## 7. Plan Maintenance
|
|
156
|
+
|
|
157
|
+
This plan shall be reviewed:
|
|
158
|
+
- At each major design change
|
|
159
|
+
- Following post-market surveillance findings
|
|
160
|
+
- Prior to each design review gate
|
|
161
|
+
- At least annually during active development
|
|
162
|
+
|
|
163
|
+
---
|
|
164
|
+
|
|
165
|
+
{{include:shared/snippets/revision-history-table.md}}
|
|
166
|
+
|
|
167
|
+
{{include:shared/snippets/approval-block.md}}
|
|
168
|
+
|
|
169
|
+
{{include:shared/snippets/references-section.md}}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: rmr
|
|
3
|
+
title: Risk Management Report
|
|
4
|
+
standard: ISO 14971:2019
|
|
5
|
+
clauses: ["9"]
|
|
6
|
+
required_for: ["CE", "FDA_510k", "FDA_PMA", "MDR"]
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
{{include:shared/snippets/document-control-header.md}}
|
|
10
|
+
|
|
11
|
+
{{toc}}
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## 1. Purpose
|
|
16
|
+
|
|
17
|
+
This Risk Management Report (RMR) summarizes the results of all risk management activities performed for **{{project.product}}** in accordance with ISO 14971:2019 §9.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## 2. Summary Statistics
|
|
22
|
+
|
|
23
|
+
The following metric is computed live from the model:
|
|
24
|
+
|
|
25
|
+
```memo-query
|
|
26
|
+
kind: Hazard
|
|
27
|
+
display: count
|
|
28
|
+
label: Total hazards identified
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
```memo-query
|
|
32
|
+
kind: RiskControl
|
|
33
|
+
display: count
|
|
34
|
+
label: Risk controls implemented
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
```memo-query
|
|
38
|
+
kind: HazardousSituation
|
|
39
|
+
display: count
|
|
40
|
+
label: Hazardous situations analyzed
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
## 3. Risk Management Plan Compliance
|
|
46
|
+
|
|
47
|
+
<!-- [GUIDANCE] Confirm that the risk management plan was executed as documented. -->
|
|
48
|
+
|
|
49
|
+
_[TODO: Confirm that all activities in the Risk Management Plan were completed]_
|
|
50
|
+
|
|
51
|
+
| Activity | Status | Reference |
|
|
52
|
+
| --- | --- | --- |
|
|
53
|
+
| Hazard identification | | HAR |
|
|
54
|
+
| Risk estimation | | HAR |
|
|
55
|
+
| Risk evaluation | | HAR |
|
|
56
|
+
| Risk control implementation | | Design records |
|
|
57
|
+
| Residual risk evaluation | | HAR |
|
|
58
|
+
| Overall residual risk | | This document |
|
|
59
|
+
| Post-production monitoring | | Post-Market Surveillance Plan |
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## 4. Overall Residual Risk Evaluation
|
|
64
|
+
|
|
65
|
+
### 4.1 Remaining Hazards
|
|
66
|
+
|
|
67
|
+
```memo-query
|
|
68
|
+
kind: Hazard
|
|
69
|
+
display: table
|
|
70
|
+
columns: name, layer, doc
|
|
71
|
+
sort: name
|
|
72
|
+
empty: "All identified hazards have been evaluated."
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
### 4.2 Overall Residual Risk Conclusion
|
|
76
|
+
|
|
77
|
+
<!-- [GUIDANCE] Conclude whether the overall residual risk is acceptable relative to the medical benefits of the device. -->
|
|
78
|
+
|
|
79
|
+
_[TODO: State the overall residual risk conclusion with justification]_
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## 5. Benefit-Risk Statement
|
|
84
|
+
|
|
85
|
+
Complete this section for **{{project.product}}** using the guidance below.
|
|
86
|
+
|
|
87
|
+
_[TODO: State clearly that the benefits of the device outweigh the residual risks for the intended use]_
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
## 6. Post-Production Information Collection
|
|
92
|
+
|
|
93
|
+
Post-production information collection activities are documented in the Post-Market Surveillance Plan.
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
{{include:shared/snippets/revision-history-table.md}}
|
|
98
|
+
|
|
99
|
+
{{include:shared/snippets/approval-block.md}}
|
|
100
|
+
|
|
101
|
+
{{include:shared/snippets/references-section.md}}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: approval-block
|
|
3
|
+
title: Approval Block
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
## Approvals
|
|
7
|
+
|
|
8
|
+
This document has been reviewed and approved by the following personnel:
|
|
9
|
+
|
|
10
|
+
| Name | Role | Signature | Date |
|
|
11
|
+
| --- | --- | --- | --- |
|
|
12
|
+
| | Quality Assurance | | |
|
|
13
|
+
| | Regulatory Affairs | | |
|
|
14
|
+
| | Engineering Lead | | |
|
|
15
|
+
| | Clinical Affairs | | |
|
|
16
|
+
|