The OpenMRS Field Guide is a new and incomplete resource that aims to help implementers with the nuts and bolts of beginning and sustaining a successful implementation of OpenMRS, from securing electricity to maintaining data quality.

This page aims to complement existing resources such as the Implementation Overview and PIH model online, highlighting details from actual experiences on the ground. Many of the topics in the Field Guide are not about OpenMRS per se, but about the many components of infrastructure and staff practices that must be in place for OpenMRS to function. If you find similar or complementary resources, please add them to the list at the bottom of this page.

If you don't find what you're looking for in this general guide, please ask the Implementer's mailing list (subscribe on the community page). The list is full of people just like you who would be happy to answer your questions promptly.

There is also an OpenMRS Book for Implementers available:

Assessing Needs

Get the stories and work flows of:

Find out how all medical information is supposed to be managed, as well as how it is actually managed. Note that practices may vary seasonally, for example if the hospital is much busier due to increased malaria during rainy season or malnutrition before harvest.

People generally want to be positive in describing their work places, so you may need to ask multiple people multiple times. Get copies or pictures of all paper forms if possible. Figure out where (i.e. specific rooms and desks) data is recorded onto paper and by whom. Write an overview of current practices and define specific shortcomings that could be addressed by using an electronic medical records system.

Project Design

The OpenMRS platform is flexible enough to support a wide variety of use cases or implementation models. To adopt and adapt the model that best fits your project, you will need to broadly consider assessed needs and available resources, including access to basic infrastructure, hardware, community partners, and expertise of staff, volunteers, and available contractors. You may find it helpful to perform a SWOT analysis of your project. Major issues to consider include:

Collaborating with government and NGOs

Connecting multiple sites

If you have more than one site using OpenMRS, you will need to identify an effect way to connect them. Possible options include:

Entering data at point of care vs. retroactively

See Point of Care page.

Using a vertical program model vs. primary/comprehensive care model

In the future it would be great to collect brief descriptions of diverse implementation models that could use a case study format to highlight how past projects have navigated these project design issues. Maybe on the Reference_implementations page?

Infrastructure Requirements

Existing infrastructure is a critical factor in designing your project. Implementing an electronic medical records system can be a good motivation to build infrastructure such as stable electricity or Internet connectivity that has tangential benefits for other aspects of the health facility. However, it is critical that project goals are modest enough that they will be successfully implemented, embraced by local staff, and have sufficient long-term financial support.

Power infrastructure

OpenMRS is only as reliable as the power system that supports it. Unless electricity is almost 100% stable in your area, you will probably want a primary power source and a backup.

Organizations that have helped OpenMRS implementers set up power systems:


How will you connect your work stations to your server?


Some projects require significant investment to protect ICT and power infrastructure, while others do not. Consider the context. Only local knowledge can guide this decision.

Machines for entering, storing, and accessing data

Once you have a good understanding of the kind of system you want to set up, the amount of data you want to collect over time, and the type of system your infrastructure (either pre-existing or built specifically for this project) can support, you can select server and work stations that meet your needs.

Server requirements

Most installations require a minimum of 2GB RAM, 250GB hard disk.

At current installations:

MVP Uganda: Every day six people at two sites enter a total of 80-100 forms with 20 obs per encounter per person per day. They have two sites accessing an Inveneo server with 1 GB of ram. After about one year with 40K encounters and 20K patients the server started to run slowly.

AMPATH Kenya (as of June, 2010): 230K patients, 70 million obs. Poweredge R510 Two Processor,E5540, 2.53/5.86, 8MB Intel Dual Socket Nehalem, 8 Memory modules 4GB 1333 MHZ. 40+ people accessing the system at a time.

HAS Haiti: 600K patients, 4.4 million obs. Average entry of 150 forms and 1400 obs per day. 12GB memory, Dual-Quad Core Intel Xeon 2.33GHz server. Up to 11 users accessing the system simultaneously.

Work stations for retrospective data entry

If you intend for clinicians to enter data on paper forms that are later entered into OpenMRS by data entry clerks, you should estimate the number of work stations you will need based on the amount of data you will enter. As a general rule, it will take a data clerk about one day to enter 80-100 forms with 20 observations per form (this general rule may vary greatly from site to site). For retrospective data entry you may use regular computers that range in cost from $300-$1,000.

If you intend to use InfoPath (for a FormEntry module or Remote FormEntry module), you will need to use the Windows operating system (minimum of Windows XP).

Work stations for point of care

If you intend to build a point of care system, you should estimate the number of work stations needed based on the number of clinicians or clinic rooms. You might want to consider using thin clients or touch-screen devices, and may want to use mobile devices if for remote clinics. Such devices range from $100 (for a J2ME smartphone capable of running OpenMRS) to $1,000 for some touch-screen appliances.

Mobile devices

If you would like submit forms from the field, and do not need rich access to patient data, you can do so with mobile devices that cost as little as $20. Forms can be sent via SMS, GPRS, or wifi. On the other end of the spectrum are applications that run on more expensive smartphones with features that are nearly equivalent to a regular OpenMRS workstation, except on a smaller screen.

Read about the various mobile tools that integrate with OpenMRS on the Mobile page.

Installing OpenMRS

See Step by step installation for implementers.

Constructing Forms

Building forms is an iterative and non-trivial process. Consider various options for creating and submitting forms, including HTML form entry module, XForms module, FormEntry module (uses InfoPath) and Remote FormEntry module (also uses InfoPath). 

Staff Requirements

Primary implementer

Long-term IT support

Once OpenMRS is running smoothly, it is still necessary to have an IT person on site or nearby who can respond to problems with the infrastructure that OpenMRS relies on. Issues may arise with:

Many organizations lack the internal skills to deal with these issues, so external support can be critical. In general:

Data entry clerks

Many implementations use existing clerks. Some train cleaners to enter data.

Data managers

If you have more than 4 data entry clerks, it is often useful to train data managers to oversee the data entry clerks and ensure that they are maintaining high data quality.

System maintenance and performance

See Step-by-Step_Performance_Tuning

For other bugs/issues, you might be best of contacting the Template:Email:implementers mailing list.

Common issues and solutions

Issue: The system slows way down every time I try to run a report, making it impossible for the data clerks to enter data.

Solution: Many large sites will replicate their database and generate reports on the replicated database while continuing to enter data on the primary database.

Issue: We frequently have to reboot our system due to Tomcat out of memory errors.

Solution: The 1.5 release of OpenMRS fixed a few memory leaks, so upgrading might solve your problem. You can download the release on the Downloads page.

Issue: Running multiple instances of OpenMRS on a single server slows things way down.

Solution: If you are currently running multiple servers to support multiple instances of OpenMRS, you might want to create a cluster and virtualize each instance of OpenMRS so that they can run on the same cluster.

Reference Implementations

Eventually this page will document reference implementations using a case study approach aimed at sharing practical experiences in diverse settings with new OpenMRS implementers.

Additional Resources

Field Guide Contributors

Isaac Holeman of FrontlineSMS:Medic