Our group project for the course “Databases for Data Science” focuses on the design and implementation of a relational database system to address real-world needs, following the principles of database normalisation. This project aims to integrate the use of Unified Modelling Language (UML) for designing relational schemas and SQL for querying, enabling efficient data capture and extraction essential for modelling and analysing critical aspects of a given problem domain. In spring 2024, we have an opportunity to collaborate with Finnish Red Cross (FRC) on a Volunteer Matching System (VMS). This system is intended to match the volunteer capacity of the Red Cross with local multidimensional vulnerabilities and crises, which we called Request in our project. The goal is to create a robust database that effectively supports this matching process, aligning with the FRC’s humanitarian mission and operational principles.
- Relational Database Design: We will design a relational database that models the supply side of the volunteer matching system, reflecting the capacity and availability of Red Cross volunteers.
- SQL Implementation: Using synthetic data provided, we will implement SQL queries to extract and manipulate data, addressing 22 specific questions. Our responses will be evaluated based on correctness, complexity, and relevance.
- By the end of this project, we aim to demonstrate a comprehensive understanding of relational database design and SQL implementation, preparing us for future projects in data science. The collaboration with the Finnish Red Cross not only enriches our learning experience but also al-lows us to contribute to a meaningful cause.
We will create a relational data model representing the supply of volunteers. This model will include attributes and relationships relevant to the volunteer capacity, ensuring alignment with the FRC’s operational needs.
Using the provided synthetic data, we will develop and execute SQL queries to retrieve and analyse information. This part tests our ability to apply SQL in practical scenarios, enhancing our skills in data manipulation and analysis.
We developed an algorithm to match the volunteer to the request, assuming a request can be classified as Oversupply request and Undersupply request.