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 and is related to
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, adding and editing location attributes)
- 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.
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
- Getting started
- New UI framework
- Using new UI framework in your module
- UI framework step by step tutorial