Order Sets in OpenMRS - What Are Your Needs and Use Cases?

Hi everyone,

We are exploring what it would take to build an Order Set feature in OpenMRS O3. Before we go further, we want to hear from the community. If you are a clinician, implementer, developer, or anyone working with OpenMRS in the field, we would truly love your input.

An order set lets a clinician place a pre-defined bundle of orders (medications, labs, referrals, follow-ups) in a single click, rather than ordering each item individually.

Here are some key questions

  1. Is this a feature that you need for your implementations?

  2. What clinical use cases are of interest to you?

  3. What order types would you need to be bundled together?

  • Medications only

  • Labs only

  • A mix of medications + labs

  • Other (Specify)

  1. Any UI ideas? Even a rough sketch on paper would be helpful.

  2. Are there existing order sets from your programme or ministry we could use as reference content? Even a paper version would be incredibly helpful.

Thanks in advance, looking forward to hearing from you. cc: @burke @ddesimone @fanderson @kmuiruri @slubwama @wamz

1 Like

Thanks @veronica. As we discussed, at PIH we would be interested in monitoring this work and can maybe help with requirements reviews and testing.

And if you are looking for some very simple use cases to pilot, I pulled some data from one of our implementations and saw these very clear trends:

  • For Hypertension the meds Amlodipine besylate & Hydrochlorothiazide are very often ordered together
  • For Sickle Cell it’s often Hydroxycarbamide & Folic acid

I’m sure the folks here with clinical experience would have many more thoughts.

This is a very helpful feature to have! Particularly in emergencies.

Speaking as a doctor, I could think of a few use cases like:

  1. Surgical Profile: Whenever a patient is admitted for surgery, we run a few basic labs regardless of the specifics;

    • Complete Blood Picture
    • Liver Function Test
    • Renal Function Test
    • Viral/Infectious screen: HbsAg, HIV, HCV, VDRL
    • Blood Grouping
    • PT-INR
    • RBS
    • Urinalysis
    • X-Ray chest PA view
    • ECG etc
  2. MI(Myocardial Infarction) : Standard protocol like,

    • Aspirin
    • Clopidogrel (Or any similar anti platelet drug)
    • A beta blocker
    • A statin
    • An ACE inhibitor or ARB
    • Percutaneous angioplasty or Thrombolysis (Alteplase) etc
  3. Diabetic Keto Acidosis (DKA):

    • IV Fluids (NS)
    • Arterial Blood gas test
    • IV Potassium
    • IV Insulin
    • IV Dextrose
    • Hourly monitoring etc

You have many use cases like this. Order sets with instructions to nurses. Pre-op sets. etc etc

These order sets are derived from the standard management protocols for different conditions. So you could look into some frequent cases like I mentioned.

We could add a feature for hospitals or doctors to customize these based on the specialty, the specific cases they usually see and the local guidelines/protocols.

Thanks @veronica for raising this as a developer working on OpenMRS implementations, I think this feature has strong real-world value and I’m happy to share thoughts. From a developer perspective, I’d suggest the order set be surfaced directly within the existing O3 order basket perhaps as a searchable “Order Sets” as in a tab alongside the current drug/test tabs. Where a clinician should be able to search by programme or condition (e.g. ART initiation, blood samples, etc.), then preview the bundled items, optionally deselect individual items before confirming, and place the whole set in one action. Coz keeping it inside the existing basket avoids context switching and reuses familiar patterns.

1 Like

Excellent and timely topic. Would be good to drive requirements down to the actual details… which concepts are needed, what meta data (dose, Rx, duration, etc.)? Are there are other data elements required for the sets besides what you are ordering? For example, is LMP required? Ages/genders for specific sets, etc.

Thanks @ddesimone for pulling the data and highlighting these two use cases. I agree that Hypertension sounds like a perfect candidate for the MVP.

I’d love to hear from our clinical experts regarding this choice for the initial/basic Order Set requirements. @burke @akanter

This is incredibly helpful! Thank you for such a detailed breakdown. These examples perfectly illustrate why we need order sets in O3. For an MVP, which one would be the simplest use case for a start?

@katoelvis Could you share a rough sketch (even on paper) of what you are envisioning? I have seen this part of UI, but no more than this. Zeplin - Login

I’d say the surgical profile is the best use case to start with. It primarily consists of labs and imaging, hence it’s easy to generalize.

You can also add on orders for the nurses, like NPO (nil per os), etc.

I might remind folks that there are two main phases of problem management: Diagnostic and Therapeutic. When you have a general problem without a known cause all sorts of workup needs to happen. This is the diagnostic phase when the provider is trying to narrow down the differential to get to a specific cause/diagnosis. The Second phase is therapeutic, when the provider is trying to either cure or stablize the patient. This second phase includes best treatment profiles and care plans. This can be SMART guidelines or they hopefully are at least evidence-based recommendations/options. (See LEGEND study for thiazides over ACE-I or Ca-channel blockers: https://www.thelancet.com/journals/lancet/article/PIIS0140-6736(19)32317-7/abstract)). Finally, the Second phase often also includes management of complications (of original disease or treatments), these additional orders can either be modular (and pulled into a larger order set when the complication occurs) or be optional in the original order set for known and frequent complications, etc.

The key ideas are the mockup:

  • A new “Order sets” tab added alongside the existing Medications, Labs, and Referrals tabs but no new page or modal created

  • Each order set card shows the programme name, a badge breakdown (e.g. “3 medications · 2 labs · 1 referral”) before you even expand it

  • Inside the expanded card, each item has its own checkbox so the clinician can deselect what isn’t needed for that patient, the set is a starting point, not a locked bundle

  • Once added, items flow into their existing respective tabs (Labs, Medications, Referrals) with a note showing they came from an order set, so nothing about the current basket UX changes

  • “Sign & save orders” at the bottom stays exactly as it is today

Here is a link to my design, and also the rough sketch below

The main principle here is: That the order set lives inside the basket, not beside it or above it. Clinicians already know the basket, and this just gives them a faster way to fill it for protocol-driven visits like ART initiation or ANC first visit etc.

1 Like

For the Hypertension use case, the 2 drug orders have been suggested ~ Amlodipine besylate, Hydrochlorothiazide, and we already have them in OCL. @ddesimone Maybe you could also check what the data says regarding the dosing details and other data elements to help us narrow down on what to consider for the MVP.

100% agree and i think the Hypertension example sits squarely in the therapeutic phase where a diagnosis is known and the data also shows evidence-based drug bundle. The diagnostic phase, by contrast, implies a different kind of order set including lab panels, imaging, and investigations triggered by a presenting complaint rather than a confirmed diagnosis.

That said, i think starting with the most basic form of the feature is the right call. Shipping the therapeutic case first gives us a working foundation to learn from - how clinicians interact with order sets, what they expect to customise, and where the rough edges are before we take on the added complexity of diagnostic bundles and modular complication management. We can iterate from there.

This is so helpful @katoelvis . Thank you so much for taking the time to sketch.

Welcome @veronica :folded_hands:

@veronica It looks like the most common dosings are:

Amlodipine besylate, 10mg tablet: 1 Tablet OD (once daily)

Hydrochlorothiazide (HCT), 25mg tablet: 1 Tablet OD (once daily)

…usually dispensed 90 tablets of each at a time but sometimes 120 or 180

Hope this helps!

2 Likes

also btw @veronica … @fanderson and I will be in Sierra Leone in 2 weeks. When we meet with the NCD team, we can confirm a set like this makes sense for them!

1 Like

That will be very helpful @ddesimone @fanderson

Seems like these should be eventually be broken down by stage (severity) and presence of comoribidities. However, the LEGEND study showed that Thiazides are superior (although HCTZ is not recommended as strongly as thiazide-like drugs). Combination drugs are preferred (ACE-I + Thiazide or Ca-channel blocker + thiazide). See: UpToDate

@akanter Thank you for this feedback - it has been very helpful in shaping the direction. Based on the discussion, I have put together a sketch of the proposed order set UI for the Hypertension Standard. The mockup reflects the key insight from the conversation: that rather than a flat list of drugs, the order set should present two distinct selection groups - a thiazide diuretic and a partner drug - reflecting the combination therapy approach supported by the evidence. Would welcome any further thoughts from the community.

1 Like