Atlas Module 2.0 Project

Primary mentor

Burke Mamlin

Backup mentor

Elliott Williams

Assigned to

Alexis Duque

Abstract

The Atlas Module was created in Google Summer of Code 2011 as a way for implementations to easily create and maintain a marker on the OpenMRS Atlas. The module has not yet been widely adopted for two reasons: (1) it has not been distributed as part of OpenMRS, since OpenMRS 1.10 was delayed and later changed, and (2) creating or updating a marker depends on the module running in a production system connected to the public internet.

This project aims to address both of these issues by making a version of the Atlas Module to be distributed within OpenMRS 2.0 and allowing an implementation's marker to be registered to an OpenMRS ID, allowing for a the marker to be created or revised outside of the module.

Project Champions

Skills Needed

  • Decent Java coding skills
  • Basic SQL skills
  • Some PHP experience will help

Objectives

  • New Features
    • Adapt the Atlas Module to run within OpenMRS 2.0
    • Allow markers to be filtered by type(s)
  • Marker Ownership
    • Refactor the Atlas Module and the OpenMRS Atlas website to register ownership of an implementation marker (via OpenMRS ID)
    • Provide a mechanism to "recover" control of a marker using the registered OpenMRS ID
    • Allow a user to link to an existing marker from within the Atlas Module, using their OpenMRS ID
  • Administration
    • Create administrative screen(s) for the Atlas Server to more easily manage markers

Extra Credit

  • New Features
    • Provide a tool to export a slide for presentation (e.g., using phantomjs to create slide-worthy image)
    • Provide an RSS with with last updated site
  • Marker Ownership
    • Allow a user to create their marker directly on the Atlas website
    • Allow a user to update or delete their marker directly on the Atlas website
    • Provide a mechanism to transfer ownership from one OpenMRS ID to another (registered owner specifies a new owner's OpenMRS ID)

Resources

Deliverables

  • Updated Atlas Module associating marker with OpenMRS ID with new functionality.
  • OpenMRS 2.0 Atlas Module integration.
  • Atlas website markers management functions + extra functionalities (markers filtering, color, …).
  • README in developer’s documentation explaining how are implemented new functionalities and Atlas Module App.
  • README in user documentation  explaining how to use Atlas Module App.

Communication Plan

  • Hangout meeting every monday and/or friday (~14:00-16:00)
  • Emails
  • IRC meetings
  • Gdoc for collaborative work.

Project Timeline

21 April – 18 May:

  • Getting familiar with Atlas Module and OpenMRS ID SSO

  • Fixing some Atlas related Tickets

  • Community bonding, participating in community events (Developers Forum, OpenMRS University, Hangout with mentor….).

19 May – 31 May:

  • Refactor Atlas Server with a php framework
  • Add global navbar on the top of Atlas
  • Add Sign In button for OpenMRS ID and OpenMRS ID SSO support for Atlas.

  • User can sign in successfully with his OpenMRS ID in Atlas Module using Multipass

1 June 1 – 30 June:

  • A user can create a new marker directly in the Atlas Server

  • A user can update, delete a marker created in the server. 

  • New administrative screens in Atlas Server to manage markers (move, remove outdated or invalid markers)

  • Extra features in Atlas Server : map exporting as a slide for presentation
  • Deploy Atlas Server to new prod host
  • Restablish marker fading feature

Mid term Eval

1 July – 12 July:

  • Atlas Module depends new UI Framwork
  • Add Atlas Server map in Atlas Module
  • User can authenticate in the module with his OpenMRS ID
  • An existing marker can be associated with an OpenMRS ID in Atlas Module

  • Atlas Module ported to OpenMRS 2.0 (whith a look like Google app style)

13 July – 26 July: 

  • Refactor the module
  • Make Atlas Module compatible accross OpenMRS 1.x and 2.x
  • RSS Feed with last updates in Atlas
  • Release Atlas Module 2.0 and deploy it to Modulus

10 August – 15 August:

  • Marker filtering by type or version

  • Marker Search by OpenMRS ID

16 August – 22 August:

  • Wrapping up project, final touches.

  • Writing Wiki and developer doc.

Mockups

Enter Atlas Module

Just click on the OpenMRS Atlas icon from OpenMRS Ref App.

Atlas Module

In my mind, Atlas Module just render the Atlas Server into OpenMRS app, adding admin function as enable/disable marker update, send or not statistics.

Home Page

As a user can create or edit markers directly in Atlas Server, Atlas Module homepage can be an embedded view of Alas Server (maybe with <iframe> HTML tags for example), or just a map with user markers (maybe better idea !)

OpenMRS ID sign-in is required



Link/Unlink a server to a site in the Atlas

Enable or Disable Automatic Update

Edit your marker, show your counts chose to display them in Atlas

Show what is sent to OpenMRS

Atlas Server

A Visitor


Atlas Server Login

Database

New database to manage markers created in Atlas Server and privileges