2014 Internship Project
Primary mentor | |
Backup mentor | |
Assigned to |
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, 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, global property, 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
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)
- Add advanced settings management tool(s), add custom pages for managing specific global properties (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.
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
- Getting started
- New UI framework
- Using new UI framework in your module
- UI framework step by step tutorial
Deliverables
Communication Plan
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
Therefore, this project would involve:
· User management app
· Location management app
· Advanced Settings
· Records management app (extra credit)