Difference between revisions of "Archive:SoC"

From FreeCulture.org
Jump to: navigation, search
(H. System Monitor)
Line 2: Line 2:
This page coordinates the Google "Summer of Code" projects mentored by Cultura Libre.
This page coordinates the Google "Summer of Code" projects mentored by Cultura Libre.
Note: Cultura Libre was not selected :(
=Students: How to submit a proposal=
=Students: How to submit a proposal=

Revision as of 19:36, 15 March 2007

Summer of Code 2007.

This page coordinates the Google "Summer of Code" projects mentored by Cultura Libre.

Note: Cultura Libre was not selected :(

Students: How to submit a proposal

  • Students can submit their applications via the GSoC web app between March 14-24, 2007.
  • Review the GSoC wiki page on Advice for Students to make sure you really want to apply to GSoC.
  • If you find a project listed below that you like then include the following in your proposal (max 2 pages):
    • 1. Summary (Summarise your idea and its objetives)
    • 2. Implementation Strategy (To implement your idea successfully)
    • 2. An approximate schedule (Timeline)
    • 3. Brief resume/bio/contact information


  • David Gomez, BSc, Networking Engineer (dgomez at cidesi.org)
  • Luis Gustavo Lira, BSc, Telecommunications Engineer (lira.lg at pucp.edu.pe)


  • GNU General Public License (GPL)
  • GNU Free Documentation License

Usability and Design Guidelines

  • Usability standards, tests and recommendations. ISO 9241, ISO 13407, ISO/IEC FDIS 9126-1, ISO TR 18529, Gnome HIG, KDE HIG and usability guidelines for open source software.
  • Design graphic user-interface components following guidelines and recommendations for improve scalability, efficiency and usability.
  • The design will integrate with the previous design.
  • The design won't be confusing or make things difficult.
  • The settings can be changed without a lot of downtime.
  • Easy to expand by means of add-ons.
  • The application will be accessible to all users.
  • Accommodating individual differences among users.
  • Support options for improve scalability, efficiency, usability and security.
  • The recommendations here build on design aspects that have worked well in other systems
  • Write comments where they are useful and links to extra documents.
  • Elaborate usability tests for different user profiles and scenarios. Time to task, accuracy, availability, user response, etc.
  • Checking for mistakes, design compliance and bugs tracking.
  • For all the mouse driven functions, provides alternatives for performing these tasks from the keyboard.
  • Provides an accessible online help system with complete information and multi-language support.

Project 1 - Ceres Disaster Management System

Ceres IT&GIS Disaster Management System: Preparedness, Response, and Recovery

  • The challenge of disaster management is reducing the harm disasters cause to society, the economy, and the lives of individuals, communities and nations.
  • Preparedness: That task requires disaster managers to manage resources on a much larger scale and at a much faster time than are supported by conventional systems. IT&GIS systems provides capabilities that can help managers grasp the dynamic realities of a disaster and formulate better decisions more quickly in all phases of disaster management.
  • Response: Access to communication is critical in the early hours in any catastrophe scenario. Quickly relaying information to emergency personnel can reduce the time from disaster to response. When calamity strikes over a large area, information is crucial in the primary assessment of the scale of the problem, and in assigning resources to the most appropriate places.
  • Recovery: In recovery scenarios making good decisions and taking appropriate actions require having access to communication, data, and computacional resources that can be used to effectively coordinate a large number of geographically dispersed individuals and assets to exchange a variety of information, evaluate scenarios and formulating recovery action plans.

We are working for design a new concept for an integrated IT & GIS system for disaster management and how to implement features to improve scalability, efficiency and usability. This task surely is not an easy one but we think it would be a great service to the community and we would really enjoy designing and implementing this. That is our motivation.

We thought about implementing a full functionality system to be able to work in a real disaster scenario, with the possibility to extend and add new services and features in the future. We do not intend to write an entire new system but to reuse existing ones: CUWiN, OpenPBX, OpenGIS, Sahana, etc.

A. Main System


  • A Main Graphic User Interface
  • A application to install components
  • Integrated meta-contacts in main GUI from an end-user perspective
  • Everything will be able to be dynamically setup.
  • Create meta-data management frameworks that provide equal access to all components.
  • Use open standards in order to facilitate tighter integration with third-party components.
  • Provide mechanisms for extensibility, versioning, and backward compatibility.
  • Basic remote bundle management tools.
  • Integration of all components into the main GUI and the glue code to bring those things together.

B. Mesh Networking

Develop a light version of CUWiN for a Rapid Response Scenario.

  • Lightweight Installation and Deployment. Instead of deploying the full CUWiN application a small native client will be installed on user systems. This client will connect to back-end servers hosting full Ceres based software enabled for use in the Rapid Response Scenarios. The client will automatically setup any feature with the correct set of tools. The client also allows any component to be upgraded as needed including the full CUWiN application.
  • To be configured at a profile-level instead of relying on each user to perform their own setup. Options for defining or updating profiles. Allow users to be automatically associated with available profiles.
  • Minimun hardware requirements
  • Robust stability requirement !
  • Must be portable, any device.
  • Automatic and optimal placement of new nodes
  • Develop a API designed to allow integration with GIS components

C. Rapid Alert System

Develop an application to deliver rapid alerts messages.

  • CAP (Common Alerting Protocol)
  • SMS. Translate text messages into multiple languages and send a translation to any mobile device. Messages can be targeted to specific regions using networks' databases of users' preferred languages.
  • Any XML, RSS, etc
  • Any Network, Any Way, Any Where, Any Time


Develop a Call Center based on OpenPBX.

  • Speech translation system for use in emergency rooms and disasters response situations. We want speech to speech translation to be fast and accourate enough on a relatively simple platform and make it widely available and portable.
  • Support e911 (The wireless Enhanced 911).
  • Support accounts to have many different numbers and all incoming call to those numbers route to the user mobile device.
  • During major emergencies support closer community contacts(neighbors) and enabling neighbor to neighbor calls
  • Develop a API designed to allow integration with GIS components


  • Allow Google Maps support.
  • Develop a API designed to allow data integration with data from other components.

F. Web

Develop a light application based on Sahana for recovery scenarios. Instead of install the full Sahana system a lightweight version will be installed on user systems. Must be Portable.

G. Remote Sensors Network

Develop an application (PC/desktop) to read/write/route data (in Real Time) from:

  • RFID Tags
  • Bar Code Tags
  • Remote sensors running TinyOS
  • UWB devices

Develop a API designed to allow integration of third-party components (GIS applications) and combine data from many sources and devices.

Develop a Gateway/Hub/Router application (FPGA boards) to read/write/route data (in Real Time) from Networks of Data Collector Nodes.

H. System Monitor

Develop an application to system monitoring

  • Verify servers, clients, network devices, services and applications through different methods (protocols), if something fails then administrator will be informed.
  • Check system configuration, system main files, open ports, the eventlog and services.
  • Shutdown servers, devices, services, and applications under a special condition defined by the user.
  • Trigger an alarm if CPU, RAM, Network Bandwidth and Power usages is high. The power supply for our system will play a vital role in the stability of the entire platform. Ceres will be not a particularly power-hungry system. The power supplies will be connected to completely independent uninterruptible power supplies (UPSs).
  • Statistics monitoring allowing numerous statistics to be collected including the number of uses of different software components and which components are being most heavily used.
  • Network protocol analyzer. Support for HSLS routing protocol in Wireshark
  • Creating a test harness for testing HSLS routing protocol performance of a Wireless Network
  • Develop a API designed to allow integration with GIS components. Show nodes, users, remote devices,

Project 2 - Wireless Telecomunications and Microfinances in a Box

Wireless Telecomunications and Microfinances in a Box

  • Develop a toolkit of free and open source software tailored to the needs of provide rural families with access to wireless telecommunications and microfinancial services.
  • While the privatization of state-owned enterprises and increased market competition has led to tremendous growth in Latin America’s telecommunication sector there still remain many rural and marginal areas without access to these services as the growth has occurred mainly in the urban areas. Bringing easy and affordable access to telecommunications services to rural families will them to better their businesses, increase access to education and health services, provide a forum for interaction with government services, and opening up new possibilities to deliver basic and low cost microfinancial services to families in their rural communities.
  • For rural families to bank effectivelly, they need to be able to access and deposit cash in their communities. Bank and Financial branches with their high costs and staffing requierements are clearly not the solution.

A. Enable Mobile Devices

Develop an application that

  • Enable mobile devices (Cell Phones, PDAs, etc ) to conduct a wide range of secure financial transactions, including the ability to act as debit card, receive and pays bills, savings, money transfers, person to person transactions and buy airtime for a prepaid mobile phone subscription. Customers can have orders and stop orders.
  • All transactions must be protected by a PIN code.
  • Works across all networks, works on any cell phone irrespective of brand and on all SIM cards.
  • Customer service. Routes your call to an agent who will speak to you in your preferred language.
  • Totally interoperable with the existing financial services infra-structure.
  • Cash withdrawal at any ATM with a master sign.
  • Develop a API designed to allow integration with GIS components

B. User Interfaces

Develop user interfaces for mobile phones, ATMs, POS terminals, Internet Kiosks, etc.

  • Support local language voice instructions.
  • Interfaces that illiterate people can use (icons and pictures).

C. Authentication and Identity Verification

Develop an application that

  • Support biometric fingerprint identitication.
  • Because of widespread illiteracy, support imagen (photo) based authentication to make user verification easier.

D. Fraud Detection

Develop an application that

  • To ensure that retail agents do not defraud customers when they take their cash.
  • Retail agents are not permitted to collect more cash in a day than the balance of funds in the account.
  • Consolidates the financial results for each retail agent into the balance sheet of the nearest branch or bank office.
  • Checking records of all financial accounts and operations.
  • Managing cash security and liquidity at a wide network of terminals

Project 3 - Assistive Technology for Blind People

As cell phones have become an increasingly conspicuous part of everyday life, they have also become more and more powerful, equipped with computer operating systems and more features being added with every new model, but there are concerns among the blind and visually impaired community as to whether or not these and other cell phone features will be accessible.

A. Screen Reader for Cell Phones

Phones with the speech software loaded on them certainly give blind and visually impaired people access to many more features than the other phones. However, the cost of these phone/software combinations are very high, putting them out of the price range of most blind and visually impaired people. The project's objetive is develop a screen reader application that:

  • Provide voice output to access menus and screen information through the easy-to-understand speech synthesizer.
  • Voice characteristics, such as speed, pitch, volume, and key echo, can be adjusted according to user preferences.
  • Including access to status indicators, the contacts application, calendar, text and multimedia messaging, e-mail and Web browsing.
  • Provides speech output to identify the punctuation marks and symbols while you scroll through the list to choose one of them.
  • Speech output: English, French, Spanish.

B. Screen Magnifiers for Cell Phones

The project's objetive is develop a screen magnifier application that:

  • Support 2x,4x,6x and reverse color.
  • Magnifying the area of interest as you navigate through the phone's user interface.
  • The user must pan up and down, in addition to left and right, to read all the letters in the screen and through multiple lines of text.
  • Users could take advantage of the magnification feature when viewing photographs and webpages to make the Mobile Internet accessible.


  • CUWiN (the Champaign-Urbana Community Wireless Network) is a world-renowned coalition of wireless developers and community volunteers committed to providing low-cost, do-it-yourself, community-controlled alternatives to contemporary broadband models.[1]
  • The Common Alerting Protocol (CAP) standardizes the content of alerts and notifications across all hazards, including law enforcement and public safety as well as natural hazards such as severe weather, fires, earthquakes, and tsunami. Systems using CAP have shown that a single authoritative and secure alert message can quickly launch Internet messages, news feeds, television text captions, highway sign messages, and synthesized voice over automated telephone calls or radio broadcasts. [2]
  • Wireshark's powerful features make it the tool of choice for network troubleshooting, protocol development, and education worldwide.[3]
  • Sahana is a Free and Open Source Disaster Management system. It is a web based collaboration tool that addresses the common coordination problems during a disaster from finding missing people, managing aid, managing volunteers, tracking camps effectively between Government groups, the civil society (NGOs) and the victims themselves.[4]
  • OpenPBX.org is a community driven software PBX project, licensed under the GPL. OpenPBX.org will be stable, featureful, easy to use, and easy to deploy on a range of operating systems. [5]
  • Village Phone Direct is a microfranchise approach to Village Phone that allows virtually any microfinance institution (MFI) to directly and independently develop a Village Phone product for their clients. Village Phone Direct brings the benefits of telecommunications to local communities and micro entrepreneurs without the need for an institutional infrastructure to coordinate the operations in cooperation with an individual microfinance institution to serve small rural villages.[6]
  • TinyOS is an open-source operating system designed for wireless embedded sensor networks. It features a component-based architecture which enables rapid innovation and implementation while minimizing code size as required by the severe memory constraints inherent in sensor networks.[7]
  • Virtual Magnifying Glass is a free, open source, screen magnifier, for Windows, Linux and FreeBSD. [8]