Bahmni - Tagging Patients

Primary mentor

Backup mentor

N/A

Assigned to

N/A

Abstract

The aim of this project is to provide the ability for healthcare providers to tag/mark patients of special interest, and provide views of tagged patients for quick access.

Context

Most hospitals and clinics that use Bahmni see a very wide range of patients, and healthcare providers often want to view or analyse certain cohorts/groups of patients based on various conditions (e.g. patients receiving similar kinds of treatment, patients with outstanding lab results). Adding functionality for users to tag patients using custom user-defined tags would allow for quick lookup of these patient groups, and provide a starting point for further development on patient analysis and notifications.

Details

Patient tagging is not meant as a replacement for functionality like care-plans, programs, order sets, etc. which have much richer needs/scenarios e.g. patient state, visit schedule. 

This project involves development in the existing Bahmni EMR to let users manage custom tags, and associate patients with these tags.

This would cover the following workflows:

I create a new tag(s) → I choose a patient → I mark the patient with one or more tags

I select an existing tag → I view a list of patients that have been marked with that tag → I select a patient from the list to view their patient record


Term

Definition

Tag

A tag is a string associated with a patient.

Local Scoped Tag

A local scoped tag is a one that is visible only to the user to whom it belongs.

Global Scoped Tag

A global scoped tag is a one that is visible to everyone having access to the app.


This project would require data modelling work to extend the existing data model to support tags, as well as implementing functionality to manage tags, mark patients and view lists of tagged patients.

This would include work across the technology stack - adding back-end functionality, a REST web service, and user interfaces in the front-end AngularJS application.

Project Champions

Skills Needed

  • Java & Javascript (especially AngularJS)
  • Experience working with RESTful Web Services

Objectives

  1. To be able to manage (add/edit/remove) custom tags (local scope)

  2. To be able to mark patients using one of the tags available to the healthcare provider

  3. To be able to see a list of patients by tag - e.g. clinical, in-patient

Extra Credit

  • To be able to create Global scoped tags based on privileges

  • To be able to mark patients with Global scoped tags

  • To be able to associate an indicator colour (and icon) and see the indicator on patient queues.

Resources