| Literature DB >> 34247454 |
Rex A Cardan1, Elizabeth L Covington1, Richard A Popple1.
Abstract
PURPOSE: The task of software development has become an increasing part of the medical physicist's role. Many physicists who are untrained in the best practices of software development have begun creating scripts for clinical use. There is an increasing need for guidance for both developers and medical physicists to code wisely in the clinic.Entities:
Keywords: risk analysis; scripting; software
Mesh:
Year: 2021 PMID: 34247454 PMCID: PMC8364260 DOI: 10.1002/acm2.13348
Source DB: PubMed Journal: J Appl Clin Med Phys ISSN: 1526-9914 Impact factor: 2.102
Descriptions of the P, I, and C values used to assess the risk of custom clinical software
| Rank | Population (P) | Intent (I) | Complexity (C) | |||
|---|---|---|---|---|---|---|
| Qualitative | Frequency (%) | Qualitative | Class | Qualitative | Quantitative | |
| 1–2 | Software used for a specific patient or rare procedure | <1% | No direct clinical impact | I A | Simple | Readable, and <20 lines per unit, and <20 units |
| 3–5 | Software used in special procedures | 10% | Only impacts clinical efficiency | I B | Somewhat complex | Moderately difficult to read, or 20–50 lines per unit, or 20–50 units |
| 6–8 | Software used in routine clinical workflows for every patient | 100% | Software used for direct clinical decision making but does not write to a clinical database | II A | More complex | Difficult to read, or 50–100 lines per unit, or 50–100 units |
| 9–10 | Software shared across institutions | Multi‐institutional | Software used for direct clinical decision making and writes to a clinical database | II B | Complex | Indecipherable, or >100 lines per unit, or >100 units |
Classification system for the intent of clinical software
| Classification | Description | Examples |
|---|---|---|
| I A (Minimal risk) | A codebase that does not have a direct impact on clinical efficiency or clinical outcome (research) | Plan automation in research database; DVH Mining; Post‐treatment plan analysis |
| I B (Minimal to moderate risk) | A codebase that could influence clinical efficiency but not directly affect the clinical outcome if code does not perform as anticipated or if the design is flawed (efficiency tools) | DICOM automation; Export tools; Post‐treatment Reporting |
| II A (Moderate Risk) | A codebase which could affect the clinical outcome if code does not perform as anticipated or if the design is flawed but does not write to a clinical database (read clinical tools) | Plan quality check tools; Pre‐treatment reporting/instructions |
| II B (Moderate to High Risk) | A codebase which could affect the clinical outcome if code does not perform as anticipated or if the design is flawed and also writes to a clinical database (write clinical tools) | Plan automation components; QA automation components; Pre‐treatment data importing tools |
Tiers of complexity for spreadsheets
| Rank | # Calculated cells | # Sheets with data input | Macros |
|---|---|---|---|
| 1–2 | <10 | 1 | No |
| 3–5 | <25 | 1 | No |
| 6–8 | >25 | 2+ | No |
| 9–10 | ‐ | ‐ | Yes |
FIGURE 1Decision tree for software classification
Role and responsibilities for the development of in‐house software
| Role | Responsibilities |
|---|---|
| Developer | Source control |
| Unit testing | |
| Integration testing | |
| Code documentation | |
| Physicist | Risk assessment |
| End‐user testing | |
| Commissioning | |
| Policies and procedures | |
| User | End‐user testing |
| Product improvement requests | |
| Bug reporting |