-
Notifications
You must be signed in to change notification settings - Fork 0
Customer Milestone 2 Report
Up until the first milestone we were dealing with the “what” question. We refactored the project plan, what to exclude and include in the project. We decided on the core concepts and elements of our application. Also implemented the basic interface that the users could interact with. After the first milestone, we moved forward with the implementation of aforementioned concepts and elements like games, posts and comments. And some other functionalities like editing the elements. We managed to implement the promised features. However, we had some problems related to CORS policies, which posed a threat to the progress of the application. During the time until the last milestone, we are not only planning to solve this problem but also provide our users with more features like recommending posts, games etc. Furthermore, we will be introducing the search mechanism and annotation feature.
- Games/Posts/Groups titles on the homepage should be Recommend Games/Recommend Posts/Recommend Groups.
- The customer is a little lost in the forum screen because she wants to see the comments for the same game.
- There was a problem with the post images appearing.
- The search layout should be more noticeable.
- Enlarge the category of the player number by adding the Team-Based category.
- There should be liked games section on the profile page.
1.3 Describe any changes your team has made since Milestone 1 or planned for the future to improve the development process. Explain how these changes impacted or will impact your process:
Since Milestone 1, our team has implemented several strategic changes to enhance our development process like a focus on issue management, pull request (PR) handling etc. These changes are designed to streamline our workflow, improve clarity, and ensure higher quality outcomes.
-
Refining Issue Descriptions: We realized the importance of clear and detailed issue descriptions for effective team collaboration. Moving forward, we are committed to providing comprehensive details in our issue tracking system. This includes clearer titles, more descriptive texts, and relevant tagging. This change has already led to a reduction in misunderstandings and accelerated issue resolution times.
-
Enhancing PR Descriptions: Acknowledging the role of well-documented PRs in code quality, we are now focusing on enhancing our PR descriptions. This includes providing context, summarizing changes, and linking related issues. Improved PR descriptions are aiding in better code reviews and reducing the time required for code integration.
-
Continual Feedback and Iterative Improvement: We are instituting a process of continual feedback among team members. This iterative approach to process improvement is fostering a culture of continuous learning and adaptability.
These changes are not just procedural but are part of a shift towards a more collaborative, transparent, and quality-focused development culture. We anticipate that these adjustments will significantly enhance our efficiency, reduce errors, and lead to a more streamlined development process, ultimately contributing to the success of our project.
Deliverable | Status |
---|---|
Milestone Review | Completed |
Individual Contributions | Completed |
The Software | Completed |
1.5 Provide progress according to requirements: being either not started, in progress, or completed (completed = implemented, tested, documented, and deployed):
You can see the progress in the requirements with their status one by one by saying those statuses within the parenthesis at the end of each requirement provided the link.
-
The API documentation: http://167.99.242.175:8080/swagger-ui/index.html
-
The link to the API: http://167.99.242.175:8080/swagger-ui/index.html
-
One or more example API calls for each API function, showcasing how they would be utilized in an expected use- case scenario. (You may skip this if you already have such examples within your API documentation.):
Backend:
- Here can be found the reports generated for the backend unit tests.
1.8 The general test plan for the project, which describes your product's testing strategy (e.g., unit testing, integration testing, mock data, etc.):
Unit Testing:
Backend: The backend development team focuses on writing extensive unit tests to validate the correctness of individual components and functions. These tests cover various scenarios and edge cases, providing a robust foundation for the backend logic.
Mock Data Testing:
Frontend and Mobile Development: During the initial phases of frontend and mobile development, mock data is utilized to simulate interactions with the backend before its completion. This enables frontend developers to work independently and refine the user interface while awaiting the availability of actual backend services.
Backend Development: Simultaneously, the backend team leverages mock data for testing purposes, allowing them to validate the functionality of their services independently of the frontend. This parallel development approach facilitates quicker iterations and accelerates the overall development process.
We hope to provide a high-quality product that satisfies functional and non-functional criteria while encouraging cooperation between development teams and stakeholders by implementing these testing procedures into our development workflow.
As of now, the implementation of annotations in Game-Lounge is in the planning stage, with the intention to be completed by Customer Milestone 3.
We are planning to implement annotations in Game-Lounge by Customer Milestone 3. This implementation will include game name annotations, allowing users to add information such as game descriptions, release dates, ratings, and additional details when mentioning a game. Users will also be able to navigate directly to related game pages, explore more about the game, and discover other relevant posts and group finding posts.
Similarly, users can mention characters, triggering the display of character details, backstories, and roles. Additionally, users will have the ability to annotate a game with images.
The goal of these enhanced text annotations is to provide a seamless and informative user experience. Users will be able to quickly access information about games and characters directly within the annotation context, contributing to a more engaging and informed gaming community.
The primary source for annotation data will be our internal database. The platform will communicate with internal databases to fetch and display relevant data, ensuring a smooth and efficient user experience. As part of our implementation strategy, we may also explore the use of external annotation libraries after conducting research.
- Ahmet Kudu
- Beyzanur Bektan
- Emre Sin
- Emre Türker
- Erkam Kavak
- Halis Ayberk Erdem
- Hüseyin Çivi
- Ömer Huzeyfe Bahadıroğlu
- Ömer Talip Akalın
- Süleyman Melih Portakal
- Umut Demir
- Muhammet Mustafa Küçük
The project currently deployed on http://game-lounge.com.
- http://167.99.242.175:5432 --> Postgresql Deployment
- http://167.99.242.175:4000 --> Pgadmin Deployment
- http://167.99.242.175:8080 --> Backend Deployment
- http://167.99.242.175:80 --> Frontend Deployment
We utilize GitHub Actions for building and pushing Docker images to DockerHub. To view the specific Docker build commands, you can explore the .github/workflows directory.
Backend: In the app/backend folder, backend can be built by the following command:
- docker build -t erkamkavak/gamelounge-backend
Frontend: In the app/frontend folder, frontend can be built by the following command:
- docker build -t erkamkavak/gamelounge-frontend
Builded docker images can be accessed by following DockerHub repository:
Database(Postgresql):
- sudo docker run --detach -p 5432:5432 -e POSTGRES_USER="postgres" -e POSTGRES_PASSWORD="verysecurepassword" -e POSTGRES_DB="postgres" postgres
Backend:
- sudo docker run --detach -p 8080:8080 -e SPRING_DATASOURCE_URL="jdbc:postgresql://167.99.242.175:5432/postgres" -e SPRING_DATASOURCE_USERNAME="postgres" -e SPRING_DATASOURCE_PASSWORD="verysecurepassword" -e MAIL_URL="http://167.99.242.175:8080/" -e CLOUD_AWS_S3_BUCKET="game-lounge-storage" -e CLOUD_AWS_CREDENTIALS_ACCESSKEY=<aws_access_key> -e CLOUD_AWS_CREDENTIALS_SECRETKEY=<aws_secret_key> erkamkavak/gamelounge-backend:11
Frontend:
- docker run --detach -p 80:3000 -e REACT_APP_API_URL=http://167.99.242.175:8080 erkamkavak/gamelounge-frontend:17
Note: The server at the address 167.99.242.175 hosts the database, backend, and frontend deployments. To operate this on your local machine, you need to change the address from 167.99.242.175 to 'localhost'.
Additional Note: The deployment of the database, backend, and frontend should follow a sequential order. The frontend requires the backend for its initial setup, just as the backend depends on the database for its initial configuration.
In the app/mobile folder, application can be run via:
- flutter run
In order to create apk:
- flutter build apk
It creates a release apk in following folder:
build\app\outputs\flutter-apk\app-release.apk
- Ahmet Kudu
- Beyzanur Bektan
- Emre Sin
- Emre Türker
- Erkam Kavak
- Halis Ayberk Erdem
- Hüseyin Çivi
- Ömer Bahadıroğlu
- Ömer Talip Akalın
- Sena Özpınar
- Süleyman Melih Portakal
- Umut Demir
- Muhammet Mustafa Küçük
- Scenarios
- Mockups
- Meeting #1 - 03.03.2023
- Meeting #2 - 10.03.2023
- Meeting #3 - 12.03.2023
- Meeting #4 - 13.03.2023
- Meeting #5 - 19.03.2023
- Meeting #6 - 24.03.2023
- Meeting #7 - 26.03.2023
- Meeting #8 - 30.03.2023
- Meeting #9 - 02.04.2023
- Meeting #10 - 04.04.2023
- Meeting #11 - 05.04.2023
- Meeting #12 - 06.04.2023
- Meeting #13 - 07.04.2023
- Meeting #14 - 08.04.2023
- Meeting #15 - 09.04.2023
- Meeting #16 - 27.04.2023
- Meeting #17 - 30.04.2023
- Meeting #18 - 04.05.2023
- Meeting #19 - 07.05.2023
- Meeting #20 - 11.05.2023
- Meeting #21 - 05.10.2023
- Meeting #22 - 11.10.2023
- Meeting #23 - 16.10.2023
- Meeting #1 - 21.10.2023 (Backend)
- Meeting #1 - 22.10.2023 (Frontend)