Work Done By Each Member Milestone 2 - bounswe/bounswe2024group6 GitHub Wiki

Elif Nur Deniz

Task Details Issue Link Wiki Link
Joined all meetings, PSs, lectures. - Wiki Meeting #8-12 & Frontend & Devops
Took part in class diagrams and reviewed them all. Issue, Issue Wiki
Studied React and investigated example projects on it. Issue -
Selected UI component libraries for web and mobile and implemented it along with Tailwind CSS. Issue -
Designed browse page and search bar. Issue Page
Added functionalities to register and login pages. Issue Page
Added functionalities to browse page and search bar. Issue Page
Presented demo session in class. Issue -
Took part in project deployment and droplet selection. Issue -
Talked about Git Workflow, PR Structure, Docker structure with the team. - Meeting 11
Added missing meeting notes to Github wiki from my past notes. Issue Meeting Frontend #* & Meeting Deployment
Updated Readme file. Issue Page
Wrote milestone report with team members. Added front-end specific parts. Issue, Issue Page

Challenges

I didn't have any prior experience working in a group on a software engineering project. So this was a really major challange for me we did the same parts with my partners a couple of times. Than we overcame this problem by exact seperation of tasks among us. Also I had to learn all the things from scratch which can be quite challenging pshychologically also, since you can never now when you will be able to code it properly and there is a strict deadline set in front of you.

Battal Hazar

Task Details Issue Link Wiki Link
Joined all meetings. - Wiki Meeting #8-12 & Mobile
Took part in class diagrams and reviewed them . Issue, Issue Wiki
Studied React Native app and investigated example projects on it. Issue -
Join demo session in class. Issue -
Took part in mobile project. Issue-
Talked about Git Workflow, PR Structure, Docker structure with the team. - Meeting 11
Wrote milestone report with team members. Issue, Issue Page

Challenges

Since I only had a one-year computer engineering education, doing a software engeriing project in a group was a challenge for me in every aspect. I had difficulty both keeping up with the team and doing useful work due to my insufficient knowledge.

Yunus Emre Özdemir

Task Details Issue Link Wiki Link
Drew Auth and Wikidata related sequence diagrams. Issue Sequence Diagrams
Studied React and looked at example applications. Issue -
Set up Frontend React App with Vite. Issue PR
Dockerized frontend, backend and database services. Issue PR
Configured MySQL database. Issue Docker Compose
Did a research on different routing solutions and implemented react-router. Issue PR
Created an initial file structure for frontend. Issue PR
Implemented Navbar. Issue PR
Designed Home Page UI. Issue PR
Implemented useAuth hook and client side authentication functionality. Issue PR
Fixed CORS errors. Issue PR
Deployed the project on Digitalocean. Issue -
Fixed errors encountered on Digitalocean. - PR
Presented our application demo with other team members. Issue -
Fixed errors related to Docker compose. Issue PR
Implemented Browser page display. PR
Hosted meeting #11 Meeting #11
Actively participated in General, Frontend and Deployment Meetings. Meeting #11-12, Frontend, Deployment

Challenges

Technical Challenges: I only had some experience with Next.js before starting this project. So implementing and using react-router and deciding on a file structure was a challenge for me since Next.js has its own router and kind of opinionated file structure. I solved this by looking at example applications on GitHub and searching about best practices for each decision. Another challenge was to set up authentication related functionalities in the frontend as I had only used third party solutions before. However, I had already researched about common authentication practices for sequence diagrams. Therefore, I was able to easily set up the authentication hook and its usage by looking at some examples. I also encountered some unexpected errors and solved them along the way such as CORS errors when making requests to django, Docker compose related errors and address related errors on Digitalocean. Detailed information about these errors and their corresponding fixes can be found in my work done table with their related Issues and PRs. Other Challenges: We could started working on Milestone 2 a little late and therefore were in a rush most of the time. We are planning to start early for the final milestone. We were used to having meetings together with all members, but quickly realized that molecular meetings about important tasks with members responsible for the tasks was way easier to organize and way more efficient. We also had a little mismatch in the order of functionalities we implemented with backend team. We will be making more detailed plans together and increase communication between teams from now on.

Oktay Özel

Task Details Issue Link Wiki Link
Draw Use Case Diagrams Issue Use Case Diagram
Requirements Review and Update Issue Requirements
Prepare RAM for milestone 2 Issue RAM can be reached here
Login and Sign-up Views Issue
Project Plan Update Issue Project Plan
Review the Backend Part Issue
Demo Session Presentation Issue
Research on Django Rest Issue
Start Backend Repo and Code Skeleton Issue
Coding serializers, views, urls Issue
Configuring settings.py and validating via test.rest Issue
Milestone Report 2 - Backend Issue Report
Fill work done for milestone report 2 Issue Work Done
Design and Implement a database model Issue

Challenges

I had no idea when I first started to the backend part. I also had very little knowledge about how to develop a software in a group from the lectures. For this reason, I had to learn everything from scratch. I have wathed tutorials on different topics about our project however all those tutorials were applying various methods so I had a confusion when we switch to our project. I couldn't now which one to apply by myself most of the times. Having less experience was by far the most important challange for me but I am planning to overcome this by time. Another minor issue was coordinating with my peers but by having regular meetings we will overcome that issue also.

Aras Taşçı

Task Details Issue Link Wiki Link
Took part in creating class diagrams #74,#69 Wiki
Researched and practiced SPARQL and WikiData API to create queries, and wrote the WD queries. #93 -
Implemented searching functionality by writing a 'search' endpoint, making WikiData API calls and pulled out the image of the item from WikiMedia. #94 -
Improved the time of the search functionality by nearly 300% by converting the query calls to WikiData asynchronously. #105 -
Reviewed the Backend code from top to bottom. #117 -
Studied Postman and used it to test the functionality of endpoints. #129 -
Refactored the code to make synchronous WikiData API calls after we faced a problem related to DigitalOcean in deployment. #148 -
Wrote the Backend subsections under the Challenges Encountered header and the Git Workflow subsection under the Lessons Learned header. #144 -

Challenges

I had difficulty adapting to the Python language when using Django after using strongly-typed languages for my own endeavors for a very long time. I also had little to no knowledge about backend development. I reviewed my Python knowledge and watched a couple of crash courses for the Django framework. And after looking at some example Django code, I gained the necessary knowledge to proceed.

Kaan Yolcu

Task Details Issue Link Wiki Link
Joined all meetings -
Hosted meeting 9 Backend 1 2 meetings and tracked my team members' issues . - Meeting
Draw Use Case Diagrams Issue Use Case Diagram
Updated and Made the Project Plan Table according to determined dates and distribution of work Issue
Took Part in Dockerizing Database researched about docker tried to solve the CORS error many hours before Yunus Emre solved it . Issue
Research on Django Rest APIs and models. Learned what Django is and watched a CRM tutorial about Django Issue
Studied Postman and Tested Endpoint Functionalities Issue
Researched and practiced SPARQL and WikiData API to create queries Issue
Implemented Searching Functionality in Django application Issue
Prepared Issue Template Issue Issue Template
Reviewed the Backend Part made the code cleaner and more responsive Issue
Added missing meeting notes to Github wiki from my past notes. Issue Meeting Backend #* & Meeting Deployment

Challenges

It was very hard to dockerizing the project . Yunus Emre wroted the docker files and the docker_compose.yml file but they didn't worked . I learned docker from the start and its concepts . It was challening to learn how to write them and which rules they have. Then , I tried to fix the error for a long time . Because I was unexperieneced I didn't realized the error was because of CORS. Apart from that I had challenges when I tried to study SPARQL language . In start I tried to learn it from scratch. But then we realized they had a system that is generating the SPARQL queries for specific demands which made our job easy. Another challenge was to make compatible with my code and my friend's code . Creating PRs and choosing the right version of the code was another challenge.

Anıl Köse

Task Details Issue Link Wiki Link
Joined all meetings, PSs, lectures. - Wiki Meeting #8-12 & Mobile & Devops
Took part in sequence diagram and reviewed them all. Issue Wiki
Studied React Native and investigated example projects on it. Issue -
Selected UI component libraries for web and mobile and implemented it for our mobile app. Issue -
Designed browse page and search bar. Issue Page
Set up the mobile app. Issue -
Added login page and functionality for mobile app. Issue Page
Added sign up page and functionality for mobile app. Issue Page
Added functionalities to browse page and search bar. Issue Page
Presented demo session in class. Issue -
Took part in project deployment and droplet selection. Issue -
Talked about Git Workflow, PR Structure, Docker structure with the team. - Meeting 11
Added missing meeting notes to Github wiki from my past notes. Issue Meeting Mobile #* & Meeting Deployment
Updated the mobile app part of the Readme file. Issue Page
Wrote milestone report for the mobile app. Issue, Issue Page

Challenges

I did not run into many challenges. Completing the whole mobile app on my own was challenging. Setting up the mobile application is usually the most challenging part of developing a mobile app.

Eymen Esad Çeliktürk

Task Details Issue Link Wiki Link
Joined all meetings. - Wiki Meeting & Backend
Took part in sequence diagrams and reviewed them . Issue, Issue Wiki
Studied Django and MYSQL and investigated example projects on it. Issue -
Join demo session in class. Issue -
Took part in backend project. Issue-Issue
Talked about Git Workflow, PR Structure, Docker structure with the team. - Meeting 11
Wrote milestone report with team members. Issue, Issue Page
Design and Implement a database model Issue

Challenges

|Milestone Report 2 - Backend | Issue |Report |

I had difficulty due to the limited time given. Setting up and configuration of the project is the challenges I faced.

Halil Özkan

Task Details Issue Link Wiki Link
Draw Class Diagrams Issue
Tracker of week Issue
Create profile and feed for class diagrams Issue
Login and Sign-up Views Issue
Review the Backend Part Issue
Research on Django Rest Issue
Start Backend Repo and Code Skeleton Issue
Coding serializers, views, urls Issue
Configuring settings.py and validating via test.rest Issue
Milestone Report 2 - Backend Issue Report
Fill work done for milestone report 2 Issue Work Done
Design and Implement a database model Issue

Challenges

Trying to understand and code with a language that you don't have any experience was hard, it took lots of works and I studied really much. It took the most of my time. Also, dockerization and using a cloud database were new challenges to me, because I mostly worked on developing product side in my internships and I was just coding on my local. It was hard to setup a project because I encountered lots of errors caused by my lack of experience in software engineering