Clinical Software Design Flashcards

1
Q

What is software quality assurance?

A

The function of software quality that assured that the standards, processes and procedures are appropriate for the project and are correctly implemented.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is software quality control?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are the software quality attributes?

A
Accuracy
Availability
Compatibility
Functionality
Manageability
Performance
Security
Supportability
Usability
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is accuracy?

A

The ability of the system to produce accurate (correct) results.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is availability?

A

The proportion of time that the system is functional and working.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is compatibility?

A

The ability of the system to work with, for example, different input devices.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is functionality?

A

What the system is actually supposed to do.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is manageability?

A

The ease with which system administrators can manage the system, through tuning, debugging and monitoring.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is performance?

A

The responsiveness of a system to execute a required action with a set time frame.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is security?

A

The ability of a system to resist malicious interference.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is supportability?

A

The ability of the system to provide information to assist in rectifying a performance failure.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is usability?

A

How well the system meets the users’ requirements by being intuitive and accessible.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What ar ethe important parts to configuration management and change control?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What documentation is required for software?

A

User documentation
Technical documentation
Safety documentation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is the importance of version control?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is the Medical Device Directive?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What is an accessory according to the MDD?

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Software as a medical device

A

“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.”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What affects the classification of a medical device?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

What is the difference between the MDD and MDR?

A

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).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

What is pre-market approval?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

What are the three main areas where interaction with MHRA/FDA is required?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

What is CE marking?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What are the goals of 80001-1?

A

Patient safety
Effectiveness
Data and system security
Interoperability

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

What is Boot software?

A

The stuff that gets the PC started

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

What is an operating system (OS)?

A

The stuff that does the basic, but important things.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

What are applications?

A

The stuff that does what you actually wanted a computer for in the first place.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

What is an interrupt?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

What is an event?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

What is a message pump?

A

A programming construct that waits for and dispatches events and messages in a program.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

What are the main stages to a software life cycle model?

A
Gathering and analysing user requirements
Software design
Coding
Testing
Installation and maintenance
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

What does the gathering and analysing user requirements stage consist of?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

What does the software design stage consist of?

A

Architectural design
Detailed design
Data Flow Diagrams (DFD)
Entity-Relation Diagrams (ERD)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
34
Q

What is procedural software design?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
35
Q

What is object-oriented software design?

A

Software is described in terms of objects and their interactions with each other. This enables a component-based approach to be followed enabling modular deployment and improving reuse. In developing object oriented software the design can be greatly assisted through the use of Unified Modelling Language (UML) tools.

36
Q

What is data-oriented software design?

A

In this case, the input and output data structures are defined and functions and procedures are simply used as a tool to enable data transformation.

37
Q

What is important in the coding stage?

A

A good programmer rarely blames the platform for problems with the software.
Software coding should adhere to established standards and be well documented.
The basic principles of programming are simplicity, clarity and generality.

38
Q

What is important in testing?

A

It always takes longer.
Software will fail.
Successful tests do not affect the software’s quality.
Testing will not identify all defects in a software product.
Testing will not identify all defects in a software product.

39
Q

What are the 3 main levels of testing?

A

Unit testing
Integration testing
System testing

40
Q

What is unit testing?

A

Where individual modules are tested against set criteria.

41
Q

What is integration testing?

A

Where the relationships between modules are tested.

42
Q

What is system testing?

A

Where the workings of the software as a whole are tested.

43
Q

What is installation and maintenance?

A

Software maintenance is defined in the IEEE Standard for Software Maintenance as the modification of a software product after delivery to correct faults, to improve performance or other attributes, or to adapt the product to a modified environment. It lasts for the lifespan of the software and requires careful logging and tracking of change requests as per the guidelines for change management set out at the end of the requirements phase.

44
Q

What is a safety case?

A

A clinical safety case report is a version controlled document, produced to support a specific product/ system/ activity/ project phase/ gate. The report presents a summary of the key components of the Safety Case relating to the safety of the product up to this point of the life cycle with references to supporting information.
The safety case is a structured argument, supported by a body of evidence, intended to provide a compelling, comprehensible and valid case that a system or part of a system is acceptably safe in the given context.
This report is a means of communication with all stakeholders including supplier, customer, end users, top management and regulator, as appropriate.

45
Q

What is a hazard log?

A

It is the single source of record for all risk management activities. Where necessary it cross-references other documents to demonstrate how hazards have been resolved.
It is the primary mechanism for providing objective evidence of the risk management process and assurance of the effective management of hazards and accidents.
It is continuously updated throughout the project life cycle (including decommissioning and disposal).

46
Q

What does PRINCE 2 attempt to ensure?

A

An organised and controlled start i.e. organise and plan things properly before leaping in.
An organised and controlled middle i.e. when the project has started, make sure it continues to be organised and controlled.
An organised and controlled end i.e. when you’ve got what you want and the project has finished, tidy up the loose ends.
Project Board (PB) and a Project Team (PT).

47
Q

What are the restrictions on the use of patient data?

A

Data must only be used for the purpose for which it was collected.
Only adequate and relevant data may be collected.
Data must be kept accurate.
Data cannot be kept forever.
The data subjects (patients) have rights concerning this data.
The data must be technologically secured against unauthorised access and accidental damage.
The data may not be transferred outside of the EEA without appropriate safeguards.

48
Q

What is the Waterfall methodology?

A

Waterfall Model methodology which is also known as Liner Sequential Life Cycle Model. Waterfall Model followed in the sequential order, and so project development team only moves to next phase of development or testing if the previous step completed successfully.

49
Q

What is the Agile methodology?

A

Agile methodology is a practice that helps continuous iteration of development and testing in the software development process. In this model, development and testing activities are concurrent, unlike the Waterfall model. This process allows more communication between customers, developers, managers, and testers.

50
Q

What are the advantages of the Waterfall model?

A

It is one the easiest model to manage. Because of its nature, each phase has specific deliverables and a review process.
It works well for smaller size projects where requirements are easily understandable.
Faster delivery of the project
Process and results are well documented.
Easily adaptable method for shifting teams
This project management methodology is beneficial to manage dependencies.

51
Q

What are the advantages of the Agile model?

A

It is focused client process. So, it makes sure that the client is continuously involved during every stage.
Agile teams are extremely motivated and self-organized so it likely to provide a better result from the development projects.
Agile software development method assures that quality of the development is maintained
The process is completely based on the incremental progress. Therefore, the client and team know exactly what is complete and what is not. This reduces risk in the development process.

52
Q

What are the limitations of the Waterfall model?

A

It is not an ideal model for a large size project
If the requirement is not clear at the beginning, it is a less effective method.
Very difficult to move back to makes changes in the previous phases.
The testing process starts once development is over. Hence, it has high chances of bugs to be found later in development where they are expensive to fix.

53
Q

What are the limitations of the Agile model?

A

It is not useful method for small development projects.
It requires an expert to take important decisions in the meeting.
Cost of implementing an agile method is little more compared to other development methodologies.
The project can easily go off track if the project manager is not clear what outcome he/she wants.

54
Q

Key differences between the Waterfall and Agile model.

A

Waterfall model is ideal for projects which have defined requirements, and no changes are expected. On the other hand, Agile is best suited where there is a higher chance of frequent requirement changes.
The waterfall is easy to manage, sequential, and rigid method.
Agile is very flexible and it possible to make changes in any phase.
In Agile process, requirements can change frequently. However, in a waterfall model, it is defined only once by the business analyst.
In Agile Description of project, details can be altered anytime during the SDLC process which is not possible in Waterfall method.

55
Q

What is a relational database?

A

A data structure through which data is stored in tables that are related to one another in some way. The way the tables are related is described through a relationship (see later definitions).

56
Q

What is data in a database?

A

Values stored in a database.

57
Q

What is an entity in a database?

A

A person, place, thing, or event about which we want to record information; an object we’re interested in.

58
Q

What is a field in a database?

A

The smallest structure in a relational database, used to store the individual pieces of data about the object; stores a single fact about an object that we’re interested in; represents an attribute.

59
Q

What is a record in a database?

A

A single “row” in a table; represents the collection of information for a single occurrence of the entity that the table represents.

60
Q

What is a table in a database?

A

The chief structure in a relational database, composed of fields and records, whose order is unimportant. A single table collects together all of the information we are tracking for a single entity; represents an object or an entity.

61
Q

What are the goals of table design?

A

Understand your data and why you’re tracking it
Eliminate duplication of data
Eliminate redundant data
Eliminate meaningless data or data we don’t care about
Promote accuracy of data
Promote consistency of data
Make sure we can retrieve the information we need from the database
Support the business functions that use the database
Build a database that lends itself to future growth

62
Q

What is a key?

A

A field in the database (or an attribute in an ERD) that is used to uniquely identify records and establish relationships between tables or entities; used for the retrieval of data in the table.

63
Q

What is a primary key?

A

Uniquely identifies each record in a table, the key is part of the table for which it operates. (Note that this is normally a single field but may be a combination of fields – a composite key).

64
Q

What is a foreign key?

A

A key from another table that is used to define a relationship to another record in another table. It has the same name and properties as the primary key from which it is copied.

65
Q

What are the rules for foreign keys?

A

1-1: Primary key from the main table is inserted into the second table
1-Many: Primary key from the “1” table gets inserted into the “many” table
Many-many: Primary key from each side gets placed into a third intermediate linking table that (usually) includes nothing but both keys.

66
Q

What is a non-key?

A

A “regular” field; describes a characteristic of the table’s subject.

67
Q

What is a relationship?

A

Establishes a connection or correspondence or link between a pair of tables in a database, or between a pair of entities in an ERD.

68
Q

What is a one-to-one relationship?

A

A single record in table A is related to only one record in table B, and vice versa.

69
Q

What is a one-to-many relationship?

A

A single record in table A can be related to one or more records in table B, but a single record in table B can be related to only one record in table A.

70
Q

What is a many-to-many relationship?

A

A single record in table A can be related to one or more records in table B, and vice versa. There are problems with many-to-many relationships in that one of the tables will contain a large amount of redundant data; both tables will contain some duplicate data; it will be difficult to add/update/delete records because of the duplication of fields between tables.

71
Q

What are the requirements for first normal form?

A

Duplicate columns within the same table are eliminated.

Each group of related data is in its own table with a primary key to identify each row.

72
Q

What are the requirements for second normal form?

A

The data structure is in first normal form.
Subsets applying to multiple rows of a table are in their own table.
Relationships are maintained by creating foreign keys.

73
Q

What are the requirements for third normal form?

A

The data structure is in second normal form.

Any columns not dependent upon the primary key are removed from the table.

74
Q

What is data mining?

A

The computing process of discovering patterns in large data sets involving methods at the intersection of machine learning, statistics, and database systems

75
Q

What is pre-processing?

A

The action of analysing the multivariate data sets, cleaning the target set by removing (for example) the observations containing noise and those with missing data.

76
Q

What is anomaly detection?

A

It focuses on discovering the most significant changes in the data from previously measured or normative values.

77
Q

What is association rule learning?

A

It consists of finding a model that describes significant dependencies between variables.

78
Q

What is clustering?

A

A common descriptive task where one seeks to identify a finite set of categories or clusters to describe the data.

79
Q

What is classification?

A

A learning a function that maps (classifies) a data item into one of several predefined classes.

80
Q

What is regression?

A

A learning a function that maps a data item to a real-valued prediction variable.

81
Q

What is summarisation?

A

It involves methods for finding a compact description for a subset of data.

82
Q

What is principle component analysis?

A

A method of extracting information from data that keeps only what is most important and finds the underlying trends, using matrix algebra.

83
Q

What are the reasons for the adoption of NoSQL?

A
Unstructured data doesn’t fit a schema
Flexibility
Scalability
Speed
Rapid development
Less dependence on DB admin skills
84
Q

What are the benefits of document storage?

A
Quick to set up
High availability
Scalability
Flexibility
Fast application development not held up by requirements to construct DB schema
85
Q

What are the disadvantages of document storage?

A

Relatively new
Complicated querying is harder – no joins
Business Information and analytics tools not as mature
Risk of loss of consistency
Transactions not ACID (Atomicity (all or nothing), Consistency (maintain validity), Isolation (each sequence of transaction works independently), Durability (change is persistent)) compliant - no atomicity (all or nothing) beyond single document level

86
Q

What are the uses of document storage in healthcare?

A

Patient reports can be relatively unstructured
Often requirements for new measurements
Symptoms or patient history often free text
May want to compare reports from different systems in different formats but the data itself is often comparable
Big data can be very hard to model usefully in traditional RDBMSs.