OpenMRS Architecture activity
|Title||OpenMRS Architecture case study|
|Overview||In this activity students use OpenMRS Architecture as a case study to identify the architecture pattern used and study the components of web architecture.|
|Prerequisite Knowledge||Design and architecture|
Open-MRS is an open source electronic medical record system (EMR) originally designed for developing countries. Go the open MRS website https://wiki.openmrs.org/display/docs/Technical+Overview and http://write.flossmanuals.net/openmrs-developers-guide/architecture/ . The architectural design of the Open MRS system is described in these pages.
Study the architectural diagram and answer the following questions:
- What architecture style is used in Open-MRS architecture? Justify your answer.
(Grading criteria: your answer should explain how the Open-MRS architecture satisfies the constraints and rules for the chosen architecture style)
- What technologies are used on the client side?
- What technologies are used on the server-side?
- What is Spring? (use Google to answer. Include your reference)
- What is Hibernate? (use Google to answer. Include your reference)
- What language is used for server-side programming in OpenMRS?
- A report including answers
Notes for Instructors
|Criteria||Level 1 (fail)||Level 2 (pass)||Level 3 (good)||Level 4 (exceptional)|
|Understands what is a Open API and how is different that open source||Little to no understanding shown; Answers are made up or unrelated; Didn't read material||Limited understanding, showing that they read some, but did not dig very deep||Showed that they have done the readings with limited understanding||Clearly explain the answer to each question with supporting examples|
|Testing FEMA APIs||No testing||Testing with bad results||Testing with good results||Testing multiple APIs with the correct result|
|Create an Android App that retrieves data from a REST API||Did not attempt to create the App||App retrieves data but data is not parsed||App retrieves data and parses the json data||App retrieves data, parses data and displays data|
|An interactive interface is develped to display data||Did not attempt to create an interface||Create a limited interface for the app||Create a complete inteface displaying all retrieved data||Create an efficient interface with the ability to search/filter the data|
Android Development, JSON data model
|ACM Knowledge Area/Knowledge Unit|||
|ACM Topic||Software Engineering|
|Level of Difficulty||Medium- Challenging|
|Estimated Time to Completion||2 hours|
|License||Creative Commons CC-BY|
Suggestions for the Open Source Project
Suggestions for an open source community member who is working in conjunction with the instructor.
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License