GSOC 2013 - Server side pagination and Sorting

GSOC 2013 - Server side pagination and Sorting

Content

Identify

Mentor

@Gurpreet Luthra (Unlicensed)

Assigned Contributor

@Anuruddha Premalal

 

Project summary

         MifosX follows the principle of Multitenancy, where a single instance of the application runs on the server serving multiple clients. When the user base gets very large and grows rapidly performance becomes a critical factor. 

Currently the Mifox RSET API allows authenticated users to query the database, for example say a user needs to query clients, with the current API users can request for a list or a particular client, request for a list of clients returns the whole user list to the front end in a json encoded string, but the user might not interested in all of those data that has been received, this causes huge performance hit within the multitenant environment. 

The idea of this project is to improve the performance of processing these large database queries by implementing server side pagination. This allows users to request a portion of a data set.

Required deliverable

  • Adding pagination and sorting capabilities to the REST API's exposed by the MifosX platform.

  • Update the reference User Interface to consume the same.

  • A proper documentation and tests for the above mentioned components.

Project implementation plan

Project schedule

Duration

Description

Duration

Description

May 3rd  –  May 27th

  • Getting familiar with the needed technologies .

  • Familiarize completely with the MIFOX functionality and the architecture.

May 28th – June 16th

  • Knowing each other of the developer community, Discuss project design and implementation plans with the mentor.

June 17th – July 28th

  • Implementation of task 1, 2

July 29th – Aug 2nd

  • Mid Evaluations

Aug 3rd – Sep 15th

  • Implementation of task 3, 4

Sep 16th – Sep 22nd

  • Further testing and improve documentation

Sep 23rd  – Sep 27th

  • Final evaluation

Additional Resources