YMCA YMCA of Singapore is a Christian voluntary welfare organisation. In general, it covers various areas such as providing student O-level to higher-level private education, managing corporate events, collecting donations, and providing sports and recreation facilities for members. YMCA offers various wholesome programmes to serve and enrich all members of the community. With over hundreds of events organized every year, YMCA attracts more than 3000 registered volunteers - A growing number each year.

Project Background

With thousands of volunteers mobilised and hundreds of different activities held each year, the tracking and management of volunteer profile information, event details, volunteer sign-ups and attendance for different events requires huge amount of manpower. More importantly, it is crucial for different departments to generate accurate statistics and analysis of different aspects of those records. YMCA Singapore is in need of a Volunteer Management System (VMS) to:

  • Provide a clear picture of their volunteerism efforts by generating statistics for reporting to the stakeholders, namely, YMCA Management, the volunteers including corporate volunteers, and donors.
  • Data mining for YMCA Management decision making
  • Provide a communication channel for volunteers and YMCA staff

An older version of the VMS was built previously in 2012, using Drupal 7 framework written in PHP. However, it did not fully meet the requirement and workflow of YMCA Singapore as the needs has changed over time. Staff currently used Excel spreadsheets to record volunteer, event and attendance data. They submit their statistics each in different formats and caused significant trouble for Volunteer Programmes Department to consolidate those statistics form different departments into one report.

Project Development and Accomplishments

The project can be developed in four phases:

1. Training and Code Review

The team started by reviewing the management system built for Lions Befrienders Service Association (Singapore). By reading through the code for LBSA’s system and fixing minor but increasingly challenging issues in the system, students quickly ramped up their skills on Drupal and PHP, as well as MySQL databases.

2. Requirement Study

In order to prevent the mistake of developing a system that did not match the client’s requirement, the team went through detailed requirement study with the staff at YMCA Singapore to better understand the operational needs as well as the issues with the old system.

The team met on different occasions and with staff from different departments (Volunteers Programme, International Programmes, Community Service and so on) to discuss the feasibility of different features in the VMS and decided on a set of possible deliverables. This phase took around 2 weeks to finalise all deliverables.

3. Development of the System

The development took around 10 weeks. By reviewing the design and code base of the old system, the team developed the new VMS from scratch but reused functional parts from the old system. They ensured that the new VMS met the clients’ needs set out during the requirement study phase and retained the functionality of the old system.

4. Testing and Delivery of Product

This phase included the deployment of a demonstration instance, migration of old data and user acceptance test. After the main development phase was completed, a separate instance was set up on YMCA’s server for staff to test, review and provide feedkback.


The Team

  • Chen Minqi (Project Lead, Year 2)
  • Koh Wai Kit (Year 1)
  • Lei Mingyu (Year 1)
  • Khye An (Year 1)
  • Sharon Lynn (Year 1)
  • Su Xuan (Year 1)
  • Prajogo Tio (Year 1, Nanyang Technological University)
  • Wong Her Laang (Year 1)


The three-month experience has taught me much that I would not be able to learn from a university classroom. I truly appreciate this opportunity to be able to see, to learn, and to give something back to the society in return.

– Minqi

I’ve learnt a great deal of creating intuitive interfaces for the users of the system to do their tasks with great ease. Apart from that, I’ve learnt to take note of most common use-cases/user behaviour on a particular page on the site and to design a page to suit it. Basically, I’ve really learnt how to put myself in the shoes of the users and ensured that their workflow when using our system will be much better than their current one.

– Her Laang

Perhaps the most concrete of learning points in this journey was the exposure to many of the important technologies and languages used in the industry.

– Wai Kit

I believe this is a giant leap in my ‘programming career’; during the first meeting, when being asked what is the goal I want to achieve in this summer, my answer is to survive. More or less, I have managed to do it, and I’m sure to be stronger in the future after survival.

– Mingyu

All in all, it has been a remarkable experience to join Computing for Voluntary Welfare Organization to create a Volunteer Management System for YMCA of Singapore.

– Sharon

This summer is indeed a fruitful and meaningful one. I shall wait, with great excitement and perhaps some nervousness, in anticipation for even more amazing journeys ahead.

– Su Xuan

We would also like to thank the following people:

  • Dr Ben Leong (NUS) for imparting invaluable insight and guidance both in the project and life skills
  • YMCA staff for their co-operation and support throughout the project
  • CVWO seniors who have showered us with generous amounts of technical help