@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.
Files changed (217) hide show
  1. package/LICENSE +19 -0
  2. package/README.md +70 -0
  3. package/examples/gpca-pump/dhf/documents/DOC-RMP-001.md +210 -0
  4. package/examples/gpca-pump/memo.config.yaml +9 -0
  5. package/examples/gpca-pump/methodology/gpca_methodology.sysml +11 -0
  6. package/examples/gpca-pump/methodology/gpca_profiles.sysml +25 -0
  7. package/examples/gpca-pump/methodology/gpca_scope.sysml +25 -0
  8. package/examples/gpca-pump/model/catalog/gpca_analysis.sysml +231 -0
  9. package/examples/gpca-pump/model/catalog/gpca_architecture.sysml +272 -0
  10. package/examples/gpca-pump/model/catalog/gpca_behavior_actions.sysml +81 -0
  11. package/examples/gpca-pump/model/catalog/gpca_behavior_modes.sysml +363 -0
  12. package/examples/gpca-pump/model/catalog/gpca_behavior_subsystems.sysml +205 -0
  13. package/examples/gpca-pump/model/catalog/gpca_context.sysml +113 -0
  14. package/examples/gpca-pump/model/catalog/gpca_cybersecurity.sysml +172 -0
  15. package/examples/gpca-pump/model/catalog/gpca_formal_behavior.sysml +173 -0
  16. package/examples/gpca-pump/model/catalog/gpca_interfaces.sysml +1062 -0
  17. package/examples/gpca-pump/model/catalog/gpca_operational.sysml +209 -0
  18. package/examples/gpca-pump/model/catalog/gpca_physical.sysml +53 -0
  19. package/examples/gpca-pump/model/catalog/gpca_requirements.sysml +1505 -0
  20. package/examples/gpca-pump/model/catalog/gpca_risk.sysml +744 -0
  21. package/examples/gpca-pump/model/catalog/gpca_system.sysml +144 -0
  22. package/examples/gpca-pump/model/catalog/gpca_trace.sysml +696 -0
  23. package/examples/gpca-pump/model/catalog/gpca_verification.sysml +285 -0
  24. package/examples/gpca-pump/model/samples/README.md +24 -0
  25. package/examples/gpca-pump/model/samples/action_flow_view.sysml +72 -0
  26. package/examples/gpca-pump/model/samples/action_flow_view.viewlayout +9 -0
  27. package/examples/gpca-pump/model/samples/functional_flow_view.sysml +153 -0
  28. package/examples/gpca-pump/model/samples/interconnection_view.sysml +93 -0
  29. package/examples/gpca-pump/model/samples/interconnection_view.viewlayout +99 -0
  30. package/examples/gpca-pump/model/samples/operational_behaviour_view.sysml +145 -0
  31. package/examples/gpca-pump/model/samples/tree_view.sysml +56 -0
  32. package/examples/gpca-pump/model/views/behavior_action_flow_view.sysml +41 -0
  33. package/examples/gpca-pump/model/views/context_system_context_view.sysml +43 -0
  34. package/examples/gpca-pump/model/views/cybersecurity_cybersecurity_view.sysml +44 -0
  35. package/examples/gpca-pump/model/views/document_architecture_description_view.sysml +29 -0
  36. package/examples/gpca-pump/model/views/document_cyber_assessment_view.sysml +28 -0
  37. package/examples/gpca-pump/model/views/document_dhf_index_view.sysml +29 -0
  38. package/examples/gpca-pump/model/views/document_hazard_analysis_view.sysml +29 -0
  39. package/examples/gpca-pump/model/views/document_rmf_view.sysml +29 -0
  40. package/examples/gpca-pump/model/views/document_sdd_view.sysml +29 -0
  41. package/examples/gpca-pump/model/views/document_threat_model_view.sysml +28 -0
  42. package/examples/gpca-pump/model/views/document_usability_view.sysml +28 -0
  43. package/examples/gpca-pump/model/views/document_vv_view.sysml +29 -0
  44. package/examples/gpca-pump/model/views/functional_function_allocation_view.sysml +42 -0
  45. package/examples/gpca-pump/model/views/functional_function_browser_view.sysml +41 -0
  46. package/examples/gpca-pump/model/views/logical_device_interconnect_view.sysml +43 -0
  47. package/examples/gpca-pump/model/views/logical_logical_architecture_view.sysml +42 -0
  48. package/examples/gpca-pump/model/views/logical_mode_state_view.sysml +42 -0
  49. package/examples/gpca-pump/model/views/logical_system_decomposition_view.sysml +44 -0
  50. package/examples/gpca-pump/model/views/operational_scenario_sequence_view.sysml +41 -0
  51. package/examples/gpca-pump/model/views/operational_use_case_view.sysml +43 -0
  52. package/examples/gpca-pump/model/views/physical_physical_bom_view.sysml +41 -0
  53. package/examples/gpca-pump/model/views/requirements_requirements_trace_view.sysml +42 -0
  54. package/examples/gpca-pump/model/views/risk_fmea_view.sysml +42 -0
  55. package/examples/gpca-pump/model/views/risk_risk_chain_view.sysml +44 -0
  56. package/examples/gpca-pump/model/views/software_software_architecture_view.sysml +43 -0
  57. package/examples/gpca-pump/model/views/verification_verification_coverage_view.sysml +42 -0
  58. package/memo.manifest.yaml +13 -0
  59. package/methodologies/default/memo.package.yaml +9 -0
  60. package/methodologies/gpca/memo.package.yaml +9 -0
  61. package/ontology/memo.package.yaml +8 -0
  62. package/ontology/memo.rendering.yaml +47 -0
  63. package/package.json +65 -0
  64. package/profile/archetypes.yaml +36 -0
  65. package/profile/memo.package.yaml +9 -0
  66. package/profile/templates/connected-device/starter.sysml +8 -0
  67. package/profile/templates/infusion-pump/starter.sysml +8 -0
  68. package/profile/templates/monitoring-device/starter.sysml +8 -0
  69. package/profile/templates/samd/starter.sysml +8 -0
  70. package/src/architecture/analysis/memo_fmea.sysml +91 -0
  71. package/src/architecture/assurance/memo_assurance.sysml +29 -0
  72. package/src/architecture/behavior/memo_behavior.sysml +65 -0
  73. package/src/architecture/constraints/memo_constraints.sysml +14 -0
  74. package/src/architecture/context/memo_context.sysml +58 -0
  75. package/src/architecture/cybersecurity/memo_cybersecurity.sysml +99 -0
  76. package/src/architecture/decisions/memo_decisions.sysml +12 -0
  77. package/src/architecture/functions/memo_functions.sysml +30 -0
  78. package/src/architecture/hardware_structure/memo_hardware_structure.sysml +15 -0
  79. package/src/architecture/interfaces/memo_interfaces.sysml +103 -0
  80. package/src/architecture/logical_structure/memo_logical_structure.sysml +10 -0
  81. package/src/architecture/operational/memo_operational.sysml +51 -0
  82. package/src/architecture/physical/memo_physical_architecture.sysml +19 -0
  83. package/src/architecture/requirements/memo_requirements.sysml +69 -0
  84. package/src/architecture/risk/memo_arch_risk.sysml +7 -0
  85. package/src/architecture/risk/memo_risk.sysml +80 -0
  86. package/src/architecture/software_structure/memo_software_structure.sysml +44 -0
  87. package/src/architecture/system/memo_system_analysis.sysml +54 -0
  88. package/src/artifacts/clinical_safety_report.sysml +12 -0
  89. package/src/artifacts/cybersecurity_assessment_report.sysml +12 -0
  90. package/src/artifacts/definitions/memo_artifact_definitions.sysml +12 -0
  91. package/src/artifacts/design_change_log.sysml +12 -0
  92. package/src/artifacts/design_history_file_index.sysml +12 -0
  93. package/src/artifacts/design_input_plan.sysml +12 -0
  94. package/src/artifacts/design_output_plan.sysml +12 -0
  95. package/src/artifacts/evidence_record.sysml +12 -0
  96. package/src/artifacts/failure_mode_effects_analysis.sysml +12 -0
  97. package/src/artifacts/hazard_analysis_report.sysml +12 -0
  98. package/src/artifacts/labeling_specification.sysml +12 -0
  99. package/src/artifacts/requirements_specification.sysml +12 -0
  100. package/src/artifacts/requirements_traceability_matrix.sysml +12 -0
  101. package/src/artifacts/risk_management_plan.sysml +12 -0
  102. package/src/artifacts/software_design_description.sysml +12 -0
  103. package/src/artifacts/software_development_plan.sysml +12 -0
  104. package/src/artifacts/soup_list.sysml +12 -0
  105. package/src/artifacts/system_architecture_description.sysml +12 -0
  106. package/src/artifacts/test_protocol.sysml +12 -0
  107. package/src/artifacts/test_report.sysml +12 -0
  108. package/src/artifacts/threat_model_report.sysml +12 -0
  109. package/src/artifacts/usability_engineering_report.sysml +12 -0
  110. package/src/compliance/artifacts/memo_artifacts.sysml +13 -0
  111. package/src/compliance/change/memo_change.sysml +17 -0
  112. package/src/compliance/dhf-templates/21cfr820/change-record.md +45 -0
  113. package/src/compliance/dhf-templates/21cfr820/design-input.md +67 -0
  114. package/src/compliance/dhf-templates/21cfr820/design-output.md +80 -0
  115. package/src/compliance/dhf-templates/21cfr820/design-review.md +51 -0
  116. package/src/compliance/dhf-templates/21cfr820/design-validation.md +64 -0
  117. package/src/compliance/dhf-templates/21cfr820/design-verification.md +57 -0
  118. package/src/compliance/dhf-templates/21cfr820/dhf-index.md +111 -0
  119. package/src/compliance/dhf-templates/21cfr820/transfer-plan.md +50 -0
  120. package/src/compliance/dhf-templates/21cfr820/user-needs.md +81 -0
  121. package/src/compliance/dhf-templates/21cfr820/vv-plan.md +89 -0
  122. package/src/compliance/dhf-templates/21cfr820/vv-report.md +85 -0
  123. package/src/compliance/dhf-templates/fda-cybersecurity/incident-response.md +66 -0
  124. package/src/compliance/dhf-templates/fda-cybersecurity/postmarket-surveillance.md +63 -0
  125. package/src/compliance/dhf-templates/fda-cybersecurity/security-arch.md +83 -0
  126. package/src/compliance/dhf-templates/fda-cybersecurity/threat-model.md +100 -0
  127. package/src/compliance/dhf-templates/fda-cybersecurity/vuln-assessment.md +77 -0
  128. package/src/compliance/dhf-templates/iec-62304/change-control.md +40 -0
  129. package/src/compliance/dhf-templates/iec-62304/detailed-design.md +69 -0
  130. package/src/compliance/dhf-templates/iec-62304/integration-test.md +68 -0
  131. package/src/compliance/dhf-templates/iec-62304/sad.md +115 -0
  132. package/src/compliance/dhf-templates/iec-62304/sbom.md +67 -0
  133. package/src/compliance/dhf-templates/iec-62304/sdp.md +108 -0
  134. package/src/compliance/dhf-templates/iec-62304/soup.md +77 -0
  135. package/src/compliance/dhf-templates/iec-62304/srs.md +138 -0
  136. package/src/compliance/dhf-templates/iec-62304/sw-traceability.md +111 -0
  137. package/src/compliance/dhf-templates/iec-62304/system-test.md +67 -0
  138. package/src/compliance/dhf-templates/iec-62366/formative-eval.md +47 -0
  139. package/src/compliance/dhf-templates/iec-62366/summative-eval.md +69 -0
  140. package/src/compliance/dhf-templates/iec-62366/task-analysis.md +57 -0
  141. package/src/compliance/dhf-templates/iec-62366/ue-plan.md +81 -0
  142. package/src/compliance/dhf-templates/iec-62366/ui-spec.md +61 -0
  143. package/src/compliance/dhf-templates/iec-62366/urra.md +74 -0
  144. package/src/compliance/dhf-templates/iec-62366/use-spec.md +61 -0
  145. package/src/compliance/dhf-templates/iso-14971/fmea.md +93 -0
  146. package/src/compliance/dhf-templates/iso-14971/fta.md +70 -0
  147. package/src/compliance/dhf-templates/iso-14971/har.md +165 -0
  148. package/src/compliance/dhf-templates/iso-14971/risk-benefit.md +51 -0
  149. package/src/compliance/dhf-templates/iso-14971/risk-matrix.md +51 -0
  150. package/src/compliance/dhf-templates/iso-14971/rmp.md +169 -0
  151. package/src/compliance/dhf-templates/iso-14971/rmr.md +101 -0
  152. package/src/compliance/dhf-templates/shared/snippets/approval-block.md +16 -0
  153. package/src/compliance/dhf-templates/shared/snippets/document-control-header.md +15 -0
  154. package/src/compliance/dhf-templates/shared/snippets/references-section.md +16 -0
  155. package/src/compliance/dhf-templates/shared/snippets/revision-history-table.md +11 -0
  156. package/src/compliance/document_views/memo_document_views.sysml +7 -0
  157. package/src/compliance/iso14971/risk_management_file.sysml +16 -0
  158. package/src/compliance/postmarket/memo_postmarket.sysml +16 -0
  159. package/src/core/common/memo_common.sysml +50 -0
  160. package/src/core/consistency_rules/consistency_rules.sysml +41 -0
  161. package/src/core/dimensions/dimensions.sysml +37 -0
  162. package/src/core/enumerations/memo_enumerations.sysml +562 -0
  163. package/src/core/methodology_scope/methodology_scope.sysml +46 -0
  164. package/src/core/relationships/memo_relationships.sysml +230 -0
  165. package/src/core/semantics/semantics.sysml +20 -0
  166. package/src/core/stdlib/collections.sysml +6 -0
  167. package/src/core/stdlib/functions.sysml +6 -0
  168. package/src/core/stdlib/scalars.sysml +6 -0
  169. package/src/core/stdlib/time.sysml +6 -0
  170. package/src/medical_device_library.sysml +100 -0
  171. package/src/memo_namespaces.sysml +668 -0
  172. package/src/methodology/LICENSES/MIT.txt +19 -0
  173. package/src/methodology/memo_archetypes.sysml +93 -0
  174. package/src/methodology/memo_core.sysml +53 -0
  175. package/src/methodology/memo_gates.sysml +11 -0
  176. package/src/methodology/memo_patterns.sysml +12 -0
  177. package/src/methodology/memo_profiles.sysml +218 -0
  178. package/src/methodology/memo_rules.sysml +15 -0
  179. package/src/methodology/memo_viewpoints.sysml +5 -0
  180. package/src/methodology/memo_workflow.sysml +14 -0
  181. package/src/rules/closure/closure_rules.sysml +180 -0
  182. package/src/rules/coverage/coverage_rules.sysml +258 -0
  183. package/src/rules/crosslayer/cross_layer_rules.sysml +38 -0
  184. package/src/rules/lifecycle/lifecycle_rules.sysml +41 -0
  185. package/src/rules/quantitative/quantitative_rules.sysml +34 -0
  186. package/src/viewpoints/clinical/clinical_evidence_view.sysml +13 -0
  187. package/src/viewpoints/clinical/clinical_viewpoint.sysml +25 -0
  188. package/src/viewpoints/context/context_viewpoint.sysml +25 -0
  189. package/src/viewpoints/context/system_context_view.sysml +29 -0
  190. package/src/viewpoints/cybersecurity/cybersecurity_assessment_view.sysml +13 -0
  191. package/src/viewpoints/cybersecurity/cybersecurity_viewpoint.sysml +27 -0
  192. package/src/viewpoints/cybersecurity/threat_model_view.sysml +13 -0
  193. package/src/viewpoints/definitions/memo_viewpoint_definitions.sysml +82 -0
  194. package/src/viewpoints/functional/function_allocation_view.sysml +29 -0
  195. package/src/viewpoints/functional/functional_viewpoint.sysml +25 -0
  196. package/src/viewpoints/functional/system_functional_tree_view.sysml +29 -0
  197. package/src/viewpoints/logical/logical_architecture_view.sysml +29 -0
  198. package/src/viewpoints/logical/logical_viewpoint.sysml +25 -0
  199. package/src/viewpoints/operational/operational_viewpoint.sysml +25 -0
  200. package/src/viewpoints/operational/use_case_view.sysml +29 -0
  201. package/src/viewpoints/physical/network_topology_view.sysml +29 -0
  202. package/src/viewpoints/physical/physical_bom_view.sysml +29 -0
  203. package/src/viewpoints/physical/physical_viewpoint.sysml +25 -0
  204. package/src/viewpoints/requirements/requirements_traceability_view.sysml +29 -0
  205. package/src/viewpoints/requirements/requirements_viewpoint.sysml +25 -0
  206. package/src/viewpoints/risk/risk_chain_view.sysml +30 -0
  207. package/src/viewpoints/risk/risk_viewpoint.sysml +25 -0
  208. package/src/viewpoints/software/software_architecture_view.sysml +29 -0
  209. package/src/viewpoints/software/software_viewpoint.sysml +25 -0
  210. package/src/viewpoints/usability/usability_engineering_view.sysml +13 -0
  211. package/src/viewpoints/usability/usability_viewpoint.sysml +25 -0
  212. package/src/viewpoints/verification/verification_coverage_view.sysml +29 -0
  213. package/src/viewpoints/verification/verification_viewpoint.sysml +25 -0
  214. package/template/memo.package.yaml +5 -0
  215. package/template/src/catalog/starter.sysml +12 -0
  216. package/template/src/documents/.gitkeep +1 -0
  217. package/template/src/views/.gitkeep +1 -0
@@ -0,0 +1,12 @@
1
+ package memo_artifacts_requirements_traceability_matrix {
2
+ private import ScalarValues::*;
3
+
4
+ private import memo_artifacts_definitions::*;
5
+ private import memo_core_enumerations::*;
6
+
7
+ part def RequirementsTraceabilityMatrix specializes ArtifactKindDef {
8
+ attribute :>> documentTitle = "Requirements Traceability Matrix";
9
+ attribute :>> regulatoryRef = "IEC 62304:2006 §5.1.1";
10
+ attribute :>> artifactKind = ArtifactKind::traceMatrix;
11
+ }
12
+ }
@@ -0,0 +1,12 @@
1
+ package memo_artifacts_risk_management_plan {
2
+ private import ScalarValues::*;
3
+
4
+ private import memo_artifacts_definitions::*;
5
+ private import memo_core_enumerations::*;
6
+
7
+ part def RiskManagementPlan specializes ArtifactKindDef {
8
+ attribute :>> documentTitle = "Risk Management Plan";
9
+ attribute :>> regulatoryRef = "ISO 14971:2019 §4.4";
10
+ attribute :>> artifactKind = ArtifactKind::plan;
11
+ }
12
+ }
@@ -0,0 +1,12 @@
1
+ package memo_artifacts_software_design_description {
2
+ private import ScalarValues::*;
3
+
4
+ private import memo_artifacts_definitions::*;
5
+ private import memo_core_enumerations::*;
6
+
7
+ part def SoftwareDesignDescription specializes ArtifactKindDef {
8
+ attribute :>> documentTitle = "Software Design Description";
9
+ attribute :>> regulatoryRef = "IEC 62304:2006 §5.4";
10
+ attribute :>> artifactKind = ArtifactKind::softwareDesignDescription;
11
+ }
12
+ }
@@ -0,0 +1,12 @@
1
+ package memo_artifacts_software_development_plan {
2
+ private import ScalarValues::*;
3
+
4
+ private import memo_artifacts_definitions::*;
5
+ private import memo_core_enumerations::*;
6
+
7
+ part def SoftwareDevelopmentPlan specializes ArtifactKindDef {
8
+ attribute :>> documentTitle = "Software Development Plan";
9
+ attribute :>> regulatoryRef = "IEC 62304:2006 §5.1";
10
+ attribute :>> artifactKind = ArtifactKind::softwareDevelopmentPlan;
11
+ }
12
+ }
@@ -0,0 +1,12 @@
1
+ package memo_artifacts_soup_list {
2
+ private import ScalarValues::*;
3
+
4
+ private import memo_artifacts_definitions::*;
5
+ private import memo_core_enumerations::*;
6
+
7
+ part def SoupList specializes ArtifactKindDef {
8
+ attribute :>> documentTitle = "SOUP List (Software of Unknown Provenance)";
9
+ attribute :>> regulatoryRef = "IEC 62304:2006 §8.1.2";
10
+ attribute :>> artifactKind = ArtifactKind::soupList;
11
+ }
12
+ }
@@ -0,0 +1,12 @@
1
+ package memo_artifacts_system_architecture_description {
2
+ private import ScalarValues::*;
3
+
4
+ private import memo_artifacts_definitions::*;
5
+ private import memo_core_enumerations::*;
6
+
7
+ part def SystemArchitectureDescription specializes ArtifactKindDef {
8
+ attribute :>> documentTitle = "System Architecture Description";
9
+ attribute :>> regulatoryRef = "ISO/IEC/IEEE 42010:2022";
10
+ attribute :>> artifactKind = ArtifactKind::architectureDescription;
11
+ }
12
+ }
@@ -0,0 +1,12 @@
1
+ package memo_artifacts_test_protocol {
2
+ private import ScalarValues::*;
3
+
4
+ private import memo_artifacts_definitions::*;
5
+ private import memo_core_enumerations::*;
6
+
7
+ part def TestProtocol specializes ArtifactKindDef {
8
+ attribute :>> documentTitle = "Test Protocol";
9
+ attribute :>> regulatoryRef = "ISO 13485:2016 §7.3.6";
10
+ attribute :>> artifactKind = ArtifactKind::testProtocol;
11
+ }
12
+ }
@@ -0,0 +1,12 @@
1
+ package memo_artifacts_test_report {
2
+ private import ScalarValues::*;
3
+
4
+ private import memo_artifacts_definitions::*;
5
+ private import memo_core_enumerations::*;
6
+
7
+ part def TestReport specializes ArtifactKindDef {
8
+ attribute :>> documentTitle = "Test Report";
9
+ attribute :>> regulatoryRef = "ISO 13485:2016 §7.3.7";
10
+ attribute :>> artifactKind = ArtifactKind::testReport;
11
+ }
12
+ }
@@ -0,0 +1,12 @@
1
+ package memo_artifacts_threat_model_report {
2
+ private import ScalarValues::*;
3
+
4
+ private import memo_artifacts_definitions::*;
5
+ private import memo_core_enumerations::*;
6
+
7
+ part def ThreatModelReport specializes ArtifactKindDef {
8
+ attribute :>> documentTitle = "Threat Model";
9
+ attribute :>> regulatoryRef = "IEC 81001-5-1:2021";
10
+ attribute :>> artifactKind = ArtifactKind::threatModel;
11
+ }
12
+ }
@@ -0,0 +1,12 @@
1
+ package memo_artifacts_usability_engineering_report {
2
+ private import ScalarValues::*;
3
+
4
+ private import memo_artifacts_definitions::*;
5
+ private import memo_core_enumerations::*;
6
+
7
+ part def UsabilityEngineeringReport specializes ArtifactKindDef {
8
+ attribute :>> documentTitle = "Usability Engineering Report";
9
+ attribute :>> regulatoryRef = "IEC 62366-1:2015";
10
+ attribute :>> artifactKind = ArtifactKind::usabilityEngineeringReport;
11
+ }
12
+ }
@@ -0,0 +1,13 @@
1
+ package memo_compliance_artifacts {
2
+ private import ScalarValues::*;
3
+
4
+ private import memo_core_common::*;
5
+ private import memo_core_enumerations::*;
6
+ item def ControlledArtifact specializes TraceableElement {
7
+ attribute version : String;
8
+ attribute lifecycleState : LifecycleStateKind;
9
+ attribute artifactKind : ArtifactKind;
10
+ attribute owner : String;
11
+ attribute approvalStatus : String;
12
+ }
13
+ }
@@ -0,0 +1,17 @@
1
+ package memo_compliance_change {
2
+ private import ScalarValues::*;
3
+
4
+ private import memo_core_common::*;
5
+ private import memo_core_enumerations::*;
6
+ part def ChangeRequest specializes TraceableElement {
7
+ attribute changeType : ChangeTypeKind;
8
+ attribute impactAssessment : String;
9
+ attribute approvalStatus : String;
10
+ attribute affectedBaseline : String;
11
+ }
12
+ part def ConfigurationItem specializes TraceableElement {
13
+ attribute version : String;
14
+ attribute baseline : String;
15
+ attribute controlLevel : String;
16
+ }
17
+ }
@@ -0,0 +1,45 @@
1
+ ---
2
+ id: change-record
3
+ title: Design Change Record
4
+ standard: 21 CFR Part 820
5
+ clauses: ["820.30(i)"]
6
+ required_for: ["FDA_510k", "FDA_PMA"]
7
+ ---
8
+
9
+ {{include:shared/snippets/document-control-header.md}}
10
+
11
+ ---
12
+
13
+ ## 1. Purpose
14
+
15
+ Documents design changes for **{{project.product}}** per 21 CFR 820.30(i). All changes must be evaluated for safety impact and approved before implementation.
16
+
17
+ ---
18
+
19
+ ## 2. Change Log
20
+
21
+ Record each change with its identifier, description, affected items, and verification status:
22
+
23
+ | Change # | Date | Description | Reason | Impact Assessment | Approved By |
24
+ | --- | --- | --- | --- | --- | --- |
25
+ | CHG-001 | | | | | |
26
+
27
+ ---
28
+
29
+ ## 3. Substantial Equivalence Assessment
30
+
31
+ Assess substantial equivalence to the predicate device, comparing intended use and technological characteristics.
32
+
33
+ _[TODO: For FDA-cleared devices, assess whether any changes affect substantial equivalence]_
34
+
35
+ ---
36
+
37
+ ## 4. Risk Assessment for Changes
38
+
39
+ Assess the risk impact of each change per ISO 14971, including effects on existing risk controls.
40
+
41
+ _[TODO: Document risk management activity triggered by each significant change]_
42
+
43
+ ---
44
+
45
+ {{include:shared/snippets/revision-history-table.md}}
@@ -0,0 +1,67 @@
1
+ ---
2
+ id: design-input
3
+ title: Design Input Plan
4
+ standard: 21 CFR Part 820
5
+ clauses: ["820.30(c)"]
6
+ required_for: ["FDA_510k", "FDA_PMA"]
7
+ ---
8
+
9
+ {{include:shared/snippets/document-control-header.md}}
10
+
11
+ {{toc}}
12
+
13
+ ---
14
+
15
+ ## 1. Purpose
16
+
17
+ Defines design inputs for **{{project.product}}** per 21 CFR 820.30(c). Design inputs are the physical and performance requirements to which the device design must conform.
18
+
19
+ ---
20
+
21
+ ## 2. Design Input Requirements
22
+
23
+ ### 2.1 Performance Requirements
24
+
25
+ ```memo-query
26
+ kind: Requirement
27
+ display: table
28
+ columns: name, layer, doc
29
+ sort: name
30
+ empty: "No system requirements defined."
31
+ ```
32
+
33
+ ### 2.2 Design Inputs from User Needs
34
+
35
+ ```memo-query
36
+ kind: [DesignInput, StakeholderNeed]
37
+ display: table
38
+ columns: name, layer, doc
39
+ sort: name
40
+ empty: "No design inputs defined. Add DesignInput elements."
41
+ ```
42
+
43
+ ---
44
+
45
+ ## 3. Regulatory and Standards Requirements
46
+
47
+ Complete the table below for **{{project.product}}**:
48
+
49
+ | Standard | Requirement | Input Reference |
50
+ | --- | --- | --- |
51
+ | 21 CFR 820.30 | Design controls | |
52
+ | ISO 14971 | Risk management requirements | |
53
+ | IEC 62304 | Software development | |
54
+
55
+ ---
56
+
57
+ ## 4. Design Input Review
58
+
59
+ Record the review of design inputs for completeness, unambiguity, and absence of conflicts per 21 CFR 820.30(c).
60
+
61
+ _[TODO: Document the design input review process and sign-off]_
62
+
63
+ ---
64
+
65
+ {{include:shared/snippets/revision-history-table.md}}
66
+
67
+ {{include:shared/snippets/approval-block.md}}
@@ -0,0 +1,80 @@
1
+ ---
2
+ id: design-output
3
+ title: Design Output Plan
4
+ standard: 21 CFR Part 820
5
+ clauses: ["820.30(d)"]
6
+ required_for: ["FDA_510k", "FDA_PMA"]
7
+ ---
8
+
9
+ {{include:shared/snippets/document-control-header.md}}
10
+
11
+ {{toc}}
12
+
13
+ ---
14
+
15
+ ## 1. Purpose
16
+
17
+ Defines design outputs for **{{project.product}}** per 21 CFR 820.30(d). Design outputs are the results of the design process, forming the basis for manufacturing.
18
+
19
+ ---
20
+
21
+ ## 2. Design Outputs
22
+
23
+ ### 2.1 Hardware Design Outputs
24
+
25
+ ```memo-query
26
+ kind: [Component, Subsystem, DesignOutput]
27
+ where: layer == "physical"
28
+ display: table
29
+ columns: name, kind, layer, doc
30
+ sort: name
31
+ empty: "No hardware design outputs defined."
32
+ ```
33
+
34
+ ### 2.2 Software Design Outputs
35
+
36
+ ```memo-query
37
+ kind: [SoftwareItem, SoftwareUnit, DesignOutput]
38
+ where: layer == "software"
39
+ display: table
40
+ columns: name, kind, layer, doc
41
+ sort: name
42
+ empty: "No software design outputs defined."
43
+ ```
44
+
45
+ ### 2.3 All Design Outputs
46
+
47
+ ```memo-query
48
+ kind: DesignOutput
49
+ display: table
50
+ columns: name, layer, doc
51
+ sort: name
52
+ empty: "No DesignOutput elements defined. Add DesignOutput elements."
53
+ ```
54
+
55
+ ---
56
+
57
+ ## 3. Design Output → Input Traceability
58
+
59
+ Traceability from design outputs back to design inputs, generated live from the model:
60
+
61
+ _[TODO: Demonstrate that each design output meets a design input requirement]_
62
+
63
+ ---
64
+
65
+ ## 4. Essential Design Output Documents
66
+
67
+ List the documents constituting the essential design outputs for the DHF.
68
+
69
+ | Document | Description | Status |
70
+ | --- | --- | --- |
71
+ | Engineering drawings | Physical design specifications | |
72
+ | Software architecture | Software design specifications | |
73
+ | Manufacturing specs | Production procedures | |
74
+ | Labeling | Device labels and IFU | |
75
+
76
+ ---
77
+
78
+ {{include:shared/snippets/revision-history-table.md}}
79
+
80
+ {{include:shared/snippets/approval-block.md}}
@@ -0,0 +1,51 @@
1
+ ---
2
+ id: design-review
3
+ title: Design Review Record
4
+ standard: 21 CFR Part 820
5
+ clauses: ["820.30(e)"]
6
+ required_for: ["FDA_510k", "FDA_PMA"]
7
+ ---
8
+
9
+ {{include:shared/snippets/document-control-header.md}}
10
+
11
+ ---
12
+
13
+ ## 1. Purpose
14
+
15
+ Documents formal design reviews for **{{project.product}}** per 21 CFR 820.30(e).
16
+
17
+ ---
18
+
19
+ ## 2. Design Review Log
20
+
21
+ Record of formal design reviews with dates, participants, and outcomes:
22
+
23
+ | Review | Date | Stage | Attendees | Outcome | Actions |
24
+ | --- | --- | --- | --- | --- | --- |
25
+ | DR-001 | | Preliminary Design | | | |
26
+ | DR-002 | | Critical Design | | | |
27
+ | DR-003 | | Final Design | | | |
28
+
29
+ ---
30
+
31
+ ## 3. Open Action Items
32
+
33
+ Action items raised during review, their owners, and due dates:
34
+
35
+ _[TODO: Track all open action items from design reviews]_
36
+
37
+ ---
38
+
39
+ ## 4. Design Status at Review
40
+
41
+ Snapshot of the design state at the time of review, computed from the model:
42
+
43
+ ```memo-query
44
+ kind: [Requirement, Requirement, DesignInput, DesignOutput]
45
+ display: count
46
+ label: Total design elements at last review
47
+ ```
48
+
49
+ ---
50
+
51
+ {{include:shared/snippets/revision-history-table.md}}
@@ -0,0 +1,64 @@
1
+ ---
2
+ id: design-validation
3
+ title: Design Validation Records
4
+ standard: 21 CFR Part 820
5
+ clauses: ["820.30(g)"]
6
+ required_for: ["FDA_510k", "FDA_PMA"]
7
+ ---
8
+
9
+ {{include:shared/snippets/document-control-header.md}}
10
+
11
+ ---
12
+
13
+ ## 1. Purpose
14
+
15
+ Documents design validation confirming the device meets user needs and intended use for **{{project.product}}** per 21 CFR 820.30(g).
16
+
17
+ ---
18
+
19
+ ## 2. Validation Plan Reference
20
+
21
+ Reference the validation plan governing these activities and note any deviations from it.
22
+
23
+ _[TODO: Reference V&V Plan]_
24
+
25
+ ---
26
+
27
+ ## 3. Clinical/Bench Validation
28
+
29
+ Describe clinical or bench validation activities demonstrating conformity with user needs under actual or simulated use conditions.
30
+
31
+ ```memo-query
32
+ kind: ValidationActivity
33
+ display: table
34
+ columns: name, layer, doc
35
+ sort: name
36
+ empty: "No validation activities defined."
37
+ ```
38
+
39
+ ---
40
+
41
+ ## 4. User Need Coverage
42
+
43
+ Coverage of user needs by validation activities, computed live from the model:
44
+
45
+ ```memo-query
46
+ kind: [StakeholderNeed, Requirement]
47
+ display: table
48
+ columns: name, layer, doc
49
+ empty: "No user needs defined."
50
+ ```
51
+
52
+ ---
53
+
54
+ ## 5. Conclusion
55
+
56
+ Summarize the outcome and state the overall conclusion, including any conditions or follow-up actions.
57
+
58
+ _[TODO: State validation conclusion — device meets intended use for intended users]_
59
+
60
+ ---
61
+
62
+ {{include:shared/snippets/revision-history-table.md}}
63
+
64
+ {{include:shared/snippets/approval-block.md}}
@@ -0,0 +1,57 @@
1
+ ---
2
+ id: design-verification
3
+ title: Design Verification Records
4
+ standard: 21 CFR Part 820
5
+ clauses: ["820.30(f)"]
6
+ required_for: ["FDA_510k", "FDA_PMA"]
7
+ ---
8
+
9
+ {{include:shared/snippets/document-control-header.md}}
10
+
11
+ ---
12
+
13
+ ## 1. Purpose
14
+
15
+ Documents design verification that design outputs meet design inputs for **{{project.product}}** per 21 CFR 820.30(f).
16
+
17
+ ---
18
+
19
+ ## 2. Verification Matrix
20
+
21
+ The verification traceability below is generated live from the model — every requirement should be covered by at least one verification activity:
22
+
23
+ ```memo-query
24
+ kind: VerificationActivity
25
+ display: table
26
+ columns: name, layer, doc
27
+ sort: name
28
+ empty: "No verification activities defined."
29
+ ```
30
+
31
+ ---
32
+
33
+ ## 3. Test Results
34
+
35
+ Test executions and their outcomes are summarized below from the model:
36
+
37
+ ```memo-query
38
+ kind: TestCase
39
+ display: table
40
+ columns: name, layer, doc
41
+ sort: name
42
+ empty: "No test cases defined."
43
+ ```
44
+
45
+ ---
46
+
47
+ ## 4. Design Input Coverage
48
+
49
+ Coverage of design inputs by verification activities, computed live from the model:
50
+
51
+ _[TODO: Demonstrate that all design inputs are verified by at least one test]_
52
+
53
+ ---
54
+
55
+ {{include:shared/snippets/revision-history-table.md}}
56
+
57
+ {{include:shared/snippets/approval-block.md}}
@@ -0,0 +1,111 @@
1
+ ---
2
+ id: dhf-index
3
+ title: Design History File Index
4
+ standard: 21 CFR Part 820
5
+ clauses: ["820.30(j)", "ISO 13485:2016 §4.2.4"]
6
+ required_for: ["FDA_510k", "FDA_PMA", "CE", "MDR"]
7
+ ---
8
+
9
+ {{include:shared/snippets/document-control-header.md}}
10
+
11
+ {{toc}}
12
+
13
+ ---
14
+
15
+ ## 1. Purpose
16
+
17
+ This Design History File (DHF) Index serves as the master index for all design and development records for **{{project.product}}** per 21 CFR 820.30(j).
18
+
19
+ ---
20
+
21
+ ## 2. Device Summary
22
+
23
+ Key characteristics of **{{project.product}}**, drawn from the model:
24
+
25
+ | Field | Value |
26
+ | --- | --- |
27
+ | Device Name | {{project.product}} |
28
+ | Company | {{project.company}} |
29
+ | Device Type | {{project.device_type}} |
30
+ | Development Phase | {{project.phase}} |
31
+ | Version | {{project.version}} |
32
+
33
+ ---
34
+
35
+ ## 3. DHF Documents
36
+
37
+ ### Risk Management
38
+
39
+ | Document | Standard | Status |
40
+ | --- | --- | --- |
41
+ | Risk Management Plan | ISO 14971:2019 §4.4 | |
42
+ | Hazard Analysis Report | ISO 14971:2019 §5-7 | |
43
+ | FMEA | IEC 60812:2018 | |
44
+ | Risk Management Report | ISO 14971:2019 §9 | |
45
+
46
+ ### Design Controls
47
+
48
+ | Document | Standard | Status |
49
+ | --- | --- | --- |
50
+ | User Needs | 21 CFR 820.30(c) | |
51
+ | Design Input Plan | 21 CFR 820.30(c) | |
52
+ | Design Output Plan | 21 CFR 820.30(d) | |
53
+ | V&V Plan | 21 CFR 820.30(f-g) | |
54
+ | V&V Report | 21 CFR 820.30(f-g) | |
55
+ | Design Transfer Plan | 21 CFR 820.30(h) | |
56
+
57
+ ### Software Documentation
58
+
59
+ | Document | Standard | Status |
60
+ | --- | --- | --- |
61
+ | Software Development Plan | IEC 62304 §5.1 | |
62
+ | Software Requirements Specification | IEC 62304 §5.2 | |
63
+ | Software Architecture Description | IEC 62304 §5.3 | |
64
+ | SOUP List | IEC 62304 §8.1.2 | |
65
+ | Software Traceability Matrix | IEC 62304 §5.7.5 | |
66
+
67
+ ### Usability Engineering
68
+
69
+ | Document | Standard | Status |
70
+ | --- | --- | --- |
71
+ | Usability Engineering Plan | IEC 62366-1 §4 | |
72
+ | Use-Related Risk Analysis | IEC 62366-1 §5 | |
73
+ | Summative Evaluation Report | IEC 62366-1 §5.9 | |
74
+
75
+ ---
76
+
77
+ ## 4. Model Summary
78
+
79
+ Summary statistics of the system model at the time this document was generated:
80
+
81
+ ```memo-query
82
+ kind: [Requirement, Requirement]
83
+ display: count
84
+ label: Total requirements
85
+ ```
86
+
87
+ ```memo-query
88
+ kind: Hazard
89
+ display: count
90
+ label: Total hazards
91
+ ```
92
+
93
+ ```memo-query
94
+ kind: [TestCase, VerificationActivity]
95
+ display: count
96
+ label: Total test cases
97
+ ```
98
+
99
+ ---
100
+
101
+ ## 5. All Model Elements
102
+
103
+ {{glossary}}
104
+
105
+ ---
106
+
107
+ {{include:shared/snippets/revision-history-table.md}}
108
+
109
+ {{include:shared/snippets/approval-block.md}}
110
+
111
+ {{include:shared/snippets/references-section.md}}