Clinical Software Design Flashcards
What is software quality assurance?
The function of software quality that assured that the standards, processes and procedures are appropriate for the project and are correctly implemented.
What is software quality control?
The function or software quality that checks that the project follows its standards, processes and procedures, and that the project produces the required internal and external (deliverable) products.
What are the software quality attributes?
Accuracy Availability Compatibility Functionality Manageability Performance Security Supportability Usability
What is accuracy?
The ability of the system to produce accurate (correct) results.
What is availability?
The proportion of time that the system is functional and working.
What is compatibility?
The ability of the system to work with, for example, different input devices.
What is functionality?
What the system is actually supposed to do.
What is manageability?
The ease with which system administrators can manage the system, through tuning, debugging and monitoring.
What is performance?
The responsiveness of a system to execute a required action with a set time frame.
What is security?
The ability of a system to resist malicious interference.
What is supportability?
The ability of the system to provide information to assist in rectifying a performance failure.
What is usability?
How well the system meets the users’ requirements by being intuitive and accessible.
What ar ethe important parts to configuration management and change control?
Change control approval points - authority to proceed with change.
Full release approval.
Regression tests.
System, integration and acceptance tests.
Reviews and audits.
Configuration and change management.
Quality plans and project plans.
What documentation is required for software?
User documentation
Technical documentation
Safety documentation
What is the importance of version control?
Ensuring developers are all working on the latest version of the code.
Ensuring users are all executing the latest version of the code.
Enabling a common repository for developers to allow multi-programmer projects to be successfully developed.
What is the Medical Device Directive?
Any instrument, apparatus, appliance, material or other article, whether used alone or in combination, including the software necessary for its proper application intended by the manufacturer to be used for human beings for the purpose of:
- diagnosis, prevention, monitoring, treatment or alleviation of disease,
- diagnosis, monitoring, treatment, alleviation of or compensation for an injury or handicap,
- investigation, replacement or modification of the anatomy or of a physiological process,
- control of conception,
and which does not achieve its principal intended action in or on the human body by pharmacological, immunological or metabolic means, but which may be assisted in its function by such means.
What is an accessory according to the MDD?
An article which whilst not being a device is intended specifically by its manufacturer to be used together with a device to enable it to be used in accordance with the use of the device intended by the manufacturer of the device
Software as a medical device
“It is necessary to clarify that software in its own right, when specifically intended by the manufacturer to be used for one or more of the medical purposes set out in the definition of a medical device, is a medical device. Software for general purposes when used in a healthcare setting is not a medical device.”
What affects the classification of a medical device?
How long the device is intended to be in continuous use
Whether or not the device is invasive or surgically invasive,
Whether the device is implantable or active
Whether or not the device contains a substance, which in its own right is considered to be a medicinal substance and has action ancillary to that of the device.
What is the difference between the MDD and MDR?
The MDR has 175 pages and is vastly more “legal” than the MDD, which took more of a “good will” approach. It will thus result in far more work for the regulators – NBs are already indicating that they will not be able to process all this extra work.
The MDD focussed on the path to CE marking, whereas the MDR promotes a life-cycle approach (in this it is similar to the US’ Food and Drug Administration (FDA) and many international standards).
What is pre-market approval?
Based on a determination by the FDA that the PMA contains sufficient valid scientific evidence providing reasonable assurance that the device is safe and effective for its intended use or uses.
What are the three main areas where interaction with MHRA/FDA is required?
Ensuring that devices deployed have the correct accreditation/approval.
Determining when in-house developments require accreditation/approval (and seeking it when it is required).
Receiving and disseminating alerts and recalls.
What is CE marking?
CE Marking on a product is a manufacturer’s declaration that the product complies with the essential requirements of the relevant European health, safety and environmental protection legislation.
What are the goals of 80001-1?
Patient safety
Effectiveness
Data and system security
Interoperability
What is Boot software?
The stuff that gets the PC started
What is an operating system (OS)?
The stuff that does the basic, but important things.
What are applications?
The stuff that does what you actually wanted a computer for in the first place.
What is an interrupt?
Something that takes place (key press, mouse click, etc.) that interrupts whatever the OS is doing and sets it working on the new task straight away.
What is an event?
Something that places a new occurrence (key press, mouse click, input from I/O board) into a queue for processing when the current task in which the OS is engaged is complete.
What is a message pump?
A programming construct that waits for and dispatches events and messages in a program.
What are the main stages to a software life cycle model?
Gathering and analysing user requirements Software design Coding Testing Installation and maintenance
What does the gathering and analysing user requirements stage consist of?
Observation of existing workflows, pathways and processes and any related documentation.
Interviews with potential users – individually or in groups.
Prototyping the concept, not necessarily as software but as mock screenshots or storyboards.
Use cases from different perspectives – user (at different levels), programmer, and maintainer.
What does the software design stage consist of?
Architectural design
Detailed design
Data Flow Diagrams (DFD)
Entity-Relation Diagrams (ERD)
What is procedural software design?
Software is broken down into components based on functionality following a top-down approach and the process continues with each component until sufficient detail has been achieved.