Deploy and Customize Ushahidi
Deploy & Customize Ushahidi
Students will download Ushaidi and install it on either the cloud (using Heroku) or on a VM or on an actual Linux machine.
Understand client/server concept, how to install software, how to use command line interfaces, basic XML concepts.
|Learning Objectives||After successfully completing this activity, the learner should be able to:
|Process Skills Practiced||
What process skills will the student practice while completing this activity?
Is there background reading material?
Students should read Ushahidi install documentation: https://www.ushahidi.com/support/install-ushahidi
Readings on client/server architecture.
Readings on the platform used.
Are there other activities the student should have done first?
Students should be familiar with Ushahidi and have examined or done an Ushahidi deployment. Example deployments can be found at https://wiki.ushahidi.com/display/WIKI/Types+of+Maps
What is the rationale for this activity?
This activity will give students a hands-on understanding of the Ushahidi server.
Include helpful hints to faculty here.
Installing on Heroku is very simple and can be done without configuration or through a terminal with configuration.
Installing on an actual Linux box can be challenging (or impossible) without previous Linux experience.
What should the student do?
Instructions for installing Ushahidi can be found at https://www.ushahidi.com/support/install-ushahidi
What will the student hand in?
- Students will provide the URL of their server.
- Students will provide a 3 page reflection that includes
- challenges encountered
- reference to the instructions that they followed and comments on these
- suggestions for others installing
- configuration options that they used
How will the activity be graded?
Instructor will go to the URL and test the deployment.
Students will perform an installation by following other student's instructions.
How will learning will be measured?
Learning will be measured through a reflective paper.
Include sample assessment questions/rubrics.
|Criteria||Level 1 (fail)||Level 2 (pass)||Level 3 (good)||Level 4 (exceptional)|
|Ushahidi installed||Does not run||Runs with stock configuration||Runs with some configurations||Runs and is completely configured|
|Reflection||No information provided||Paper just provides available instructions and contains no hints or reflection||Paper provides enough information for a new user to perform a successful installation||Paper provides rich information and hints and reflections on the process that the student followed|
What should the instructor know before using this activity?
Instructor should perform the installation prior to the start of the class.
What are some likely difficulties that an instructor may encounter using this activity?
Instructors must be aware of versions; these can change during the course.
Installation procedures change often.
There are many dependencies which must be installed before Ushahidi can be installed. These dependencies can change during the project.
| ACM Body of Knowledge
Area & Unit(s)
IM, information management, NC networking and communication
Information Management Concepts, Networked Applications/client-server applications
Basic configuration is easy, advanced configuration is medium.
|Environment / Materials||
Students need a github account and access to either Heroku or a Linux box that can be configured.
Alan Rea, John Barr, Ying Liu, Jiang Li, Jonathan Poritz
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License
Suggestions for Open Source Community
Suggestions for an open source community member who is working in conjunction with the instructor.