The goal of this project is to create a software system that could be used by customers, employees, and the manager to service an Online Game Shop. Our Game Shop Management System offers a seamless way to manage inventory, customer orders, and reviews for an independent game shop ๐น๏ธ
I am a third-year Software Engineering student with expertise across various areas of software engineering. I thrive in collaborative environments, such as this project, where I can sharpen both my technical and interpersonal skills through diverse roles ๐จ๐ปโ๐ป
I am a third-year Software Engineering student with a keen interest in software development and problem-solving. I enjoy working on projects that challenge me to think critically and collaborate with others to build efficient, impactful solutions.
I am a third-year Computer Engineering student with a strong passion for software development. I enjoy tackling complex problems and continuously seek opportunities to enhance my technical skills while collaborating with others in dynamic environments like this project ๐จ๐ปโ๐ป๐ป
I am a third-year Software Engineering student with a strong passion for software development and machine learning. I thrive on solving intricate challenges and constantly look for ways to sharpen my technical expertise.
I am a U3 Software Engineering student with a strong passion for web development, artificial intelligence, and robotics. I have experience in developing scalable applications and a keen interest in exploring innovative solutions at the intersection of AI and engineering.
I am a third-year Computer Engineering student passionate about software design and development. I love exploring new technologies and working in team environments to create innovative solutions that drive progress in the field.
Navigate to the backend directory:
cd GameShop-Backend
- Create a new PostgreSQL database named
game_shop
:CREATE DATABASE game_shop;
- Ensure the following properties are set in
application.properties
:spring.datasource.url=jdbc:postgresql://localhost:5432/game_shop spring.datasource.username=postgres spring.datasource.password=321Group9 spring.jpa.hibernate.ddl-auto=update
Build the project using Gradle:
./gradlew build
Start the Spring Boot application:
./gradlew bootRun
The application will be accessible at http://localhost:8080
.
- Ensure the database is correctly set up and accessible.
- Run tests:
./gradlew test
- Ensure the database is correctly set up and accessible.
- Run integration tests:
./gradlew integrationTest
Navigate to the frontend directory:
cd GameShop-Frontend
npm install
npm run start
The application will be accessible at http://localhost:3000
.
npm run build
npm run test
Upon the startup of the backend, a default manager account is automatically created. This account can be used to log in and access the manager-specific features of the Game Shop.
Manager Credentials:
- Email:
[email protected]
- Password:
Manager@123
โ ๏ธ Important: It is strongly recommended to change the default credentials after the first login to ensure security.
Team Member | Time Spent (h) | Responsibilities |
---|---|---|
Ismail Sentissi | 40 | Employee, Review and Promotion management routes |
Ahmed Mossa | 50 | Manager Account, Game, Game Request and Category management routes & start-up script for Manager account creation |
Nicolas Bolouri | 45 | Landing page, Manager dashboard routes, public routing setup, 404 page & frontend directory setup |
Hamza Alfarrash | 45 | Employee Account, Game Request and Category assignment routes & project report |
Amgad Elgamal | 45 | Public browsing routes & Wishlist/Cart management |
Mohamed-Amine Benzaid | 45 | Customer Account, Checkout and Order management routes |
Team Member | Time Spent (h) | Responsibilities |
---|---|---|
Ismail Sentissi | 27 | API design for Categories, Project Management and Report, Integration tests, cleaned up backlog, QA Plan |
Ahmed Mossa | 37 | API implementation for Employees, created QA report, unit & integration tests, assisted colleagues with debugging |
Nicolas Bolouri | 35 | API design for Manager and Store, project minutes organizer and scribe, GitHub setup, created API documentation |
Hamza Alfarrash | 23 | API implementation for Reviews and Orders, wiki documentation, integration tests |
Amgad Elgamal | 32 | API implementation for Games, cleaned up backlog, domain model rationale, testing |
Mohamed-Amine Benzaid | 31 | API implementation for Customers, QA plan, unit tests, integration tests |
- Wiki Home Page
- Requirements
- Use Case Diagrams and Specifications
- Domain Model & Rationale
- Project Report
Team Member | Time Spent (h) | Responsibilities |
---|---|---|
Ismail Sentissi | 17 | Requirements, testing, use-case scenarios & report |
Ahmed Mossa | 18 | Writing Umple code for the domain model and generating/editing Java code, Spring Boot project setup, requirements & use-case scenarios |
Nicolas Bolouri | 22 | Minutes organizer and scribe, GitHub setup initialization & Creating/editing domain model |
Hamza Alfarrash | 18 | Use-case diagram 1, requirements, wiki documentation & testing |
Amgad Elgamal | 18 | Domain Model Rationale, testing, requirements & backlog |
Mohamed-Amine Benzaid | 18 | Use-case diagram 1, testing, use-case scenarios & requirements |