Amira A. Pettus

Bahmni: An Electronic Medical Record


Bahmni: An Electronic Medical Record 

Bahmni is an open sourced electronic medical record system for remote and hospitals. It was an integration of 3 open source products, (OpenMRS, OpenELIS, and OpenERP) with an enhanced UI layer built on top.  

Originally created for a single hospital, Bahmni struggled to evolve into a product flexible enough for use by hospitals with differing needs and contexts. The approach to changing Bahmni was done with very little product thinking. The team focused more building integration between the open source tools of which it was built on top and the issues they had instead of focusing on determining core product functionality and the users that it serves.

As Bahmni started being used globally it was clear that users faced major problems. The team made many assumptions about how certain clinical and administrative roles functioned and imposed workflows on users that did not match their day to day activities. The hospital and its staff were forced to change their processes to match a system that had not taken their problems into account.

Because it was so heavily configurable the architecture of the systems was tangled and made it hard for users to navigate. The UI was not consistent, using icons and interactions that frequently were different even for the same functionality. No UI standards were being followed; every developer was decided what interactions were created and how causing confusion for users. Overall there was low adoption from roles that were deemed key user types like clinicians. 

Location & Duration : Bangalore, India and Hyderabad, India for 6 month

One of JSS' s patient record rooms

One of JSS' s patient record rooms


The Challenge

After 3 years  without design leadership on the team, I was brought on to support a 40+ delivery team, fix usability issues, and help create functionality for new modules. I quickly realized that team's need was much greater than my original ask. 

The EMR was now being implemented in 20+ clinics and hospitals worldwide, however with each new client more functionality was being added with little thought of the end goal. This resulted in burdening users who were already at risk because of their original circumstances. ( Bahmni was targeted towards low resource hospitals.) Some hospitals were forced to become dual entry, writing records on both paper and the EMR, because of these issues. 


My Goal for Bahmni & the team

Everyday I worked towards changing the process of team, so that functionality was being built based on understanding who our users were and intentionally solving their problems.

I made sure that all functionality being built going forward was user-centered. And in parallel worked to fix the usability of the current modules bit by bit. Eventually I worked to overhaul the information architecture of the entire system. Lastly, I took steps to identify what our core value proposition was and make a clear strategy moving forward for the product.   


UnderstandIng Bahmni's Evolution and Impact

This first thing I did upon joining the team was to understand the evolution of the product by pairing with BAs and QAs on the team, as well as performing a heuristic analysis. I also traveled to locations where Bahmni was being used and interviewed users in order to understand their context, needs, gaps, and pain points, agnostic to the product to determine core needs across clients.

While I staying at our main client, JSS, I observed hospital processes by shadowing and performing contextual interviews with members of each department. I also interviewed the administration to understand their original needs and learn how integrating Bahmni in their services had shaped the hospital thus far.

Using this data, I worked to distinguish what functionality was more focused on a specific client versus functionality that was constant across all clients. 

Bahmni lofi mockups for developers

Bahmni lofi mockups for developers

Developed Bahmni module

Developed Bahmni module

Testing with a clincian

Testing with a clincian


Untangeling Bahmni's IA and UI

After my initial research phase, I used my newly gained understanding of the product and users to work with the product head, BAs, QAs, and developers on my team to ideated and explore solutions for the functionality that was currently being worked on. Each BA was assigned to various sections of the product and I paired with them to dissect requests for new features. We worked to determine what problem needed to be solved, who and what it would impact, and the best way to do it. We then ideated potential solutions through sketches, wireframes, and lo-fi prototypes. We would then pair with developers and QAs to implement and test the solutions. 

In parallel to these ongoing tasks, I worked to untangle the Bahmni information architecture and user interface.

I learned from my previous analysis that a nurse, for example, could begin in one section of the product, travel through several others, and then unknowing end up in a completely different module then they thought. There were multiple navigation areas throughout the product that would appear and disappear depending on where the user was. Also, the same icons and cues would be reused for multiple different actions causing confusion.

I created a synthesis document and tackled these issues on an ongoing basis with the lead BA.

Bahmni Flows Define Pics-01.png

Advocating for Clinicans & Hospital Staff

As I worked with members of the delivery team to solution ongoing features and new functionality, I realized that the team struggled to understand why and how some features were being built. A majority of the team, as it stood, had been too far removed from users and stakeholders.

Most of them had not ever spoken to a clinician or technician, let alone see what it meant to use Bahmni in a real setting with all the issues that come up in a hospital on a day to day basis. On top of that, our product lead was under the impression that "a hospital was a hospital was a hospital". In order to convince them I needed to "bring" our users to them team.

To do this, I advocated for the user during product roadmap meetings with research data. I also made sure that context about the problem we were solving accompanied wireframes for every story written that would directly impact users. And I paired with BA's when they did kickoffs to advocate for the user. And we communicated overall processes to the team through user journey maps, concept models and personas. 

I also made and presented a deck to the entire team that showed the end to end experience at a hospital that used Bahmni. It not only changed the outlook of the development team, but also leadership like the tech leads. 

New Bahmni UI wireframes

New Bahmni UI wireframes

New Modules and Rethinking Bahmni's strategy

In order to tackle the lack of uniformity in the product, not only in the functionality available from client to client, but the interaction and visual language of the UI as well, I re-envisioned the product. I created wireframes for potential new versions of different modules. 

I also developed a strategy to approach the future roadmap of the product in a more focused manner, including identifying core functionality for Bahmni's value proposition.