Game Booking System
This project was an assignment at King's College London. I worked in a team of 5 and our goal was to produce a library-like video game renting system.
The system supports the following features:
- Users are split into three groups: regular members, secretaries, and administrators. Naturally, there is a distinction of what tasks they can perform on the platform; e.g. members can only request to borrow and item or extend the rent, secretaries can also grant such extensions and manage other members' details, and administrators can also change the secretaries and manage the maximum rental periods and other settings.
- Users can search for video games by using keywords and other filters. Similarly, secretaries can search for users by their name, outstanding fees or other parameters.
- Users need to login before they can manage their details, rent items, and complete other actions within their privileges.
- Users can request extensions on the currently rented items. The request is automatically reject once they reach the limit specified by the administrators. These requests are confirmed by secretaries.
- Secretaries and administrators can view various reports, e.g. how many users have outstanding fees, how many items are currently rented etc.
- If items are returned damaged, a secretary can log a fee to be paid by that user.
My role
This system was implemented from scratch and we had to learn about all the tools and languages on our own, mostly by following courses on platforms like LinkedIn Learning. Starting to learn the materials a bit earlier than the rest of the team, I quickly realised there is too much material for everyone to grasp in the short amount of time we had at our disposal. Therefore, I started assigning roles so we would each research less material and thus start implementing the system.
My task was to design and implement a database and built a backend system in PHP which would support all the features mentioned above. When that was completed I helped with linking the frontend and backend together and ensuring the system works well as a whole.
When the project was completed, I also ensured that the website was correctly deployed on a free hosting site, which was part of the submission requirements.