Online Learning Environment
The objective of the project is to develop an online learning environment that is a web based application that functions as a library and has with following features: Software/Tool: create, study and share studying items discussion forums for different subjects social networking to expand your network paid service for tutoring This portal enables Web 2.0 user experience as it has extensive use of AJAX. Please note that some of the information in this case study is protected to respect our NDA with our client. All information shared in this document has been discussed with our customer.
The paid service for tutoring requires payment integration with Paypal. The client side interface has cart for adding questions. User can ask more than one question at a time that can be added/deleted from the user’s shopping cart. Pricing is done based on type of subjects and duration for tutors to answer the asked question. Tutor admin has the option of assigning questions to different tutors. The tutor can assign question to himself. HTTPS protocol is used for transferring information to the Paypal and vice versa.
Project Management: The complex interactions of different modules necessitated the need of detailed analysis of each module. Therefore, we in discussions with the client decided to use Agile Methodology for this project to minimize risks involved in the project. Based on the detailed specifications document prepared by our business analyst, the primary level database was designed. The entire requirements were broken down into 8 main modules and every such module was treated as a small project in itself. For each such small project, the requirement was analysed, and broken further into sub-features. Changes in the database design were made accordingly. The project had complex interactions with other features and so detailed analysis of requirements for every main feature minimized the risk involved in the project. After analysis, all these sub-features were given priority level and put in the stack of list of tasks to be implemented. These sub-features were implemented to entirely complete a feature. There was a release after completion of one feature, the duration for completing one such small project was one to four weeks. After release, the client’s feedback was taken. All change requirements were taken as a new requirement, put in the stack with suitable priority and the tasks for next release was decided and implemented.
Technology Used: Using Agile methodology helped us in successfully completing this project in a duration of 4 months. Software/Tool: PHP MySQL MVC framework AJAX Web 2.0 style and user experience
Key Features: Rich interactive web based application Template system was helpful in incorporating changes made in design without much impact on the project timeline. Agile methodology was used for the project management to adapt the changing requirements and feedbacks in every release.
We worked as an extended development partner for our client to reduce development cost while maintaining aggressive schedule.