Have you implemented OpenMRS? Please participate in the Implementation Site Survey. If you already have, thank you!
Child pages
  • Radiology Module: Manage imaging modalities and procedures
Skip to end of metadata
Go to start of metadata

Primary mentor

Ivo Ulrich

Backup mentor

Judy Gichoya

GSoC Student




Imaging modalities (CT, MR, US, ...) enable the performance of different imaging procedures (CT Abdomen w IV Contrast, MR Head Neck Angio, ...) which can be encoded using standardized catalogs such as for example SNOMED CT, LOINC, RadLex Playbook. Imaging procedures take different amounts of time and not every imaging procedure can be done by every imaging modality. Furthermore, an imaging modality might only be available at certain days a week or currently in maintenance and thus not available at any given moment in time. A radiology information system should enable a healthcare facility to manage its imaging modality resources and help schedule imaging procedures in an efficient way.

Currently the OpenMRS radiology module enables a healthcare facility to order imaging procedures which are relayed to a Picture Archiving and Communication System (PACS) handling the communication with the imaging modalities (DICOM Modality Worklist). An OpenMRS administrator can configure a set of concept classes (which can represent a set of imaging procedures) as orderable by the radiology module. This allows a radiologist to only choose an imaging procedure from this pre-configured subset of concepts.

However, the radiology module has several major shortcomings:

  • The radiology module does not keep track of the imaging modalities available in the healthcare facility. 
    Since imaging modalities are not managed:
    • A radiologist cannot order an imaging procedure to be done at a specific modality (for ex. the procedure needs to be done on a modality by a specifc vendor, type or location)
    • The mapping of imaging procedures to imaging modalities is not managed. An administrator cannot configure which imaging procedures can be done at what imaging modality.
    • Imaging modalities do not have a calendar. The healthcare facility thus does not have an overview of its capacity and capacity utilization.
  • The duration of imaging procedures is not managed. An administrator cannot configure durations of imaging procedures.
  • Although date and time can be entered when ordering an imaging procedure, they are not checked against existing orders. Imaging procedures can therefore overlap or be ordered when the healthcare facility is actually closed or the needed modalities are in maintenance.


Provide JAVA APIs (and legacy UI forms) to support

  • management of imaging modalities and procedures
    • entry of imaging modalities (DICOM AE Title, DICOM modality type, description, vendor information, active or in maintenance, ...) 
    • management of imaging procedures feasible at the healthcare facility (import through standardized catalogs, configuration of procedure durations) 
    • allocation of imaging procedures to imaging modalities 
    • add a calendar for imaging modalities (for ex. available from 8am-16pm Monday-Saturday) 
  • scheduling
    • enable scheduling of imaging procedures at a specific modality
    • prevent double bookings of modalities
    • support scheduling user in choosing appropriate time slots for best allocation of imaging modality resources
    • provide means for healthcare facility to see utilization

Extra Credit

Provide RESTful APIs for the newly created JAVA APIs


Good Java skills
Familiarity with J2EE web programming (e.g., JSPs)
Familiarity with Spring Framework


Radiology module code: https://github.com/openmrs/openmrs-module-radiologydcm4chee

Radiology module development environment setup: https://github.com/teleivo/puppet-openmrs-radiologydcm4chee

Radiology module wiki page: Radiology Module

Intro video on radiology workflow and IT systems involved: https://youtu.be/czApoO5N9K8

Imaging procedure catalogs:

Imaging procedure catalogs and DICOM:


Please join discussion at:
  • No labels