Coursolo Multi-tenant-system
Future Software Technologies
Semester programme:Open Learning - Advanced
Client company:Coursolo AI
Project group members:Joy van Rijn
Thomas Verhappen
RIk Stokmans
Damián Čopík
Marek Mitala
Project description
Coursolo.AI is developing a platform that needs to support both individual users and business clients. This created two main design challenges within our project.
The first design challenge focused on multi-tenancy:
How can Coursolo.AI be redesigned into a secure and scalable multi-tenant system, where each business client can have its own isolated environment while users can still log in and access the correct data?
The second design challenge focused on the mobile application:
How can a mobile application be designed and developed that connects to the Coursolo.AI platform and gives users a practical way to access the application from a mobile device?
Context
Coursolo.AI operates in the EdTech and software platform domain. It is an online learning platform that allows users to create their own learning path by combining learning content that fits their personal goals and interests. In many traditional courses, users have to follow a fixed programme, which can include topics that are less relevant to them. Coursolo.AI aims to give users more flexibility by allowing them to build a course that better matches what they actually want to learn.
As the platform grows, it needs to support different types of users, including individual users and business clients.
For business clients, the platform needs a stronger technical foundation than a regular single-user application. Each organisation should be able to use its own environment, with its own users, data and learning content. This makes data separation, authentication and tenant identification important parts of the system design.
At the same time, Coursolo.AI also wants to improve how users can access the platform in practice. That is why part of the project focused on a mobile application. The mobile app should give users a more accessible way to use the platform from a mobile device, while still connecting to the same underlying system.
Results
For the mobile application, a working app was developed that includes the main functionality of the existing web platform. This makes it possible for users to access Coursolo.AI from a mobile device and use the platform in a more flexible way. The app shows that the core features of the platform can be translated into a mobile environment, while still connecting to the same underlying system.
For the multi-tenancy part, we researched different multi-tenant architecture structures and compared how these could fit the needs of Coursolo.AI. We also researched cloud hosting options to support deployment in different regions, making the platform more suitable for future international growth. Based on this, parts of the system were deployed in the cloud to validate the technical feasibility.
A major part of the project focused on database research for multi-tenancy. We explored how tenant data can be separated and how each business client can have access to its own environment. Authentication was also researched, with a focus on how users can be linked to the correct tenant before accessing the right data.
Besides research, we also worked on a rewrite of the backend to better support the new platform structure. Several proof of concepts were created to validate important technical decisions, such as tenant routing, database connection logic, cloud deployment and authentication flows.
The value of these results is that Coursolo.AI now has both a practical mobile application and a clearer technical foundation for scaling towards business clients. The project shows that the platform can move from a single-platform setup towards a more scalable SaaS structure with stronger data separation, cloud deployment and support for multiple types of users.
About the project group
Our project group consists of five Fontys ICT students from the Open Learning Advanced semester. The team combines different backgrounds and interests within software development, mobile development, cloud architecture, data, business processes and AI-related applications. Since several team members also worked on other projects during the semester, the project was not carried out full-time.