Mifos and the Google Summer of Code 2009

Welcome potential Mifos Summer of Code participants! The following is a list of Mifos projects for students to work on. Attack poverty and complex technical challenges simultaneously!

Wondering what Mifos is? Start here

Guidelines

Expectations

Students working on Mifos will be expected to:

Prerequisite Skills

Helpful skills include:

Please also see the list of suggested tools for development with Mifos.

Hints

Mentoring

Mifos folks are constantly working remotely (mainly using Skype), especially in supporting remote contributors. We often do video calls and desktop sharing If possible, we'd love to meet you in person! Specific mentors for each project are listed below with their locations.

Mifos business logic and data flow is quite complex. Due to tight integration necessary with Mifos developers, we are currently considering taking on only 2 or 3 students.

Project Ideas

Improve unit test suite

Mentor: Adam Monsen (Unlicensed) Minneapolis, Minnesota

Details:

Many issues exist with the current Mifos unit test suite. A student choosing this project will be encouraged to implement as many improvements as possible, thereby:

  1. Increasing developer productivity * A fast test suite leaves more time for the developer to write code
  2. Reducing the chance of introducing bugs * A fast test suite will be run more often so bugs will be caught sooner and the chance of an untested change being committed and breaking the build will be reduced
  3. Make identifying and fixing problems more efficient * Eliminating test dependencies will mean that only those tests actually affected by a problem will fail and can be immediately compared to help identify a problem (rather than only the first failure yielding useful information)

Tasks:

Advanced unit test suite improvements

Mentor: Adam Monsen (Unlicensed) Minneapolis, Minnesota

Details:

A number of business objects include transaction management code in their methods which makes it difficult or impossible to test them independently of the database. This project is intended for a student capable of advanced Java and database development.

Tasks:

Automated Acceptance Tests

Mentor: Jeff Brewster (Unlicensed) Seattle, WA

Details:

Building Acceptance Tests Project

Your Suggestions

Is there another project you're interested in that is not mentioned here? Suggest it on the Mifos developer mailing list See the following pages for ideas: Mifos Volunteer Projects, Architecture Plans, Tech TODOs. It would be helpful to cover the following in your suggestion:

News