Deploy and Customize Ushahidi

From Foss2Serve
(Difference between revisions)
Jump to: navigation, search
 
(49 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
__NOTOC__
 
__NOTOC__
{| border="1"
 
|-
 
|'''Title''' || Deploy & Customize Ushahidi
 
|-
 
|'''Overview''' || Students will download Ushaidi and install it on either the cloud (using Heroku) or on a Linux machine.
 
|-
 
|'''Prerequisite Knowledge''' || Understand client/server concept, how to install software, how to use command line interfaces, basic XML concepts.
 
|-
 
|'''Learning Objectives''' || 1.  Implement and deploy Ushadidi server on either Heroku or Linux
 
|}
 
  
=== Background: ===
+
{{Learning Activity Overview
Is there background reading material?
+
|title=
 +
Deploy & Customize Ushahidi
 +
|overview=  
 +
Students will download Ushaidi and install it on either the cloud (using Heroku) or on a VM or on an actual Linux machine.
 +
|prerequisites=
 +
Understand client/server concept, how to install software, how to use command line interfaces, basic XML concepts.
 +
|objectives=
 +
# Implement and deploy a basic working Ushahidi server
 +
# Configure Ushahidi server
 +
# Deploy a Ushaihid client
 +
|process skills=
 +
''What process skills will the student practice while completing this activity?''
 +
}}
  
Are there other activities the student should have done first?
+
=== Background ===
  
What is the rationale for this activity?
+
''Is there background reading material?''
  
Include helpful hints to faculty here.
+
Students should read Ushahidi install documentation:  https://www.ushahidi.com/support/install-ushahidi
  
 +
Readings on client/server architecture.
  
=== Directions: ===
+
Readings on the platform used.
What should the student do?
+
  
 +
''Are there other activities the student should have done first?''
  
=== Deliverables: ===
+
Students should be familiar with Ushahidi and have examined or done an Ushahidi deployment. 
What will the student hand in?
+
Example deployments can be found at https://wiki.ushahidi.com/display/WIKI/Types+of+Maps
  
 +
''What is the rationale for this activity?''
  
=== Assessment: ===
+
This activity will give students a hands-on understanding of the Ushahidi server.
How will the activity be graded?
+
 
 +
''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.
 +
 
 +
=== Directions ===
 +
 
 +
''What should the student do?''
 +
 
 +
Instructions for installing Ushahidi can be found at [https://www.ushahidi.com/support/install-ushahidi https://www.ushahidi.com/support/install-ushahidi]
 +
 
 +
=== Deliverables ===
 +
 
 +
''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
 +
 
 +
=== Assessment ===
 +
 
 +
''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?
+
''How will learning will be measured?''
 +
 
 +
Learning will be measured through a reflective paper.
  
Include sample assessment questions/rubrics.
+
''Include sample assessment questions/rubrics.''
  
{| border="1" class="wikitable"
+
{| class="wikitable"
 
! Criteria
 
! Criteria
 
! Level 1 (fail)
 
! Level 1 (fail)
Line 43: Line 79:
 
! Level 4 (exceptional)
 
! Level 4 (exceptional)
 
|-
 
|-
| '''The purpose of the project'''
+
| '''Ushahidi installed'''
|  
+
| Does not run
|  
+
| Runs with stock configuration
|
+
| Runs with some configurations
|
+
| Runs and is completely configured
  
 
|-
 
|-
| '''Why the project is open source'''
+
| '''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
 
+
 
|}
 
|}
  
=== Comments: ===
+
=== Comments ===
What should the instructor know before using this activity?
+
''What should the instructor know before using this activity?''
  
What are some likely difficulties that an instructor may encounter 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?''
  
=== Additional Information: ===
+
Instructors must be aware of versions; these can change during the course.   
{| border="1"
+
|-
+
|'''ACM Knowledge Area/Knowledge Unit''' || What ACM Computing Curricula 2013 knowledge area and units does this activity cover? [[ACM_Body_of_Knowledge]]
+
|-
+
|'''ACM Topic''' || What specific topics are addressed? The Computing Curriucula 2013 provides a list of topics - https://www.acm.org/education/CS2013-final-report.pdf
+
|-
+
|'''Level of Difficulty''' || Is this activity easy, medium or challenging?
+
|-
+
|'''Estimated Time to Completion''' ||  How long should it take for the student to complete the activity?
+
|-
+
|'''Materials/Environment''' || What does the student need?  Internet access, IRC client, Git Hub account, LINUX machine, etc.?
+
|-
+
|'''Author''' || Who wrote this activity?
+
|-
+
|'''Source''' || Is there another activity on which this activity is based? If so, please provide a link to the original resource.
+
|-
+
|'''License''' || Under which license is this material made available? (http://creativecommons.org/licenses/)
+
|}
+
  
=== Suggestions for Open Source Community: ===
+
Installation procedures change often.
Suggestions for an open source community member who is working in conjunction with the instructor.
+
  
 +
There are many dependencies which must be installed before Ushahidi can be installed.  These dependencies can change during the project.
  
--------------------
+
=== Additional Information ===
This work is licensed under a
+
[http://creativecommons.org/licenses/by-sa/4.0/ Creative Commons Attribution-ShareAlike 4.0 International License]
+
  
[[File:CC_license.png]]
+
{{Learning Activity Info
 +
|acm unit=
 +
IM, information management, NC networking and communication
 +
|acm topic=
 +
Information Management Concepts, Networked Applications/client-server applications
 +
|difficulty=
 +
Basic configuration is easy, advanced configuration is medium.
 +
|time=
 +
2 hours
 +
|environment=
 +
Students need a github account and access to either Heroku or a Linux box that can be configured.
 +
|author=
 +
Alan Rea, John Barr, Ying Liu, Jiang Li, Jonathan Poritz
 +
|source=
 +
None
 +
|license=
 +
{{License CC BY SA}}
 +
}}
 +
 
 +
=== Suggestions for Open Source Community ===
 +
 
 +
Suggestions for an open source community member who is working in conjunction with the instructor.
  
[[Category: Learning_Activity]]
+
[[Category:Learning Activity]]
[[Category: LEARNING_ACTIVITY_SUBCATEGORY]]
+
[[Category:Use and Evaluate]]
 +
[[Category:Ushahidi]]
 +
[[Category:Good Draft]]

Latest revision as of 21:59, 7 September 2018


Title

Deploy & Customize Ushahidi

Overview

Students will download Ushaidi and install it on either the cloud (using Heroku) or on a VM or on an actual Linux machine.

Prerequisites

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:
  1. Implement and deploy a basic working Ushahidi server
  2. Configure Ushahidi server
  3. Deploy a Ushaihid client
Process Skills
Practiced

What process skills will the student practice while completing this activity?


Background

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.

Directions

What should the student do?

Instructions for installing Ushahidi can be found at https://www.ushahidi.com/support/install-ushahidi

Deliverables

What will the student hand in?

  1. Students will provide the URL of their server.
  2. Students will provide a 3 page reflection that includes
    1. challenges encountered
    2. reference to the instructions that they followed and comments on these
    3. suggestions for others installing
    4. configuration options that they used

Assessment

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

Comments

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.

Additional Information

ACM BoK
Area & Unit(s)

IM, information management, NC networking and communication

ACM BoK
Topic(s)

Information Management Concepts, Networked Applications/client-server applications

Difficulty

Basic configuration is easy, advanced configuration is medium.

Estimated Time
to Complete

2 hours

Environment /
Materials

Students need a github account and access to either Heroku or a Linux box that can be configured.

Author(s)

Alan Rea, John Barr, Ying Liu, Jiang Li, Jonathan Poritz

Source

None

License

This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License

CC license.png


Suggestions for Open Source Community

Suggestions for an open source community member who is working in conjunction with the instructor.

Personal tools
Namespaces
Variants
Actions
Events
Learning Resources
HFOSS Projects
Evaluation
Navigation
Toolbox