Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Update final_report.md #742

Closed
wants to merge 5 commits into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
77 changes: 63 additions & 14 deletions reports/final_report.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
Cmpe451 2023 - Final Project Deliverables
# Cmpe451 2023 - Final Project Deliverables

### Video: [video link](https://drive.google.com/drive/folders/19cJjTXpYUrv4onLyVnvAxpwDbQdP1dSB?usp=drive_link)

### Executive summary

Expand Down Expand Up @@ -147,15 +149,15 @@ We first designed the login and # pages and implemented the necessary API f
| --------| ------------ |
| [Hakan Emre Aktas](https://github.com/bounswe/bounswe2023group9/wiki/Hakan-Emre-Aktas) | As a member of the backend team, I have implemented several API endpoints with their tests and documentation. I tried to be as active as possible in the discussions we had during the weekly meetings on implementation, requirements, and design. I also maintained the database and made sure all the changes made in the implementation were reflected in the database. Furthermore, I was responsible for the DevOps of both the front-end and the back-end of the application. |
| [Ahmed Bera Pay](https://github.com/bounswe/bounswe2023group9/wiki/Ahmed-Bera-Pay) | As a member of the backend team, I have worked on implementing various API methods and their tests as well as documenting them in Postman after our regular meetings each week. I attended the discussions about design and implementation choices and expressed my ideas to contribute in them. I also contributed to the research and the implementation of annotations aligning with W3C standards. Also, as much as I could, I responded and fixed the bugs encountered on frontend as quickly as possible.
| [Ömer Şükrü Uyduran](https://github.com/bounswe/bounswe2023group9/wiki/%C3%96mer-%C5%9E%C3%BCkr%C3%BC-Uyduran) | |
| [Ömer Şükrü Uyduran](https://github.com/bounswe/bounswe2023group9/wiki/%C3%96mer-%C5%9E%C3%BCkr%C3%BC-Uyduran) | As a member of backend team; I implemented ORM models, API endpoints, and their unit tests in general. I documented my API endpoints in our Postman workspace, and created examples for them. I designed the structural outline of the backend project and initiated it. I attended our weekly lab meetings, discussed design and management topics with my teammates, and contributed to the decision making about our tech selections and project plan. I also discussed the specifications of some complex features (like semantic tagging, semantic search, and annotation functionality) with product owners and explained them to my teammates. I also took place in the research and implementation of semantic tagging, semantic search, and annotation service in the backend side. Furthermore; I fixed some of the bugs, gave my backend teammates detailed pull request reviews. I checked and ensured everyone is on the same page about requirements as much as I can. I contributed to the preparation of some of the meeting reports and uploaded them, I contributed to the preparation of the scenario and mock data of our final demo. |
| [Mehmet Süzer](https://github.com/bounswe/bounswe2023group9/wiki/Mehmet-S%C3%BCzer) | As a member of the frontend team, I mainly focused on designing pages, creating reusable widgets, and fixing render bugs. I also reported some of the problems that I encountered in the last weeks to the backend team . I spend a great deal of time making web and mobile design similar. I wrote providers for user and workspace semantic tags. |
| [Ahmet Abdullah Susuz](https://github.com/bounswe/bounswe2023group9/wiki/Ahmet-Abdullah-Susuz) | |
| [Ahmet Abdullah Susuz](https://github.com/bounswe/bounswe2023group9/wiki/Ahmet-Abdullah-Susuz) | I am member of the frontend team. My main responsibilities were designing and creating user interfaces also connecting backend with providers. I was mostly involved in the logic the admin features and question/answer page. Also, I was responsible for writing privacy policy. |
| [Ali Mert Geben](https://github.com/bounswe/bounswe2023group9/wiki/Ali-Mert-Geben) | I was a member of the backend team for all semester. My main tasks were implementing API functions with unit test and documenting them on the Postman, implementing database models for various classes according to class diagram and the creation of e-mail notification system. I also joined my teammates in the regular weekly meetings as well as finding and fixing bugs that may have occured previously.|
| [Arda Arslan](https://github.com/bounswe/bounswe2023group9/wiki/Arda-Arslan) | |
| [Zülal Molla](https://github.com/bounswe/bounswe2023group9/wiki/Z%C3%BClal-Molla)| I am a member of the frontend team. I mostly worked on the design and the implementation of the user interfaces for both mobile and web. I wrote several providers to make user interfaces functional. Screens that I had a significant contribution to are node details page and workspaces page. I also wrote some widgets to be used in other pages. I made research on ORCID authentication process. |
| [Leyla Yayladere](https://github.com/bounswe/bounswe2023group9/wiki/Leyla-Yayladere) | |
| [Leyla Yayladere](https://github.com/bounswe/bounswe2023group9/wiki/Leyla-Yayladere) | As a member of the frontend team, my primary focus was on developing the logic and implementing various user interface features for both mobile and web platforms. Notably, I contributed to the routing mechanism, latex rendering engine, and annotation mechanism. My significant contributions include the development of the node details and profile pages. Furthermore, I authored explanatory pages aimed at informing users of different levels (guests, basic users, etc.) about the functionalities available to them and the benefits of signing in or becoming a contributor. Throughout the project, I focused on learning from my peers in code reviews, understanding the existing code and adding to it in a clear and structured way.|
| [Omer Faruk Unal](https://github.com/bounswe/bounswe2023group9/wiki/%C3%96mer-Faruk-%C3%9Cnal) |In the project, I focused on using my frontend development experience to contribute to planning, structuring, and maintenance. I played a role in shaping all screens, whether as a contributor or reviewer. I spent time checking pull requests, resolving conflicts, and providing feedback to improve the codebase. My goal was to ensure a smooth and cohesive user experience. Overall, I aimed to bring practical expertise to the project, contributing to its success through a combination of development and quality assurance efforts. I implemented generic pages, routing mechanism, annotation, many providers and authentication mechanisms.|
| [Bengisu Kübra Takkin](https://github.com/bounswe/bounswe2022group3/wiki/Bengisu-Takkin) | |
| [Bengisu Kübra Takkin](https://github.com/bounswe/bounswe2022group3/wiki/Bengisu-Takkin) | I am a member of the frontend team. I mostly worked on the design and the implementation of the user interfaces for both mobile and web. Screens that I had significant contribution were profile page, settings page, admin features and relations page. I wrote the providers for them too. During this semester my aim was to be a good teammate, participate and contribute as much as possible and learn as much as i can. I put a great effort to read others code and learn from them. |


### API Endpoints
Expand Down Expand Up @@ -317,15 +319,24 @@ We were notified about image annotations in the last week before the final miles

### Scenarios
Scenario - 1:
A student called Bengisu works on a new approach on Bubble Sort with her friend Leyla. They decided to use the collaborative science platform. Bengisu sign-ups to platform and enters her ORCID. The she search for bubble sort in the platform. She find the node then creates a new workspace to add a new claim to this node. After adding their work, they send the workspace to review.
A student called Bengisu works on a new approach on Bubble Sort with her friend Leyla. They decided to use the collaborative science platform. Leyla already a contributor in the platform.
- Bengisu sign-ups to platform
- She first explores the home page as a newcomer.
- Then she searchs the bubble sort in the search bar and finds node, views node details.
- She checks nodes related to bubble sort.
- She decides to add their work to bubble sort node so she enters her ORCID to become a contributor in the platform.
- She creates a new workspace from bubble sort and add their new claim and proof to this workspace.
- After adding their work, she sends a collabration request to Leyla and then sends the workspace to review.
- The workspace is reviewed and accepted by the reviewers in the platform (which are Alper and Tunga).

Scenario - 2:
Cem Say realizes that he is being imitated by someone else in the platform and reports this user to platform admin.
Admin checks the situation and then bans this user.
Cem Say, a contributor in the platform realizes that he is being imitated by someone else in the platform and reports this user to platform admin.
- Admin examines the situation and decides that the report is valid. Then admin bans this user.

Scenario - 3:
Two Cem Say's students enter to the platform in both mobile and web to view their teachers work.
- After they search and find the nodes writed by their teacher, they make use of relations part in the website to see citations and references of their teacher's nodes.

### Use and Maintenance
Assure that the user and system manuals are correct by installing the application on alternative computers and mobile devices.
# Project Artifacts

## Manuals
Expand Down Expand Up @@ -417,10 +428,10 @@ Requirements Specification can be found [here](https://github.com/bounswe/bounsw
### User scenarios and mockups

Mock-ups can be found in the following links:
- [Contributor]( https://github.com/bounswe/bounswe2023group9/wiki/Scientist-Contributor)
- [Reviewer]( https://github.com/bounswe/bounswe2023group9/wiki/Reviewer)
- [Guest User]( https://github.com/bounswe/bounswe2023group9/wiki/Guest-to-Normal-User)
- [Collaborator]( https://github.com/bounswe/bounswe2023group9/wiki/Collaborator)
- [Contributor]( https://github.com/bounswe/bounswe2023group9/wiki/Scientist-Contributor)
- [Reviewer]( https://github.com/bounswe/bounswe2023group9/wiki/Reviewer)
- [Guest User]( https://github.com/bounswe/bounswe2023group9/wiki/Guest-to-Normal-User)
- [Collaborator]( https://github.com/bounswe/bounswe2023group9/wiki/Collaborator)

### Research
We did a comprehensive research on annotations, beginning with an exploration of the concept itself and then delving into the W3C standards. We carefully examined the general standard guidelines for annotations and researched the “vocabulary” concept. Additionally, we spent some time to better understand the structure upon which the standards are built.
Expand Down Expand Up @@ -661,6 +672,18 @@ Ran 5 tests in 20.276s
OK
Destroying test database for alias 'default' ('test_postgres')...
```

## Software

You can find the django database dump [here](https://github.com/bounswe/bounswe2023group9/files/13796102/data_dump.json).

To load it run `python manage.py loaddata data_dump.json`

Please do not run this when you are connected to the remote database.




# Individual Contribution Reports

## Member: Ahmed Bera Pay
Expand Down Expand Up @@ -1083,3 +1106,29 @@ Unit tests:
- [SemanticTagAPITestCase - (#673)](https://github.com/bounswe/bounswe2023group9/pull/673/files#diff-c341d6ef36d5d22a5cd01a1dd4676030062c9aadc198e63a31986ebf2c4e2454)


## Member: Ahmet Abdullah Susuz

**Responsibilities:** I am member of the frontend team. My main responsibilities were designing and creating user interfaces also connecting backend with providers. I was mostly involved in the logic the admin features and question/answer page. Also, I was responsible for writing privacy policy.

**Main contributions:** I designed and implemented q/a page design, providers and state management bugs. Also implement logic for display buttons for user based. In the last week fixed all its state and design bugs. I also wrote privacy policy for the application.

**Code-related significant issues:**
* [FE - Question/Answer Implementation](https://github.com/bounswe/bounswe2023group9/issues/567)
* [FE - Admin Features](https://github.com/bounswe/bounswe2023group9/issues/597)
* [FE - Privacy Policy to Login Page](https://github.com/bounswe/bounswe2023group9/issues/598)
* [FE - Tidy Up Q&A and Admin Features](https://github.com/bounswe/bounswe2023group9/issues/655)
* [FE - Settings Bug Fix](https://github.com/bounswe/bounswe2023group9/issues/656)
* [FE - Get hidden nodes bug](https://github.com/bounswe/bounswe2023group9/issues/727)

**Management related significant issues:**
* [FE - Writing Privacy Policy](https://github.com/bounswe/bounswe2023group9/issues/663)

**Pull requests:**
* [Privacy policy](https://github.com/bounswe/bounswe2023group9/pull/618)
* [Question answer pages](https://github.com/bounswe/bounswe2023group9/pull/632)
* [bug fixed in settings](https://github.com/bounswe/bounswe2023group9/pull/710)
* [Admin features frontend](https://github.com/bounswe/bounswe2023group9/pull/716)
* [Get hidden node bug](https://github.com/bounswe/bounswe2023group9/pull/724)

**Reviewed:**
* [Privacy policy text](https://github.com/bounswe/bounswe2023group9/pull/718)
Loading