wiki:Event/2011/GCI

Version 89 (modified by Michael Howden, 13 years ago) ( diff )

--

Table of Contents

  1. Code
    1. Fixing Bugs
      1. Hard
      2. Easy
    2. Enhancements
      1. Projects/Basic#ScaleUploadedImages
      2. Build library(ies) to integrate Emergency Data Exchange Language …
      3. Add a "nice_name" for resources to the s3.crud_strings[tablename]
      4. Migrating data from models/zzz_1st_run.py to prepop
    3. Packaging
      1. Easy (Fran): [InstallationGuidelines/Windows/User Windows Installer …
      2. Easy (Fran): [InstallationGuidelines/Windows/Developer/Installer …
  2. Documentation
    1. Test Developers Installation Documentation for Windows
    2. Test Developers Installation Documentation for Mac
    3. Test Developers Installation Documentation for Linux
    4. Test Customization Documentation
    5. Test Building a New Module Documentation
    6. Add Screen Shots to Building a New Module Documentation
    7. Prepare data model relationship entity diagram for each module in …
  3. Outreach
    1. Design Trac template to align with: …
    2. Videos
      1. What is Sahana Eden?
      2. How to start developing in Sahana Eden
      3. How to deploy Sahana Eden
    3. Give a presentation on Sahana Eden to a Group
    4. Extend an IRC Bot to automatically greet new people who join the …
  4. Quality Assurance
    1. Report 2 Bugs in Sahana Eden
    2. Destructive testing of a Sahana Eden module
    3. Develop a test cases for a Sahana Eden module
    4. Test a Sahana Eden module for correct access authorization
    5. Create a Selenium IDE script for a Sahana Eden application
  5. Research
    1. Create A Disaster Scenarios
      1. Easy Disaster Scenario
      2. Medium Disaster Scenario
      3. Hard Disaster Scenario
    2. Map elements between EDXL-SITREP and EDXL-RM
    3. Write blueprint to add transliteration to text entry controls
    4. Provide UTF8 names for Locations exported from GADM in Vietnam
  6. Training
    1. Construct FAQ
    2. Produce Video screen casts from book chapters
  7. Translation
    1. Translating key phrases
    2. Review code to for quality of localized strings
  8. User Interface & Usability
    1. Provide feedback on Workflows in Sahana Eden
    2. Design a better homepage for Sahana Eden (wireframes)
    3. Design a (better) GUI for the CAP broker
    4. Write a blueprint for a GUI (web) tool to build and test XSL files

Tasks for GCI

Mentors: Tasks should be migrated to "Tasks to Upload" sheet on the mentor roster & task list spreadsheet.

Info for mentors: http://code.google.com/p/google-code-in/wiki/GCIAdminMentorInformation

Code

Fixing Bugs

Migrated

Hard

http://eden.sahanafoundation.org/report/1 Pick a bug report from http://eden.sahanafoundation.org/report/1, try to reproduce the issue in a local instance, fix the problem and submit a patch to the ticket on Trac, then notify the Sahana-Eden mailing list about your patch for verification.

Easy

http://eden.sahanafoundation.org/report/18 Pick a bug report from http://eden.sahanafoundation.org/report/18, try to reproduce the issue in a local instance, fix the problem and submit a patch to the ticket on Trac, then notify the Sahana-Eden mailing list about your patch for verification.

Enhancements

Projects/Basic#ScaleUploadedImages

Fran. Medium
Migrated

Build library(ies) to integrate Emergency Data Exchange Language Distribution Element

Migrated
Difficulty : HARD proposed by: | Nuwan
Specific : | EDXL-DE is the final wrapper (envelope) of all | EDXL data package. We may be delivering a EDXL Resource Management (RM) information and Situational Reporting (SITREP) information to the managers of several emergency organizations. The DE will contain who, when, and where those RM and SITREP data parcels would be delivered. Every EDXL message (data package) must carry this information. Otherwise, it cannot use available distribution methods and would need to rely on its own protocol; that's not very user friendly.
Measurable: It is purely a coding task that involves playing with XML and developing a class, possibly within or using the ??? 3R ??? framework It is basically a set of procedures for packing and unpacking EDXL-DE wrapped data.
Attainable: run through the steps
Step 1 :: select one of the existing EDXL-based applications in Eden, I recommend the EDXL-RM
Step 2 :: discuss each of the attributes/elements; then determine how EDXL-DE would be added to EDXL-RM as a pop-up GUI.
Step 3 :: create some example XML files to get a feel for the inputs and outputs
Step 4 :: write code to add to take the inputs EDXL-RM and EDXL-DE to package the data for delivery
Step 5 :: test the code, fix bugs, and generalize the functions
Step 6 :: Apply to EDXL-HAVE and EDXL-SITREP to generalize the library
Relevant : Applies to Sahana Interoperability policy. Present developments to investigate are: HAVE, RM, and SITREP http://www.oasis-open.org/standards#edxl
Time-bound: If steps 1 - 4 are completed that can be a full accomplishment; additional work is a bonus
Evaluate : Produce XML files with the EDXL-DE element appended to the EDXL-RM, SITREP, or HAVE
Reevaluate: Use an API to add and strip the EDXL-DE to any EDXL data standard. Use the same set of XML files to run through this process

Add a "nice_name" for resources to the s3.crud_strings[tablename]

http://eden.sahanafoundation.org/ticket/1013 Migrated

Migrating data from models/zzz_1st_run.py to prepop

Not migrated

Packaging

Easy (Fran): Windows Installer for End-Users

Migrated
http://eden.sahanafoundation.org/ticket/1014

Easy (Fran): Windows Installer for Developers

Migrated
http://eden.sahanafoundation.org/ticket/1015

Documentation

Test Developers Installation Documentation for Windows

Follow the documentation on http://eden.sahanafoundation.org/wiki/InstallationGuidelines to install a developer's instance of Sahana Eden on your Windows OS. Once you have completed send an email to the groups.google.com/group/sahana-eden list stating:

  1. Summary of the exact steps you tool
  2. Screenshots of Sahana Eden installed on your OS
  3. How long it took you?
  4. What was the most difficult part?
  5. 5 ways the documentation be improved - these need to be as specific as possible - does content need to be added? Clarified? Simplified? Is there a need for pictures (of what?)?. You will be encouraged to edit the documentation on the Wiki to make these improvements yourself.
  6. Any other questions you may have about Sahana Eden

Migrated

Test Developers Installation Documentation for Mac

Follow the documentation on http://eden.sahanafoundation.org/wiki/InstallationGuidelines to install a developer's instance of Sahana Eden on your Mac OS. Once you have completed send an email to the groups.google.com/group/sahana-eden list stating:

  1. Summary of the exact steps you tool
  2. Screenshots of Sahana Eden installed on your OS
  3. How long it took you?
  4. What was the most difficult part?
  5. 5 ways the documentation be improved - these need to be as specific as possible - does content need to be added? Clarified? Simplified? Is there a need for pictures (of what?)?. You will be encouraged to edit the documentation on the Wiki to make these improvements yourself.
  6. Any other questions you may have about Sahana Eden

Migrated

Test Developers Installation Documentation for Linux

Follow the documentation on http://eden.sahanafoundation.org/wiki/InstallationGuidelines to install a developer's instance of Sahana Eden on your Linux OS. Once you have completed send an email to the groups.google.com/group/sahana-eden list stating:

  1. Summary of the exact steps you tool
  2. Screenshots of Sahana Eden installed on your OS
  3. How long it took you?
  4. What was the most difficult part?
  5. 5 ways the documentation be improved - these need to be as specific as possible - does content need to be added? Clarified? Simplified? Is there a need for pictures (of what?)?. You will be encouraged to edit the documentation on the Wiki to make these improvements yourself.
  6. Any other questions you may have about Sahana Eden

Migrated

Test Customization Documentation

Follow the documentation on http://en.flossmanuals.net/sahana-eden/customisation/ to customize your local instance of Sahana Eden. Once you have completed send an email to the groups.google.com/group/sahana-eden list with:

  1. Screen Shots of your customized module
  2. How long it took you?
  3. What was the most difficult part?
  4. 5 ways the documentation be improved - these need to be as specific as possible - does content need to be added? Clarified? Simplified? Is there a need for pictures (of what?)?. You will be encouraged to edit the documentation on the Wiki to make these improvements yourself.
  5. Any other questions you may have about Sahana Eden

Migrated

Test Building a New Module Documentation

Follow the documentation on http://en.flossmanuals.net/sahana-eden/building-a-new-application/ to customize your local instance of Sahana Eden. Once you have completed send an email to the groups.google.com/group/sahana-eden list with:

  1. Screen Shots of your new module
  2. How long it took you?
  3. What was the most difficult part?
  4. 5 ways the documentation be improved - these need to be as specific as possible - does content need to be added? Clarified? Simplified? Is there a need for pictures (of what?)?. You will be encouraged to edit the documentation on the Wiki to make these improvements yourself.
  5. Any other questions you may have about Sahana Eden

Migrated

Add Screen Shots to Building a New Module Documentation

Follow the documentation on http://en.flossmanuals.net/sahana-eden/building-a-new-application/ to customize your local instance of Sahana Eden. Once you have completed send an email to the groups.google.com/group/sahana-eden list with:

  1. Screen Shots of your new module. You will need to take the relevant sections of these screen shots and add them into the Book as examples
  2. How long it took you?
  3. What was the most difficult part?
  4. 5 ways the documentation be improved - these need to be as specific as possible - does content need to be added? Clarified? Simplified? Is there a need for pictures (of what?)?. You will be encouraged to edit the documentation on the Wiki to make these improvements yourself.
  5. Any other questions you may have about Sahana Eden

Migrated

Prepare data model relationship entity diagram for each module in Sahana Eden

Can use MySQL workbench to reverse-engineer the Eden database into an ERR diagram, then tidy up to show the actually important information for developers (e.g. hide meta-fields, auth references and similar, annotate the foreign keys for links, move objects so they don't overlap too much), for an example see http://pub.nursix.org/eden/err_model.png. Migrated

Outreach

Design Trac template to align with: wiki.sahanafoundation.org/doku.php/foundation:branding

Not migrated

Videos

What is Sahana Eden?

Produce a screencast introduction / overview for Sahana Eden. The screen cast should be focused at potential Sahana Eden users and promote the value of using Sahana Eden. 5-10 min.
http://eden.sahanafoundation.org/wiki/ScreencastHowto Migrated

How to start developing in Sahana Eden

(Developer Focused - high level overview)

http://eden.sahanafoundation.org/ticket/1033 http://en.flossmanuals.net/sahana-eden/installation Migrated

How to deploy Sahana Eden

(Deployer Focused - high level overview) http://eden.sahanafoundation.org/ticket/1032 http://en.flossmanuals.net/sahana-eden/installing-a-developer-environment Migrated

Give a presentation on Sahana Eden to a Group

Hard. Give a presentation about Sahana Eden Open Source Disaster Management Software to a group of people.

  1. Prepare your presentation (notes/PowerPoint/demo) and share with the Sahana Eden MailingList
  2. Deliver your presentation. If possible record this on video.
  3. Report back to the Sahana Eden MailingList
    • Who attended?
    • What were the most interested in?
    • What questions did they ask?
    • How would you improve you presentation next time?

'Migrated

Extend an IRC Bot to automatically greet new people who join the sahana-eden channel

Migrated
Note this is for the purpose of outreach, but is a coding task.
We don't want to miss new people who show up on our IRC channels! But sometimes we're just not watching the chat. So we want a bot that will:

  • Send a greeting to new nicks when they appear on a channel. For this, it will need to record which nicks it has already greeted.
  • Ping a specified set of nicks when a new nick appears. (These would be nicks of people who can help with questions, e.g. for a project channel like #sahana-eden, ping the Eden PMC.)
  • We suggest starting with Sean Palmer's IRC bot, phenny, or logger, loggy. Afterward, you can offer your code back to Sean Palmer.
  • As an added benefit, perhaps the same bot can log the channel (currently we use loggy for this).

Quality Assurance

Report 2 Bugs in Sahana Eden

Following http://eden.sahanafoundation.org/wiki/BugReportingGuidelines Migrated

Destructive testing of a Sahana Eden module

Test the forms and screens of a Sahana Eden module for appropriate/consistent response to user errors (e.g. invalid or malformed input, accidental navigation actions, invalid URL, etc...). Document all the steps that you've taken and report any bugs you've found in the process. Migrated

Develop a test cases for a Sahana Eden module

Write up the steps to perform the user tasks in the module, automate the tests using Selenium IDE, provide test data where useful. Migrated

Test a Sahana Eden module for correct access authorization

Find out and document the common business rules for access authorization to the module, test the module for the consistent implementation of these rules and document the results Migrated

Create a Selenium IDE script for a Sahana Eden application

Using Selenium IDE create test scripts for a module see: http://eden.sahanafoundation.org/ticket/1035 (hard) Migrated

Research

Create A Disaster Scenarios

The objective is to collect real or at least realistic data which can be used to demonstrate some of the capabilities of Sahana Eden. The task requires a little research on the disaster risk reduction, preparedness and response capabilities in your location.

You will need to collect some data and save them in a format that can be imported directly into Sahana Eden through the Pre-Populate functionality. This will be achieved by creating a number of CVS files and conforming strictly to the format described in each file.

Note: When adding personal information it is essential that the data have been modified such that it can not be used to identify any real person. As a general rule all email addresses should be from the example.com domain, thus the email address for Joe Bloggs might be joe.bloggs@example.com, phone numbers should look realistic but should not be true numbers.

Within Eden all email addresses must be unique, so as to avoid any clash with existing data or data generated by other participants include your melange id immediately before the @, thus for an id of 2154, joe blogg's email would become joe.bloggs2154@example.com.

To complete the task you will need to meet the following minimum specifications:

Each scenario must contain a brief description. This must be no more that 500 words (approximately 1 page of text) describing the following:

  • The setting, location (country province)
  • The type of disaster the organistions are preparing for
  • Any known problems with existing disaster response capabilities

Template file are held in the attached archive file "research disaster scenario.zip"

Easy Disaster Scenario

Type of resource Number of entries File
Organisation 3org/organisation.csv
Office 6 org/office.csv
Warehouse 3 org/office.csv
Staff 50 hrm/person.csv

The recommended means of testing for this task is, to successfully open as a spreadsheet file, but saved as a CSV file, however if the student is able to set it up in a pre-populate folder that will make up for any significant shortfall in the entries. Migrated

Medium Disaster Scenario

Type of resource Number of entries File
Organisation 4 org/organisation.csv
Office 8 org/office.csv
Warehouse 6 org/office.csv
Staff 70 hrm/person.csv
Staff skills 200 hrm/person.csv
Assets 30 asset/asset.csv
Stock 120 inv/inv_item.csv

The recommended means of testing for this task is, attempt to import the data into eden using the menus. However if the student is encouraged to try and set it up in a pre-populate folder. Migrated

Hard Disaster Scenario

Type of resource Number of entries File
Organisation 5 org/organisation.csv
Office 10 org/office.csv
Warehouse 8 org/office.csv
Staff 100 hrm/person.csv
Staff skills 200 hrm/person.csv
Assets 40 asset/asset.csv
Stock 120 inv/inv_item.csv
Request for stock items 120 req/req.csv

Migrated

The recommended means of testing for this task is, attempt to import the data in a pre-populate folder. The data must be delivered in a single folder suitable for pre-populate even if the student was unable to run the pre-populate task.

Map elements between EDXL-SITREP and EDXL-RM

Migrated
Difficulty : Nuwan:EASY, Pat:HARD Proposed by: | Nuwan
Specific : There are several elements within the | EDXL-SITREP data standard that are identical to that of | EDXL-RM. The objective is to create a descriptive table of those elements that a programmer can use to develop a set of procedures to strip the RM data from SITREP to manage records in the relational database
Measurable : Requires diligently investigating each and every data element then comparing them with the two data standards SITREP and RM. Requires knowledge of data types and XML. If not, this exercise will help the student learn about XML and data standards
Attainable :
Step 1 :: Go through EDXL-RM and EDXL-SITREP documentations
Step 2 :: create example files to get an understanding of the data and structure
Step 3 :: develop the table with RM and SITREP elements with a description
Step 4 :: develop a simple XSL file to strip the RM data from SITREP
Relevant : Applies to Sahana interoperability policy. Given that Eden does support resource and incident management, it is important to derive the response resources and resource requirements from situational reports. This function would help automate some of those data extraction functions. That requires integrating the SITREP and RM components with underlying Eden schema
Time-bound : The exercise of understanding the data standards and mapping the elements should not take more than one week. developing a XSL to test the mapping may take another week, depending on the level of expertise with XML. (NB this is far too large a task for GCI. -- Pat)
Evaluate : The mapping table is the determining output. However, the example RM and SITREP files are also required.
Reevaluate : If the XSL transformation is developed, then the mapping can be tested with the sample RM and SITREP files

Write blueprint to add transliteration to text entry controls

Migrated
Difficulty : Nuwan: MEDIUM, Pat: HARD
Proposed by: | Nuwan
Specific : For local language text entry one can use a native language keyboard with native unicode character set or use transliteration to allow entering the native word phonetically. for example with | Google Transliteration Beta or other plug-in like [ http://www.ucsc.cmb.ac.lk/ltrl/services/feconverter/t1.html | USCS's Real-Time Unicode Converter]
Measurable : Users in Sri Lanka, for example, prefer Sinhala or Tamil languages. Making the option for them to turn on transliteration in Sahana to enter critical information in the local language is an important usability aspect.
Attainable :
Step 1 :: research the available Python/web2py transliteration engines
Step 2 :: trial/experiment with each one to determine the best
Step 3 :: develop a set of recommendations for embedding a generic transliteration engine in Eden
Step 4 :: discuss the recommendations with Sahana community
Step 5 :: document the specifications for developing the agreed on transliteration functionality
Relevant : In community-based disaster management literacy skills including English is poor. Important to develop flexible usable software for inclusiveness
Time-bound : No more than a few days to research the Internet. Another several days to discuss and finalize on the design specifications. Evaluate : The recommended design would be discussed by the community to evaluate its workability.
Reevaluate : Validate the final specifications document.

Provide UTF8 names for Locations exported from GADM in Vietnam

'Migrated
Mentor: Fran

  • Original Source for Boundaries: GADM
    • L1 names cleaned-up: VNM_L1.csv
    • L2, L3 & L4 names which need cleaning: VNM_adm4.7z (Focus on L2 1st, then L3, then finally L4 if you can)
  • Potential Source for UTF-8 Names: Wikipedia

Training

Construct FAQ

Not migrated

  • 2 x Construct FAQ (From personal experience, mailing list, IRC)

Produce Video screen casts from book chapters

'Migrated

Translation

Translating key phrases

'Migrated
Each task consists of a language file (a spreadsheet) of about 100 phrases, see the attachments at the bottom of this page, masterLanguageFile1.csv, masterLanguageFile2.csv and masterLanguageFile3.csv. This file needs to be translated to the target language, with the translation in the target column.

Each phrase is related to data displayed on screens on the default home page, the registration page the login and out process and the personnel profile.

Depending upon the target language some of these phrases have already been translated but you don't need to worry about what has and what has not been translated.

Do not use an automatic translation service, when these phrases are being translated the meaning also needs to be retained. If you are unsure of the meaning, contact a mentor via IRC for assistance, and continue with other phrases, until you get a reply.

Some phrases contain a special sequence as follows: %(some_name)s this sequence must be retained within the translated string. The sequence always starts with a %( combination and ends with a ) followed by a singe letter, normally a s. As already stated this sequence must be retained exactly as written but the order within the phrase may change, depending upon the sentence structure of the target language. Again, if you are unsure contact a mentor via IRC for assistance.

To complete a task you should make an effort to translate all phrases but occasionally it is not possible to translate some phrases. A task will be accepted so long as more than 90% have been translated and a reasonable explanation, of why the untranslated phrases were left, is provided. The final say on this is will be left up to the mentor.

Review code to for quality of localized strings

'Migrated
Check for:

  • Avoid concatenation of localized strings - use %(variable_name)s instead
  • Avoid non keyboard characters (Excel doesn't handle these when it is used to manage translations)
  • The use of consistent language, eg. Don't use different strings that say/mean the same thing

This task will require you to submit 3 fixes OR review 5000 lines worth of code (specify which files when you submit) from either the models, views or controllers.

User Interface & Usability

Provide feedback on Workflows in Sahana Eden

Not migrated

Design a better homepage for Sahana Eden (wireframes)

Not migrated

Design a (better) GUI for the CAP broker

Migrated

Difficulty : Nuwan:MEDIUM, Pat:HARD Proposed by: | Nuwan

This is for Common Alerting Protocol (CAP) with capabilities for multi-language alerting and multi-media delivery. Use Agasti CAP Broker as a starting point. (This needs clarification. Eden does not have a CAP broker that I know of. And the current Agasti CAP support is in Krakatoa, not Mayon, so needs to be ported there too. So before there can be a GUI, there would need to be a port or implementation of a CAP broker, no? --Pat)

Specific : Build a | wireframe with functionality for the | Common Alerting Protocol messaging broker. It should follow a publisher subscriber model. Some specifications are in the | CAP Software Requirement Specifications
Measurable : CAP messaging broker is becoming a much sort after tool by many organizations. It is an ITU recommendation. Such tool can be easily adopted by governments and emergency coordination agencies for managing their alerting and situational awareness.
Attainable :
Step 1 :: Study the Sahana Agasti CAP Broker
Step 2 :: document the requirements
Step 3 :: develop the wireframe to provide the required functionality
Step 4 :: run the wireframe through a set of test scenarios, to be documented as stories
Relevant : Part of the Sahana interoperability policy.
Time-bound : Given that the Sahana Agasti CAP broker has much of the functionality it should not take too long to develop the wireframe.
Evaluate : Requirements will be discussed with the Sahana community and a prototype wireframe will be presented.
Reevaluate : Once the wireframe is built on the concluded requirements that will be put to test through the scenario based testing.

Write a blueprint for a GUI (web) tool to build and test XSL files

Migrated
Difficulty : Nuwan:MEDIUM, Pat:HARD
Proposed by: | Nuwan
Although this is classified as a documentation task, familiarity with coding, and especially with XSL transformations, will be helpful.

Specific : Given that Sahana is getting heavy on XML there should be a tool to develop text, html, etc. outputs based one's own XSL transformation file. The user should be presented with the option to select the XML file; i.e. tags and schema, then include/exclude those tags with inserts of fixed text. The user should be able to preview the output. The built XSL file can then be stored to be used for a particular function. In this case it would be producing CAP message based user specific outputs for email, web, rss, twitter, google, etc.
Measurable : This would allow super users to develop implementation specific CAP content delivery outputs.
Attainable :
Step 1 :: research existing available solutions to get a feel for the type of functionality needed
Step 2 :: document and discuss the set of requirements with Sahana community
Step 3 :: develop the wireframe and test it with test scenarios
Step 4 :: document the set of specifications
Relevant : The Irrigation department may want the CAP messages to be formed in one way in an email compared with that of the Health department. A rapid XSL development tool will put the burden of building and maintaining those finals in the hands of the users and implementers and not engineers.
Time-bound :
Evaluate : design requirements and settling on them.
Reevaluate : wireframe with the test scenarios

Attachments (35)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.