Wiki Spaces


Get Help from Others

Q&A: Ask OpenMRS
Discussion: OpenMRS Talk
Real-Time: IRC Chat | Slack


Page tree

Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.

The goal of this page is to help you understand what it takes to implement OpenMRS. If you are already beginning an implementation and would like more detailed advice, see the Field Guide.

Staff Requirements

Primary implementer

Skills needed

  • One dedicated IT person for at least two or three months, usually full time. They need to know the whole stack (server maintenance, MySQL, Tomcat, Java, etc.) The level of expertise you need on site depends in part on whether or not you have the Internet to get help from online resources or remote developers.
  • Tomcat expertise
    • Install and manage Apache Tomcat
    • Upload and install new WAR files
    • Troubleshoot, read log files
  • Database expertise
    • Install and manage MySQL environment
    • Understand the OpenMRS data model
    • Perform SQL queries and run SQL scripts
  • Clinical form design
    • Understand how to create meaningful, useful, and non-ambiguous questions/answers
      • Medical expertise – to understand what questions/answers make sense, what's clinically relevant
      • Technical expertise – to understand how questions/answers can be interpreted by a computer
      • Data management expertise – to understand how questions/answers will be used for reporting, research, etc.
  • Dictionary design
    • Ability to infer dictionary concepts from a form (both coded questions and answers), modeling expertise – e.g., do you create

      Code Block
      CHEST PAIN as a boolean (true/false) or do you create
      a CARDIAC REVIEW OF SYSTEMS as a coded concept with
      CHEST PAIN as a possible answer?
  • Ability to install and configure Apache + SSL (if extending network beyond a single LAN)
  • Report design expertise

Long-term IT support

OpenMRS relies on some basic infrastructure. After this infrastructure is in place, long-term IT support will be needed to ensure it continues working properly.


Many organizations lack the internal skills to deal with these issues, so a combination of staff training and external support can be critical.

Data entry clerks

Many Most health facilities have health records information management staff who can be trained as data entry clerks. Some implementers train cleaners to enter datamaintain data in the facility. Some facilities lacking such personnel opt to train casuals equipped with basic computer skills to perform these duties.

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 Users

System users such as clinicians and nurses need to have basic IT skills to assist in data entry process. For illiterate computer users, it is recommended they attend IT training in preparation of adoption of the system.

Infrastructure Requirements


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. Backup power systems usually involve some kind of battery. Using grid power with a diesel generator as a backup is probably not sufficient because there is a short lag inbetween losing grid power and turning on the generator, and the suddden loss of power can damage your server or data quality. Hybrid systems are ideal, where you have a primary power source (such as grid power or solar), and a secondary source (such as a generator or solar), both of which feed into short-term backup batteries.


Devices for entering, storing, and accessing data

  • A server, recommended one or two processors 1.5+ GHz, 2 GB of memory, and 150+ GB of disk space with RAID and appropriate backup. See Field Guide for more information on selecting a server.


  • Mobile devices: If you would like to 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.
  • Data Back up Devices: Low cost external backup devices such harddisks and flashdisks are advised for backing up data incase of server / system failure. Scheduled backups is recommended(daily basis) to make it easier to perform system recovery


You can connect your server (which stores all OpenMRS data) to the work stations where people enter data within your facility using:


  • Bringing all paper forms to a central location and entering them into the electronic system (requires transportation, but no connectivity equipment)
  • Setting up a local area network using long range wifi
  • Installing VSAT or otherwise accessing Internet if you wish to communicate with very remote sites (such as a distant office in the country's capital or in another country)


Some projects require significant investment to protect equipment, potentially including installing doors, locks, bars on windows, or metal equipment storage cabinets. At other sites security is less of an issue, so consider the local context. Only local knowledge can guide this decision.

Implementation Process

  1. Build power infrastructure or strengthen as needed
  2. Improve security to support safely storing electronic equipment
  3. Build connectivity infrastructure
    1. Ethernet cables, hubs, etc. as needed for local area network
    2. VSAT or other means of accessing Internet for remote support
  4. Design paper encounter forms (getting input from clinical and IT teams)
  5. Install server
    1. Install server with power backup – UPS for server and power backup (solar)
    2. Install Windows Server 2003 on server along with supporting software (e.g., antivirus, firewall)the most preferred OS, Windows or Linux operating systems are both recommended
    3. Install OpenMRS system (MySQL, Apache, Tomcat, etc. — see Setting up an OpenMRS Server)
    4. Configure server to serve OpenMRS web application through Apache over HTTPS
  6. Setup OpenMRS core data set
    1. Install core data set (using SQL)
    2. Make user account and define privileges
    3. Define locations
    4. Define tribes 
    5. Define encounter types
    6. Build dictionary concepts around forms
  7. Design electronic form(s) within OpenMRS
    1. Select a form entry tool from among HTMLFormEntry Module, XForms Module, FormEntry (uses InfoPath), or Remote FormEntry (also uses InfoPath).
    2. Define forms within OpenMRS
    3. Test form(s)
  8. Setup client workstations for data entry
    1. Firefox
    2. Chrome
    3. If using FormEntry or RemoteFormEntry modules, install InfoPath 2003 with Service Pack 2 or later
  9. Training
    1. Create a training plan, that may include both classrom and departmental training depending on nature of your implementation
    2. It is advisable to create an OpenMRS test instances for user training purposes before actual go-live use of system
    3. Issuing simple tests for your users after completion of each training session
    4. Training of trainers(TOT’s) approach is recommended especially for larger implementations and largely contributes to sustainability of system especially if the TOT's are actual system users
  10. Stake holder Engagement
    1. Successful OpenMRS system implementation largeley depends on top down involvement of all stakeholders in the implementation process. Involve the users, managers, sponsors and relevant stakeholders in all processes right from requirements gathering to project implementation. Top-down collaboration tends to provide avenues for providing solutions to challenges that may be experienced during the implementation process

Ongoing Support

  1. Review new concept proposals
  2. Make changes to forms over time (both paper and electronic versions)
  3. Building reports from data exports
  4. Managing user accounts
  5. Server maintenance
  6. Client maintenance
  7. VSAT maintenance
  8. Provide disaster recovery plan sush as providing standby servers / recovery disks to provide backup incase of system failure
  9. Access to modules updates
  10. Access to sofware updates such as tomcat, MySQL