Module information

Module details

Computing for Clinical Scientists
Module code

Aim of this module

Modern healthcare generates large amounts of data – data that must be managed and shared effectively. In many cases this will involve staff working with database systems and interacting with internal or external computer scientists/software engineers to commission appropriate data management tools. In this module trainees will be introduced to the fundamental aspects of computer science needed to support data management. They will also be introduced to the principles of modern software engineering processes such that they can better engage with and support software development within the NHS. This module will ensure that the trainee can configure novel information and communications technology (ICT) hardware and software solutions safely within the clinical environment, and understands the impact of this work on the patient, including patient safety and the healthcare services supported by a range of computer systems.

Work-based content


# Learning outcome Competency Action
# 1 Learning outcome 1 Competency

Write a project plan using project management methodology.

Action View
# 2 Learning outcome 1 Competency

Interview users and translate user requirements into a functional specification.

Action View
# 3 Learning outcome 1 Competency

Select appropriate hardware and software.

Action View
# 4 Learning outcome 2 Competency

Express system requirements in UML.

Action View
# 5 Learning outcome 3 Competency

Extract a data structure into third normal form using a formalised process.

Action View
# 6 Learning outcome 3 Competency

Ensure the design is fit for purpose.

Action View
# 7 Learning outcome 4 Competency

Link an SQL engine to a web server, ensuring compliance with the security requirements for a multi-user system.

Action View
# 8 Learning outcome 5 Competency

Create an SQL statement using either the SQL query builder or the SQL query wizard.

Action View
# 9 Learning outcome 6 Competency

Complete the formal documentation at the end of the project.

Action View


You must complete:

  • 1 case-based discussion(s)
  • 1 of the following DOPS/ OCEs:
Link an SQL engine to a web server, documenting and ensuring compliance with local security requirements DOPS
Create an SQL statement for extracting a defined subset of clinical data, demonstrate completeness and validity of the extract DOPS
Attend a clinical environment and observe the safety measures surrounding an IT medical device OCE

Learning outcomes

  1. Plan a process and assemble the requirements for a clinical information system.
  2. Express system requirements in UML.
  3. Design a relational database system for a clinical information system, ensuring an appropriate level of data normalisation.
  4. Build an information system allowing web access to an SQL database.
  5. Construct a range of appropriate SQL commands.
  6. Complete the project documentation, ensuring compliance with security, governance and ethics issues with web-accessible database systems.

Academic content (MSc in Clinical Science)

Important information

The academic parts of this module will be detailed and communicated to you by your university. Please contact them if you have questions regarding this module and its assessments. The module titles in your MSc may not be exactly identical to the work-based modules shown in the e-portfolio. Your modules will be aligned, however, to ensure that your academic and work-based learning are complimentary.

Learning outcomes

  1. Describe the basic features of the Windows and UNIX operating systems.
  2. Discuss client/server architectures.
  3. Describe the basics of a relational database system and data normalisation.
  4. Interpret a range of structured query language (SQL) commands.
  5. Describe a number of commonly used mark-up languages.
  6. Interpret simple HyperText Markup Language (HTML) scripts and simple Extensible Markup Language (XML) scripts.
  7. Critically appraise the functional and non-functional requirements for a system.
  8. Discuss the advantages and disadvantages of Unified Modelling Language (UML) for capturing requirements.
  9. Discuss the role of application programming interfaces (APIs) in allowing systems to communicate.
  10. Give examples of software allowing databases to communicate with web browsers, e.g. Simple Object Access Protocol (SOAP), Common Gateway Interface (CGI) and Representational State Transfer (REST).
  11. Discuss security issues around client server systems and system security in the context of the NHS and public health systems [including, where relevant, the civil service], data governance and ethics concerns.
  12. Discuss and describe different software engineering models, e.g. agile, waterfall.
  13. Discuss how database systems/data management and modern software processes contribute to patient care pathways and the provision of high-quality safe and effective patient care.
  14. Describe software quality assurance processes.

Indicative content

Operating systems

  • Different common operating systems, e.g. Windows, Linux
  • An introduction to file management, security, user management
  • Basic principles relating to information and communications technology (ICT) security, including firewalls, virus protection, encryption, server access and data security

The web

  • How TCP/IP works
  • Client server architectures
  • HTML

Database theory

  • Capturing requirements – the idea of use cases
  • Basic introduction to SQL
  • Basic introduction to theory of normalisation
  • Database design in an SQL environment
  • APIs for communication with databases

Mark-up languages

  • HTML and XML
  • XML interpretation


  • Common database security issues
  • Governance and ethics associated with information systems in the NHS

Software engineering

  • Introduction to the concept of the software life cycle and the tools and frameworks used to specify, develop, validate and verify clinical software
  • Formal processes for gathering requirements
  • Functional and non-functional requirements
  • UML and systems modelling
  • Effective communication of requirements
  • Developing software as a team
  • Different software development models: waterfall versus agile
  • Managing code effectively – version control systems

Clinical experiences

Important information

Clinical experiential learning is the range of activities trainees may undertake in order to gain the experience and evidence to demonstrate their achievement of module competencies and assessments. The list is not definitive or mandatory, but training officers should ensure, as best training practice, that trainees gain as many of these clinical experiences as possible. They should be included in training plans, and once undertaken they should support the completion of module assessments and competencies within the e-portfolio.


  • Observe the work of the department and discuss the role of ICT hardware, software and network components within the context of the work placement with your training officer.
  • Observe the administration of a local area network (user specification, initial set-up, shared resources and security issues) and reflect on the impact and risks of local area networks within the department and wider NHS with your training officer.
  • Observe and assist in programming, using an appropriate language (e.g. MS VB, MS VBA-Excel, Matlab, Java) to analyse and report clinical measurement or other results.
  • Observe and assist in applying standards (e.g. IEC601) and techniques that are required when ICT software and hardware is utilised within a clinical setting and reflect on your learning and how it will improve your future practice as a Clinical Scientist.