Active Ageing Centres / Senior Activity Centres
CVWO’s work with eldercare centres began in 2007, when it first built an IT system for Geylang East Home for the Aged (GEHA) to support daily operations and simplify the process of generating reports. Over the years, the original system has expanded to support eldercare centres of varying types (Senior Activity Centres, Neighbourhood Links, Active Ageing Hubs), while evolving to stay relevant to operational needs.
The overarching goal of these centres is to support vulnerable or lower-income seniors by serving as drop-in centres in the community. There, seniors can socialise with their peers, participate in activities, and be connected to other services.
As of 2021, the Senior Activity Centres & Neighbourhood Links (SACNL) system is being actively used by 10 eldercare centres from GEHA and Care Corner.
Given Singapore’s rapidly ageing population, the Ministry of Health (MOH) and the Agency for Integrated Care (AIC) are progressively rolling out a new eldercare service model in which active ageing-related services will be extended to all seniors across the nation. Eldercare centres will serve as a key point of contact for all social-health matters, provide opportunities for volunteering among seniors in their community, and provide services including:
- Active ageing activities
- Befriending or buddying
- Referral to care services
Current eldercare centres will be transitioning to the new model of care from 2021 to 2024 and will be rebranded as either Active Ageing Centres (AACs) or Active Ageing Care Hubs (AACHs) based on the services they provide. Additionally, the number of seniors per centre is increasing substantially from 300–500 to 3000–4000. This makes it crucial for centres’ operations to be supported by suitable IT systems to reduce manual work.
Given that the SACNL system already contained many modules necessary for the AAC service model, our team was tasked to rewrite the system for better scalability, so that all of the 200+ eldercare centres can use the system if they wish to. Additionally, as some portions of the AACs’ workflow were not yet captured in the system, we were also tasked to study the new AAC requirements and enhance the system to support them.
For summer 2021, we successfully ported all existing features to Go and added 3 major enhancements for the AAC system. Our work also serves as the foundation for the additional systems required to fully support both overarching objectives; those changes will be carried out next year.
1. Rewriting the Backend in Go
The main focus for the summer was to rewrite the Ruby on Rails backend for the Senior Activity Centres system entirely in Go for the Active Ageing Centres system. This was done for the following benefits:
Because Go is a compiled language, its execution is much faster than Ruby which has to be interpreted at run-time.
The standard Go networking library provides out-of-the-box support for concurrency. This allows the application to process requests made by many users across multiple centres simultaneously. In contrast, the SAC Ruby on Rails system is single-threaded as Ruby makes use of a global interpreter lock to prevent threads from running concurrently and running into race conditions.
Unlike Ruby which is a dynamically typed language, Go is statically typed. This allows us to eliminate an entire class of errors as incorrectly-typed variables are caught at compile-time. In comparison, such errors only surface when the affected parts of the code are executed at run-time for Ruby.
2. Supporting the New Model of Care
The rollout of the new eldercare model began in May 2021, around the time that our project started. Our team worked alongside our community partners to uncover the new processes involved and develop solutions for them.
A central change in the new model was a new set of reporting requirements. AACs must submit a Progress Report containing individual-level data about their engagements with every senior, which would be time-consuming and error-prone if collated manually. Supporting these requirements included ensuring that the necessary data was captured and generated in a convenient manner.
We also sought to support two key workflows:
AACs carry out a yearly health and social screening for all seniors under their care to identify vulnerable seniors who are more vulnerable and require follow-up. To ensure that no senior slips through the cracks, staff required an overview of the screener results as well as the actions to be taken.
Befriending & Buddying
With AACs becoming the key contact point for seniors in their community, they are also taking over the role of providing befriending services. This workflow was relatively new to the AAC staff. As such, our team leveraged the experience gained from Lions Befrienders to propose features that suit our centres’ current needs and cater for greater complexity in the long run. The full befriending workflow includes a mobile application for befrienders to record details of their befriending sessions, which is planned for next year.
3. Migrating Hosting to Amazon Web Services
Amazon Web Services (AWS) is the world’s most comprehensive and broadly adopted cloud computing platform, offering numerous fully featured services from data centers globally. In line with our aspirations to support all of the 200+ eldercare centres, the AAC system is hosted on AWS so as to take advantage of the scalability and reliability that it provides.
However, the many capabilities of AWS is a double-edged sword in that it necessarily relies on very complicated configurations, making environment drift a huge concern in migrating the hosting of the application to AWS. This is because manually editing the deployment configuration results in the administration and maintenance of the infrastructure being hard to track, making it easy for errors to occur.
To address the above issue, we made sure that all aspects of the deployment process were expressed as Infrastructure as Code (IaC). By version controlling the environment description and configuration model, we are able to provision environments reliably and on-demand. This also makes our infrastructure setup much more scalable as we are able to easily provision more resources as necessary.
In addition, we also set up a continuous delivery pipeline for deploying the latest version of the application automatically on demand. This greatly minimises the time to deploy and time to mitigate production incidents, allowing the development team to deploy features and fixes fast and with confidence.
4. Ensuring Operational Continuity
Given that the system supports daily operations, it was crucial that the transition to the new system should happen seamlessly. Of the 10 centres that we are supporting, 5 have been on the new model since May 2021 while the remaining 5 will be moving over in April 2022. Additionally, as audits may still be conducted on the old service model until 2023, old data and reports had to be archived in a form accessible to users after the transition.
In our case, parallel adoption of the new system was not viable due to significant changes in the database schema. As such, a direct changeover was planned in two phases based on discussions with centre staff. Both the SACNL and AAC systems will be maintained over the coming year, and centres will move to the new system once they transition to the new model. As the transition involves a data migration, ensuring the integrity and completeness of the data was paramount.
ASEAN University Network – Quality Assurance
ASEAN University Network – Quality Assurance (AUN-QA) is a degree accreditation programme that aims to promote the quality of higher education in Southeast Asia. Universities apply to AUN-QA to have their degree programmes assessed and certified, a process which involves much coordination between the AUN-QA Secretariat, universities, and assessors.
In 2019, CVWO developed a task flow management system that manages the assessment cycle from beginning to end, simplifying the collection and approval of forms, documents, and other information.
For the first few weeks of summer 2021, our team was responsible for quality-of-life enhancements that ensure the system is intuitive and easy to use. We also fixed functional issues identified through internal testing, wrote automated tests to prevent accidental regressions, and upgraded dependencies for maintainability and security.
Upon reaching out to AUN-QA, we learnt of changes in the application procedure that impact how the system works. Since the exact requirements were in flux and an alternative solution for the 2021 application period had already been found, we decided to do preliminary planning but leave the implementation to future teams, so as to focus our efforts on developing the Active Ageing Centres system (above).
- Dorcas Tan (Project Lead, Year 3)
- Ian Yong (Project Lead, Year 2)
- Alissa (Developer, Year 1)
- Bryan Tee (Developer, Year 1)
- Bryan Loh (Developer, Year 1)
- Cai Kai’An (Developer, Year 1)
- Ezekiel Toh (Developer, Year 1)
- Fergus Mok (Developer, Year 1)
- Gan Hong Yao (Developer, Year 1)
- Han Geng Ning (Developer, Year 1)
- Hong Ai Ling (Developer, Year 1)
- Jovyn Tan (Developer, Year 1)
- Sarah Tan (Developer, Year 1)
- Sivayogasubramanian (Developer, Year 1)
- Theodore Kwok (Developer, Year 1)
- Lam Jun Rong (Developer, Year 0)
- Tan Zi Xiang (Developer, Alumnus)
Another summer, another whirlwind of a project. It’s been a humbling experience to work with our community partners on such recent changes, and to sharpen my skills in the process. Once again, I’m thankful to my fellow team lead and teammates for the immense amount of work put in to make this possible.
Being able to play an active role in training up the software engineering capabilities of everyone in the team has been immensely rewarding. I hope that their experience in CVWO has given them a greater appreciation for the intricacies of software development.
CVWO has taught me a lot of things as a software developer. I’m honoured to be given the opportunity to be part of this year’s CVWO team. Moreover, it is extremely satisfying to see our system being deployed and used. This summer has truly been an unforgettable one!
CVWO has been a great opportunity for me to learn and grow as a software developer!
– Bryan Tee
What an unforgettable summer. CVWO has been exemplary of the great things that can be achieved when like-minded, driven, able and hardworking people come together under strong leadership and guidance. I am immensely grateful for the opportunity.
This was an enriching and inspiring experience!
The past summer has been a great experience at CVWO. I am very thankful for the opportunity to work with such capable teammates on such a meaningful project!
Extremely thankful for the opportunity to work with such amazing team leads and teammates on a project with a meaningful cause! Through CVWO, I have picked up valuable soft skills and technical expertise that would come in handy in future.
– Hong Yao
CVWO opened my eyes to the complexity and beauty of software engineering. I’m thankful to be able to pick up so many technical and interpersonal skills while working with an inspiring team ( ´ ▽ ` )
– Geng Ning
CVWO has been a valuable experience - I learnt from talented and wonderful team mates and leaders, worked on projects with real and meaningful impact - couldn’t have asked for more!
– Ai Ling
CVWO was an intense learning experience and I’m grateful for the trust and responsibility given to us as developers!
CVWO has been a fulfilling journey and I am glad to have learnt so much and worked in such a nice team!
It has been an exciting experience for me here at CVWO over the summer. I am grateful for this opportunity to serve the community whilst also learning the technical skills needed for a software engineering project. I am also thankful to my team leads and teammates for helping one another when times were tough.
A wonderful experience to grow my technical skills as a developer while serving the community!
CVWO has taught me that we must always keep user needs in front of code, no matter how complicated the feature is. I’m glad to have had the opportunity to work and learn together with some of the most skilled people in SoC!
– Jun Rong
I am certain that when I look back at my development as a programmer, doing the CVWO internship will no doubt be a turning point. I am very grateful to Prof Ben and my teammates for this opportunity to learn and do something meaningful.
– Zi Xiang
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 advice and guidance.
- GIC for their generous support of the CVWO programme.
- Sharon Tang, Daniel Lam, Jenny Ang, Angie Poh (Care Corner), Joelyn Liau (GEHA), Korn Ratanagosoom and Nisanat Watthayu (AUN-QA) for their co-operation and support throughout the project.