...
Table of Contents | ||
---|---|---|
|
Note |
---|
Unfortunately Mifos was not selected to participate in Summer of Code for 2012. We still plan on engaging with students to take on these projects so stay tuned for more details! |
Get Stoked - End Poverty. One Line of Code at a Time.
...
Mentor | Project | Location | Time Zone | ||||
---|---|---|---|---|---|---|---|
|
| India | IST (GMT +5:30) Michael Vorburger | ||||
|
| Switzerland | CET (GMT +1:00) Kojo Gambrah | ||||
|
| Ghana | GMT | ||||
Jakub Slawinski
|
| Poland | CET (GMT +1:00) Vishwas Babu | ||||
|
| India | IST (GMT +5:30) |
Project Ideas
...
Next MVC - Spring MVC 3.1, Freemarker
Mentor: ~uguptaUdaiU (Unlicensed)
Mifos UI and MVC is quite old and has lot of scope for improvement, we want to make MVC layer more productive by using Spring MVC with Freemarker Templates(FTL).
...
Improve i18n and L10n support in Mifos
Mentor: ~uguptaUdaiU (Unlicensed)
Mifos supports multiple languages, there is lot of scope for improvement to make it easier to add changes, Translate Mifos will give you more idea how it works.
...
- Find and remove duplicate properties
- Remove Lookup tablesImprove
HINT: Learn more about i18n and L10n support
...
HINT: Learn Spring MVC and JQuery, start playing with Mifos code using Workspace 2.0, try running Mifos. (https://github.com/ugupta/mifos-dev)
...
Collateral Management System
Mentor: ~vishwasbabuVishwas Babu A J
Add Collateral Management abilities to Mifos (functional spec to be attached)
...
Business Analytics (OLAP)
Mentor: ~kgambrahKojoG
Extend the Mifos Business Intelligence data warehouse to create OLAP cubes. This will allow managers to perform ad hoc slicing and dicing of their data
to answer important questions about their operations.
...
Do some reading on these threads, run the existing acceptance tests, come up with a proposal of what improvements can be made to speed up development and testing by optimizing these tests.
Mifos 2.x with
...
Embedded Database
Possible Mentor: Michael Vorburger
Mifos uses MySQL 5.1 as its primary database.
Mifos has abstraction from underlying database using
...
We want to achieve :
- In memory Simple / easy launch of integration/acceptance testing, without requiring an external DB (ideally in an automatically created RAM Disk...)
- Development without manual MySQL installation
- Possibility of Mifos self-contained demo package using HSQL DBPossibility of using Mifos with other databases (least configuration refactoring)
The first thought that comes to mind is to achieve this with a pure-Java in-memory database such as H2. However, in order to avoid maintaining & supporting 2 different databases for Mifos, basing this on https://github.com/vorburger/MariaDB4j would be interesting.
Do some Googling, Search Mifos JIRA, mailing list for more information. Identify some small problems related to this project and submit patch (if possible), Come up with a good plan and start a discussion on developer mailing list.
Mifos has abstraction from underlying database using:
- Hibernate as ORM (must have good experience with Hibernate)
- Liquibase as Database refactoring tool
- DbUnit as test dataset maintenance
XBRL Reporting Integration
...
- Throughout Mifos application, add tooltips/hyperlinks that link to relevant sections in Mifos user manual.
Add/Improve import functionality
Mentor: Jakub Sławiński (Unlicensed)
The current Mifos version supports only importing of the Client data (that allows to create new clients in the system) and transactions (payments/disbursals/withdrawals/etc.). Many MFIs have requested to extend import functionality to allow importing Loans/Savings data (to create new accounts in the system). Moreover, It would be great to have the possibility to bulk modify existing clients/accounts via import functionality (currently you can only add new client entries). This feature will be very useful during data migration from the legacy MIS, which is an Achilles heel of the Mifos currently.
Objectives
- Add the possibility to import new Loans data.
- Add the possibility to import new Savings data.
- Extend import functionality to allow to modify existing entities.
HINT: Configure your development environment, try to run Mifos, look at the existing import Client data code.
Identify problems related to project, start asking good questions on developer mailing list, start creating a plan.
Improve Admin configuration possibilities
Mentor: Jakub Sławiński (Unlicensed)
Currently Mifos can be customized by changing values in the configuration files like:
- applicationConfiguration.custom.properties
- mifosBeanConfig.custom.xml
- mifosChartOfAccounts.custom.xml
When you change something in these files, you have to restart Mifos in order to see these changes in the application. Moreover, only part of these settings is visible in the UI. This makes Mifos hard to manage remotely and very cumbersome if we want to customize it. The possibility to modify configuration via UI will be very convenient. Moroever, it will help in providing hosted Mifos service, because it will eliminate the need to modify something in the filesystem.
Objectives
- Add/improve the functionality of displaying all Mifos configuration values.
- Add the possibility to modify configuration values via UI.
- Add the possibility to import/export configuration values via UI.
HINT: Configure your development environment, try to run Mifos, look at the code related to Mifos configuration.
Identify problems related to project, start asking good questions on developer mailing list, start creating a plan.
Custom Fantastic Mifos Project
...