Generic Decision support functionality within Bahmni

Hi everyone, we currently have a requirement to support Generic Decision support functionality within our Bahmni implementation in Lesotho. This includes alerts aligned with clinical treatment guidelines for different health programs like PMTCT, HEI, PNC, ANC, ART etc.

In order for the Bahmni solution to support the frequent changes in policy based on ever changing clinical guidelines for different health program areas there is a need to have a flexible and highly configurable module to support the business rules that can inform or guide clinicians during patient encounters based on the latest clinical guidelines. This can happen in the form of pop up alerts to aid clinicians at point of care or any other informative information that can be of use to the clinicians at point of care.

Some of our use case scenarios are:

  1. Alert to remind clinician to draw blood for various tests for ART client as well as HEI based on guidance from the ART treatment guidelines
  2. Alert to remind clinician to screen for CX_CA (Cervical Cancer) for eligible women based on guidance from the ART treatment guidelines
  3. Populate list of clients eligible for certain test/screening (blood test, TB or CX_CA screening) but didn’t receive services accordingly
  4. Alert to remind clinician to capture TB or ART intake information for a particular client at point of care i.e. missing information etc.

Please advise on generic design approaches for solving this use case Cc. @angshuonline, @pradiptakundu, @akhilmalhotra

1 Like

Hi Teboho,

Alerts typically should have a priority defined for them so that a user can differentiate high priority alerts and low priority alerts. This is important as the number of alerts increase, research has shown that users tend to get “alert fatigue” eventually abandoning the system for too much interference in their daily work. So defining a priority will help the UX designers to display alerts in different ways depending upon how important it is.

For example, high priority alerts could be displayed as modal boxes with action buttons that force the user to take an action while the low priority alerts can be just displayed as a slide-in message that stays out in one corner of the screen as a suggestion.

The examples you shared look like event-based and time-based triggers for alerts.

Example 3 looks like a report to me.

In example 4, I can think of the following scenarios:

  • Time-based alert: May be the reason for encounter was different but the patient’s TB/ART visit is also pending/due, so at the time of saving the encounter, the system could displayed a message to fill TB/ART forms and for the patient, this saves an additional visit to the hospital.
  • Event-based alert: Based on the data captured during their visit, at the time of saving the encounter, the system checks if the patient falls in the case definition for ART/TB screening. If the patient matches the criteria, an alert is displayed to screen the patient.

In my opinion, we should start with creating a generic Rules module where the implementers can define rules to trigger alerts. We can have a separate discussion on the UX design.

1 Like

Hi @akhilmalhotra1, I like the idea of a generic rules engine module that you are proposing for starters and I think it can work well as an approach to address the changing decision support rules, where it could be possible to disable certain rules that are no longer applicable and enable new rules at any given point in time.

And as per you suggestion different priorities and types of alerts could be attached to each rule and this can be used to guide the user experience.

We will look into how this particular approach could be implemented. Thanks


Hi Teboho,

We have similar requirement on clinical decision support for one our client and we would like to connect with you to understand your approach.

Kindly let us know your availability to discuss on the same.


Regards, teja

Hi @tejakancherla ,

We currently have this item on our backlog. We can have a call this week for further discussions concerning this topic. We can schedule the call for Thursday, 30th July 2020.

Regards, Teboho

Thank you Teboho. Kindly let us know your convenient time , will 6.30PM IST on thursday works for you?

Hi @tejakancherla, lets take this conversation forward and reschedule accordingly, please communicate your availability this week or the next for a meetup.

Regards, Teboho

@mwelazek Hi teboho, We can connect tomorrow (i.e. Tuesday , 18th Aug , 6.30PM IST ) if that works for you. Or else we can connect on thursday , 20th Aug - 6.30PM IST. Do let me know your availability.

Let me know your email id, so that i can send Zoom Invite. Thankyou.

@tejakancherla Hi Teja, 20th Aug - 6.30PM IST will work.

Thank you, Teboho