My part for milestone report - bounswe/bounswe2022group7 GitHub Wiki
Demet Yayla
Milestone 1:
Work | Link |
---|---|
I created the initial entity classes for backend | #256 |
I created the initial endpoints which are related to items that will appear in homepage | #287 |
I wrote the endpoint that will return a single event with the id provided by frontend. | #301 |
I fixed a database integration error. | #295 |
I searched on Spring Boot annotations for different kinds of database relations. | #310 |
I searched on fixing spring annotation for manytomany | #309 |
I did a research on how to write integration tests for secured restful methods. | #358 |
Reviewed issues. | #302, #345 |
Review and update class diagram with Can Atakan Uğur | #239 |
Review and update Project Plan with team leaders and Can Atakan Uğur | #241 |
Update communication plan. | #244 |
Review and update sequence diagram for Discussion forum. | #245 |
After the first backend meeting, update class diagram and requirements | #250 |
Update the sequence diagram for discussion forum related to the latest modification on class diagram | #312 |
I was the notetaker for 2 backend meetings. We did three backend, three general team meetings so far and I attended them all. | |
Revision of this issue about deliverables | #329 |
Solving pop-up premilestone requests. | #347 |
Gave feedback on this issue related to milestone presentations on Tuesday. | #353 |
I was one of the notetakers in milestone presentations. | |
I wrote individual milestone report. | |
I wrote parts of milestone group review (wrote some of part 3 and my own sections in part 6 and 7.) | #370 |
Milestone 2:
Task | Link |
---|---|
Create-delete events & art items | #394 |
Author field missing fix and DTO addition. | #420 |
Endpoint for update and view profile settings. | #437 |
Endpoint to follow user. | #447 |
Converting a string to list of strings. | #450 |
Art item creator error bug fix. | #457 |
Change structure for upvote downvote. | #467 |
Attempt to write tests. | #358 |
Review of the issues. | #453, #455, #457, #388, #438, #372 |
Reviewer of PRs | #440, #345 |
Owner of the PRs | #428, #436, #448, #456, #468, #477 |
Form sample data to showcase in milestone presentation. | #496 |
Discussion on scenarios for milestone presentation. | #497 |
Tracking requirement progress for milestone report. | #515 |
Notetaker | The meeting note |
Writing part three of group review for milestone 1. | #370 |
One of the notetakers for milestone 2 presentations. |
Milestone 3:
Work | Link |
---|---|
Implemented Search feature | #547 |
Reviewed issues | #554, #555,#558 |
Reviewed PRs | #556,#561,#540 |
Helped with user scenarios for milestone presentation | #607 |
Sample data formation for the application. | |
Wrote "Process According to Requirements" part for final report | |
Reviewed "Executive summary" part for final report. |
Demet Yayla
Member:
I am Demet Yayla and am a member of group 7. I am in backend team and the leader of the backend team.
Responsibilities:
- I provide the database communication with user, acting in behalf of the application in a nutshell providing domain specific functionalities. I created repositories, entity classes, data transfer objects, endpoints, configurations. I worked on testing. I also helped mainly with the formation of sample data for milestones.
Main Contribution:
Code related issues:
-
I did research on how to fix wrong usage of “cascade” type for many-to-many relations
-
[I researched about how to write integration tests for especially authenticated endpoints](https://github.com/bounswe/bounswe2022group7/issues/358
-
In issue #394 I was assigned to write endpoints to create and delete events and art items. I faced a lot of interconnected errors which we expected to face while writing the entity classes (spring boot annotations are really complex and since we had many connections between entities it was a hard task I could not overcome on my own). I had a really hard time solving them and collaborated with @askabderon after a point.
-
In issue #420 we had author field missing for comments. I converted the return type to a DTO and tidied the code a little while solving the problem.
-
In issue #437 I wrote the endpoints for updating and viewing user settings.
-
In issue #447 I wrote endpoints for following a user.
-
In issue #450 I wrote endpoints for converting a string of list to a list.
-
In issue #457 I fixed an error, art item creation owner is now not absent.
-
In issue #467 I added a logic for enabling tracking who liked what. Otherwise we couldn’t see who liked and one could like multiple times also.
-
In issue #358 I attempted to write tests.
-
I implemented the search feature: issue #547
-
I did modifications requested from frontend on backend code base: issue #590
-
I was reviewer of following PRs:
-
I was the owner of below PRs:
- PR about single event item endpoint
- PR about inheritance
- PR about homepage controller and endpoints
- Owner of this PR
- Owner of this PR
- Owner of this PR
- Owner of this PR
- Owner of this PR
- Owner of this PR
- Owner of PR #559
-
I was the reviewer of below issues:
- Issue about single art item endpoint
- Issue about backend dockerization
- Reviewer of this issue
- Reviewer of this issue
- Reviewer of this issue
- Reviewer of this issue
- Reviewer of this issue
Management related issues:
- I was selected as the backend team leader
- Review and update class diagram with Can Atakan Uğur
- Review and update Project Plan with team leaders and Can Atakan Uğur
- Update Communication Plan
- Review and update sequence diagram for Discussion forum
- After the first backend meeting, update class diagram and requirements
- Update the sequence diagram for discussion forum related to the latest modification on class diagram
- I was the notetaker for 2 backend meetings. We did three backend, three general team meetings so far and I attended them all.
- Review annotation sequence diagram
- Revision of this issue about deliverables
- Before milestone presentations, there were some pop-up mock data related requests to be injected to database related to art items and events. I worked on those
- Gave feedback on this issue related to milestone presentations on Tuesday
- I will be one of the notetakers in milestone presentations
- Participating with the documentation about backend endpoints for tagging the code base for milestone.
- In issue #496 we formed the sample data to be showcased in milestone 2 group presentations.
- In issue #497 we discussed about scenarios for milestone 2 group presentations.
- In issue #515 I took the part of tracking progression related to project requirements for milestone 2 group report.
- I was the notetaker for meeting 15
- Writing part three of group review for milestone 1 in this issue
- I helped with preparing scenarios for milestone presentations: issue #607
- I was one of the notetakers for the final milestone
- I was one of the members preparing sample data for final milestone to populate the application during demo
- I reviewed executive summary part for the final milestone report.
- I wrote the “Process According to Requirements” part for the final milestone report.
- I created sample data for the application to satisfy 100 database inputs constraint for the final milestone deliverables.
Unit tests:
- I tried writing integration tests before a lot. I couldn’t manage to run them, they always gave error. Then with the initial examples done by my backend team mates for unit testing, I tried to implement one that was not running in happy path but the tests didn’t give the response I expected it to give. The commit can be found in the deleted branch with name: dev/backend/tests . I gave up writing unit tests after my failure on this. I did reviews on unit tests though, can be found on the review PRs and issues I mention here.
Additional Information:
- For the last milestone I mostly worked on search. I implemented two different solutions, one I cut in half since I thought it would not be efficient with our given limited resources and started seeking smarter ways. I researched what kinds of other approaches existed that weren’t necessarily complicated. I finally decided on using full text indexing on our MySql database. I spent also a lot of time trying to automatize auto-index queries when application run for the first time and creating a db afresh. I almost managed to implement it but CICD tests exploded and I had to revert them, just providing the necessary indexing queries to be run manually if we drop the database and need to recreate it afresh.