Background

This year marks the 16th year of our long-standing partnership with Lions Befrienders Service Association (LBSA). Having positively impacted the lives of over 86,000 seniors in our community, LBSA stands as one of Singapore’s leading eldercare social service agencies (SSAs). Their mission is to help seniors age gracefully and healthily within their communities, leading meaningful and fulfilling lives through five core services:

  1. Befriending Services
  2. SAC Cluster Support
  3. Home Personal Care
  4. Senior Group Home
  5. Active Ageing Centres (AACs)

With thousands of befriendees and volunteers under their care, managing large volumes of confidential data and administrative tasks is complex, challenging, and time-consuming. As LBSA looks to expand its reach to meet the growing demands of Singapore’s aging population, the need for automation has become increasingly apparent.

This is where CVWO steps in. Over the course of 16 iterations, CVWO has worked diligently to develop comprehensive tech solutions tailored to LBSA’s unique challenges. In addition to the primary LBSA web application, which supports the agency’s daily operations, we’ve built a separate Volunteer App, a Client Booking App, and a dedicated Case Management System (CMS), all designed to streamline processes and enhance operational efficiency.


Project Objectives

Tech Stack Alignment

This year, we undertook the task of porting features from LBSA’s existing Ruby on Rails system to our AAC system, built in Go. Once complete, LBSA would transition their AAC operations to the AAC system. This initiative is part of a broader effort to unify the tech stacks across all of CVWO projects and to ensure LBSA’s compliance with AAC requirements established by the Agency for Integrated Care (AIC).

This migration delivered several key benefits:

  1. Performance

    The shift from Ruby to Go significantly enhanced performance, as Go’s efficiency led to quicker response times and overall system performance enhancements.

  2. Maintainability

    Unifying the systmes under AAC improves maintainability by consolidating codebases, ensuring that development efforts can be more easily managed and shared across projects.

  3. Scalabiltity

    The AAC platform is designed using a multi-tenant architecture, which allows it to scale seamlessly. This model enables the addition of new AACs without negatively impacting system performance or user experience.

  4. Security

    The decentralized design of the AAC platform has enhanced security by enabling data segregation based on tenants. This separation improves data protection and reduces the risk of cross-tenant data access.


Feature Porting

LBSA has one of the largest codebases within CVWO. The primary web application alone spans over 300,000 lines of code, containing numerous modules. Some of these, such as the Befriending and Buddying (BnB) module, were partially implemented in the AAC system. We enhanced these modules to align with the functionality of LBSA’s existing system. Other modules, like the Volunteer Management System (VMS), were new to the AAC platform and had to be reimplemented in Go.

A key challenge we faced was supporting both LBSA’s and other AACs’ distinct workflows. These workflows evolved separately over the years, so integrating them into a single system required careful planning. To address this, we employed a configuration-based approach to customize views, enabling both workflows to coexist on the same platform.

For instance, in the organization module, LBSA has more fields than other AACs, which we supported by adapting the system’s flexibility.

Volunteer Management System (VMS)

The VMS module from LBSA’s web app was ported to the AAC system. This module streamlines volunteer management, allowing LBSA to handle volunteer training and assignments more efficiently through the Volunteer App, improving overall coordination.

Befriending and Buddying (BnB)

In the AAC system, we enhanced the checkcalls and befriending monitoring features within the BnB module. Checkcalls involve regular check-ins with elderly clients (befriendees), while befriending monitoring allows staff to track the status of a befriendee’s interactions. These enhancements provide AACs with a more versatile tool for managing and monitoring befriendees’ well-being.

Activities

We enhanced the Activities module in the AAC system to better support LBSA’s workflow. This included enabling volunteer activity sign-ups through the Volunteer App and adding a mobile attendance view. The module organizes activities into sessions that clients can register for, while the mobile attendance feature allows staff to conveniently take attendance via their phones. These updates offer increased functionality for AACs to manage client activities more effectively.

Client Booking App

The Client Booking App was also ported to the AAC system, providing a seamless platform for clients to sign up for activity sessions. In addition, Singpass integration was incorporated into the Client Booking App, enhancing security and ease of use for clients.

Data Migration

Given that the AAC system employs a multi-tenant architecture, data migration required separating the data by tenant. This presented a significant challenge, as LBSA’s existing system stored data from multiple modules in a single database. Ensuring data integrity and accurate migration was critical, so that LBSA users could rely on consistent, reliable data within the AAC system post-migration.


Project Team

Lions 2024 Team
  • Titus Chew Xuan Jun (Project Lead, Year 2)
  • Fiona Qiu Yunqian (Developer, Year 1)
  • Chuah Zi Yang (Developer, Year 1)
  • Gong Yongjia (Developer, Year 1)
  • Lim Si Rui (Developer, Year 1)
  • Tim Lim Jia Liang (Developer, Year 1)
  • Hans Delano (Developer, Year 1)
  • Yu Qian (Developer, Year 1)
  • Chang Weng Tang, Gabriel (Developer, Year 1)
  • Zen Koh (Developer, Year 1)
  • Siah Wee Keat, Evan (Developer, Year 1)


Team Photos


Afterthoughts

CVWO has been a challenging yet rewarding experience, both in terms of soft skills and technical skills. I am thankful for this opportunity to serve the community once again.

– Titus

I am so grateful to have had this opportunity. CVWO has truly been an enriching experience, allowing me to grow technically while making a real impact on the community.

– Fiona

CVWO has been an amazing experience and I learnt so much from the experience! I am thankful that I was able to contribute to the society and so something meaningful for the summer!

– Zi Yang

CVWO has been an enriching experience that allowed me to not only improve my technical and teamwork skills but also contribute to meaningful solutions that benefit our community. It’s rewarding to see how technology can positively impact voluntary welfare organizations.

– Yongjia

CVWO has allowed me to gain many insights into software engineering and web development, and is thus a meaningful experience for me.

– Si Rui

CVWO was a challenging but fulfilling way to spend my summer. Though the work was intense, it was definitely worth the meaningful impact and the vast amount of experience and knowledge I gained from working hands-on!

– Tim

CVWO was a fun and unique experience, it is more than just a software internship, it was a software engineering masterclass. I am grateful for the opportunity provided and thankful for the guidance and learning that I received.

– Hans

CVWO has been a truly fruitful experience, equipping me with both technical skills and the importance of teamwork. It also allowed me to give back to society, embodying the Chinese saying ‘得诸社会,还诸社会’ — what is gained from society should be returned to society.

– Yu Qian

I’m grateful for the opportunity to learn more about software engineering and to work on such a large-scale project. It was fulfilling to develop our platform, enabling the VWOs to carry out their daily tasks efficiently.

– Gabriel

CVWO has been a once-in-a-lifetime experience for me. It has been a privilege to work together with like-minded and motivated software engineers.

– Zen

CVWO was a challenging yet enriching experience. It helped me understand the real world impacts our code has on people’s lives while also giving me a chance to meet and work with a group of talented individuals.

– Evan

We would like to express our heartfelt gratitude to the following people who have been influential and supportive during our project:

  • Prof Ben Leong (NUS) for his patient guidance.
  • LBSA staff for their cooperation and support throughout the project.
  • GIC for their generous support for the programme.