Administration Tools for OpenMRS 2.0

2014 Internship Project

This project is being considered as a potential project for 2014 Internships. If you are a potential intern and are interested in working on this project, please discuss it in detail with the mentor(s) listed here before submitting your internship proposal.

Primary mentor

@Wyclif Luyima

Backup mentor

@Darius Jazayeri

Assigned to

@Ujjwal Arora

Background

Reference Application is a state of the art implementation of OpenMRS, which may serve as a solid base for new implementations. It is designed using the latest UI 2.x and App Framework and is related to

Error rendering macro 'jira' : Unable to locate Jira server for this macro. It may be due to Application Link configuration.
, which make it easy to add new functionality as small apps in a similar fashion to mobile applications. However, lots of the administrative tasks e.g concept, form, Setting (formerly Global Property from platform 1.8 downwards), roles, locations and privilege management are still being done from the legacy user interface which is accessed via the Advanced Administration App, these tasks need to be ported to the reference application too.

Abstract

This project aims to add several high priority administrative tasks to the Reference Application.

Project Champions

  • @Darius Jazayeri

  • @Wyclif Luyima

Skills Needed

  • Decent Java coding skills

  • Basic Javascript and SQL skills

  • A keen interest in developing good UIs

Objectives

  • Add User Account Manager tool  see https://tickets.openmrs.org/browse/RA-61

  • Manage Locations (including tagging those location, adding and editing location attributes)

  • Add advanced settings management tool(s), add custom pages for managing specific Settings (formerly Global Properties from platform 1.8 downwards) (e.g. all the security.* GPs together nicely in a Security Settings page)

Therefore, this project would involve:

  •           User management app

  •            Location management app

  •            Advanced Settings

  •            Records management app (extra credit)

Extra Credit

  • Add a new page that lets you see all data associated with a patient/visit/encounter record (including voided data) in some ugly table format, mainly for an administrator to be able to unvoid data.

Design

Hierarchy of various tools and apps in Administration module

Administration Tools will be built on UI Framework, which form the base of reference application. The module will have standard module dependency on “uiframework” module. The UI Framework is built on Spring MVC and implements Groovy templates for views. So, the views will be provided by .gsp files. Existing fragments of UI 2.0 will be used and new fragments will be created wherever required. 

 

Deliverables

 

Communication Plan

Weekly meetings - ~10 am EST every Wednesday

Emails, IRC

 

Project Timeline

  • 21 April – 15 May : Understand App Framework and UI 2.x deeply, learn required technologies, get to know the mentors, prepare working on the project

  • 19 May – 26 May : Will not be available due to the final exams at university

  • 26 May – 22 June : Create module, implement User Manager

  • 23 June – 27 June : Midterm evaluation

  • 28 June – 15 July : Implement Location manager

  • 16 July – 1 Aug : Implement Advanced Settings + Record Manager (possibly)

  • 2 Aug – 7 Aug : Finalize UI

  • 8 Aug – 18 Aug Write tests, prepare documentation

  • 19 Aug – 22 Aug : Final evaluation


UI Mockups

1.       1. Administration App Homepage

 

2. User manager Dashboard

 

3. findUser App

 

4. addUser App

 

5. Location manager Dashboard

 

6. locationTags App

 

7. Advanced Settings Tool

 

8. Security Settings tool

 

9. Record Manager tool

 

Resources