GSoC 2014: Atlas Module 2.0 Midterm Presentation

Hi guys and girls !

This is my video presentation of Atlas Project 2.0 :earth_africa:

It aims to associate implementation’s marker to an OpenMRS ID, allowing them to be created or revised in the Atlas Server and port Atlas module to be used with OpenMRS 2.0.

Topics in the presentation:

  • Existing Atlas Module and Server.
  • Project goals and progression.
  • Current task
  • Atlas 2.0 demonstration
  • Technical aspects


Don’t hesitate to reply to this topic, or ask questions ! 2 questions for you :smirk:

Which new feature(s) you would like to see in Atlas ? Does having a marker in OpenMRS Atlas is important for you (and community) ?




Great work, Alexis!

A couple of thoughts have come to mind:

  1. Given that we’re planning to bundle the Atlas Module as a core part of OpenMRS in the future, have you given any thought to integrating with the installation process? IE, have a part of the install process where people can optionally establish themselves on the map? What would it take to make that happen, from your perspective?

  2. How have you chosen to handle implementations that want to automatically send statistical information about their implementation to the Atlas Server? Stuff like #patients, encounters, obs, etc? What happens when the system is not regularly connected to the internet? The design of how you’ll do this would be interesting to hear about.

Thanks for all your hard work!

Hi Paul,

Thanks for your interest and suggestions ! :+1:

1. Integrating Atlas on the installation process sound really good, but I never given any thought to this idea before.

As all the process of putting his implementation on the map and linking it with the module is done on the atlas server side, it’s probably easy to do that during the installation.

I don’t know how we can make change on this process, but we can probably add a new screen with an

2. What Victor has done in the current module is to register a task that post counts every 7 days. I think that if the system is not connected to internet when data are sent, it fails and module will send next update 7 days later. But maybe I missed a trick, @Burke can probably confirm that.

As we will be able to manually update counts directly in the Atlas, administrator can update them when it is connected to internet. Maybe we can do something like a backoff algorithm, and retry until it is successful posted. Is it what you’re thinking ?

Thank you for your contribution and cause this brainstorming on me :wink:

Hi alexis,

i can only agree to what paul said - great work! I really like the atlas project - I have already placed myself on the map :slight_smile:

Doing that I came across a small bug. If you click on edit, the form doesn’t show your last marker type (e.g. Development), but Clinical. just wanted to let you know…

Keep it up! Lukas

1 Like

Hi Lukas,

It’s really nice you have already place yourself on the Atlas :+1:

Thanks you for your contribution, I enjoy your interest for this project. This issue will be curated in the next release that is coming soon :wink:

Moreover, I read in your blog post that you worked with JNI and native library. I had to face same issues on Tomcat or Glassfish, in a project using OpenCV (image processing) and its Java interface. I did a trick to package it in a jar with a custom class loader, so you can use it as a dependency, without have to place it in the Java Library Path before. If you haven’t switch to better solution, don’t hesitate to ping me :smiley:


Hi @alexis_duque

Awesome work ! I have added myself too.

Have you given a thought of giving an upload image button ?

Cheers Ujjwal

Hi @ujjwal92,

Thanks you, It’s good to see guys joining the community in the Atlas :smile:

Your suggestion is nice. Moreover image shown in Atlas are not upload to Atlas server, (they are just URL link), and we probably don’t wan’t to host them. As OpenMRS ID will have new features, what we probably will be able to do is to get the image from your ID Profile by default.


Hi alexis,

thanks for offering your help on the jni dependency problem! I haven’t thought of using a seperate classloader - good point :+1:

Due to other reasons I have moved on to another library (optaplanner) and don’t have to worry about it anymore ^^


@alexis_duque, nice work so far!

Per Paul’s comment, I’m interested in discussing with you and @burke how we can include this in an upcoming OpenMRS release. It could be part of the installer, but we could also try the (maybe easier) approach of having the atlas module show the admin a banner until you configure it (or dismiss it).

Trying to set up an Atlas entry during installation has several downsides:

  • Interrupts installation
  • Only works with decent internet connection
  • Increases the likelihood of noise in the Atlas (more sites from people playing with the standalone than actual production sites)
  • Significant coding involved

A simpler & cleaner approach would be to put a badge on the Atlas app icon until it is run. Something like this:

After chatting with Paul, I think we can consider introducing the Atlas during installation via something like a “I want this server to be included on the OpenMRS Atlas” option near the end of installation. We’ll need to think through how it would work. For example, we can assume that there isn’t an entry already on the Atlas. A simple form asking for title and optional description & contact info may suffice. In any case, I’ll make an ATLAS ticket for it.

That sounds good :+1: and it can increase Atlas usage rate :slight_smile:

I will have some thinking on how we can do that.