OpenMRS Design Reverse Engineering Activity (Android App)
Contents |
Preparation:
Description | Expose student to the OpenMRS Android client and have them reverse engineer the design of the module. |
Source | Darci Burdge, Steven P. Crain, Ruby ElKharboutly, Barrett Koster, Shamsi Moussavi, Chris Murphy |
Prerequisite Knowledge | Java, Android, UML, dynamic and static modeling |
Estimated Time to Completion | 6-8 hours |
Learning Objectives |
|
Materials/Environment | Access to Internet, installed Eclipse with correct version |
Rights | This activity is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. |
Turn In | }
Background:OpenMRS is... The OpenMRS Android app allows a user to... In this assignment, you will familiarize yourself with the implementation of the Android app by reviewing and documenting the software architecture and class design Directions:IDE installation
The download and install take some time…be patient!! Once the download is complete, you can close the SDK Manager.
Installing OpenMRS Android project
Running the OpenMRS Android app:
Early Code InvestigationAt this stage of the project I expect you to get an early sense of what the project is about. You should create a report that describes the following:
Grading Rubric :
====Detailed Design==== Produce a report that documents the Detailed Design of the software. Your target audience is to be a junior programmer would like to contribute to the project as well as a developer who is somewhat but not intimately familiar with your project. A junior programmer should be able to correctly implement any package or module given your Detailed Design. =====Report===== Introduction and Overview About 1 to 3 pages summarizing the purpose of report, its organization, and its salient conclusions. A person should be able to read just the abstract or just the introduction and have a good idea what is in the rest of your report. Detailed Design You are to give, for each module, a clear specification for the module, such that a junior programmer can implement that module. The Detailed Design will include a clear description of the behavior of the module and its externally visible interface. A complete description of the static and dynamic modeling of the system including class diagrams, sequence for main scenarios. |