Stage 2 Activities/2.3 OpenMRS
Contents |
Planning for HFOSS Participation
Workshop Participants: Chris, Shamsi, Barrett, Kiran, Steve, Ruby, Darci
Planning Stage 3 Activities
Meetings
1:00PM EST on the 2nd Friday of the month via IRC using the foss2serve channel
Meeting Logs
December 12, 2014 1pm IRC Meeting -- Complete Meeting Log - Meeting Minutes
January 16, 2015 1pm IRC Meeting -- Complete Meeting Log - Meeting Minutes
Next Meeting Scheduled for February 13 -- 1PM via IRC
Please answer each of the following questions as it relates to your activity.
1. Identify the course(s) the activity would be appropriate for.
- We are focusing on the Android app for OpenMRS (OpenMRS Client)
2. Briefly describe the activity.
- Expose student to the OpenMRS Android client and have them reverse engineer the design of the module.
3. How much time do you expect the HFOSS activity to take (# classes, # homework assignments, # lab activities, etc.)? Will the activity be completed in class or out of class?
- 3 class meetings to start. (75 minute classes) plus a homework assignment (and it that produces a good artifact, the design, then students have to interact with the community to get it accepted).
- Followup in-class activity to create a single high-quality design document that incorporates all of their designs and can be contributed back.
4. How does this activity relate to course goals/objectives?
- Creating a design is a course objective.
- They learn to evaluate a design based on standards for design.
5. What will students submit upon completion of the activity?
- This will include the architecture, UML of the structure (class diagrams). Also analysis of design-related concepts: coupling, cohesion. Perhaps identifying design patterns.
6. How will you assess the submission?
- Completeness
- Quality
- Correct notation
- Use of UML tools
7. List any question or concerns you have about implementing your activity.
- Prerequisite knowledge (Android).
- There are a variety of code-to-UML tools available; how do we know students won't use them?
8. What type of support will you need to implement your activity?
- Some android devices. And we will probably tap into The Community.
Activity Template
Reverse Engineering Activity (Android App)
Specific Tasks
Darci has some homework to introduce OSS, for CS2 students, field trips to OSS sites.
Kiran has a group that meets weekly, see pointer below.
suggestion: take Darci's first activity (intro to OpenSource.org) and modify it for ourselves (and bring back to the group).
problem: we are already out of sync. And once work is done and posted, it's hard to repeat. But Chris will do it first off line, so ... we can repeat it later. And we can do different modules.
Resources
Getting started as a developer: https://wiki.openmrs.org/display/docs/Getting+Started+as+a+Developer
OpenMRS code review guide: https://wiki.openmrs.org/display/docs/Code+Review
Android Client page, complete with developer contact info: https://wiki.openmrs.org/display/projects/OpenMRS+2.x+Android+Client
Codebase : https://github.com/openmrs/openmrs-contrib-android-client
https://wiki.openmrs.org/display/docs/Documentation+Playground
University Call where you can get more information about OpenMRS from core developers: https://wiki.openmrs.org/display/RES/OpenMRS+University
Use: https://www.writelatex.com/ to create/collaborate on assignments
OpenMRS 2.x Android Client wiki page: https://wiki.openmrs.org/display/projects/OpenMRS+2.x+Android+Client
Alternative Android virtual devices:
- Local simulator: http://www.genymotion.com
- Cloud simulator: http://www.manymo.com
Setup Guide and Issues
Installing OpenMRS android app in Eclipse 1- Download/fork a copy from git 2-Make sure you are using Android API 19 release 3- Use 1.6 JDK
Fixing the emulator hardware error : http://stackoverflow.com/questions/26355645/error-in-launching-avd
OpenMRS Android app troubleshooting guide
Symptom: cannot find appcompat.jar and/or gridlayout.jar and/or odk.collect.jar Solution: for DashboardActivity, open up "Properties" then "Android"; in the Library panel, remove the libraries that have a red X next to them; then click Add and add the appcompat, gridlayout, and/or odk.collect properties (you need all three)
Symptoms: Eclipse complains that it cannot build the DashboardActivity app ("could not initialize class com.android.xml.AndroidXPathFactory"), and code cannot resolve class R Solution: revert from JDK 1.7 back to 1.6; I had to actually uninstall 1.7, not just use 1.6 in this project
Symptom: NullPointerException in OpenMRS.onCreate Solution: make sure AVD has an SD card (I set mine to 1024MB)
Symptom: tests will not compile; org.openmrs.client.utilities.DateUtils not found Solution: add DashboardActivity project to build path
Running the OpenMRS Android app:
When prompted for URL, enter: http://devtest02.openmrs.org:8080/openmrs
Username: admin Password: Admin123