Weekly Progress Report #3 | 17.10.2023 - bounswe/bounswe2023group9 GitHub Wiki

Project Development Weekly Progress Report #3

Team Name: Collaborative Science Platform

Date: 17.10.2023

Progress Summary

This week we focused on learning backend and frontend technologies. Creating the structure of out project. Creating first pages of the application.

Subteams:

  • Front-end Team: Zülal, Bengisu, Abdullah, Mehmet, Ömer Faruk, Leyla
  • Back-end Team: Ömer Şükrü, Ahmed Bera, Oğuz, Hakan, Arda, Ali Mert

Our objective for the following week is to focus on defining critical data models and classes for user types, nodes, proofs, theorems ensuring a strong foundation for project's core functionality. Additionally, we'll also work on creating a generic page template, set up home and profile pages.

What was planned for the week? How did it go?

Description Issue Assignee Due Estimated Duration Actual Duration PR
Updating the requirements according to the decisions taken and discussions with the product owner #260 Team 13.10.2023 1hr 1.5hr wiki
Updating the UML diagrams according to the updates in the requirements #261 Team 17.10.2023 3hr -- --
Review of the Project Plan #252 Team 12.10.2023 1hr 1.5hr wiki
Review of the RAM table #262 Team 12.10.2023 1hr 1.5hr link
Designing file structure outlines for front-end #254 Front-end Team 13.10.2023 2hr 1.5hr #269
Designing file structure outlines for back-end #263 Back-end Team 13.10.2023 2hr 2hr #273
Deciding and setting up development, testing environment #264 Team 13.10.2023 2hr 2hr page
Defining authentication mechanisms #265 Team 13.10.2023 2hr 1.5hr #276
Creating User Models #255 Back-end Team 15.10.2023 5hr 1hr #276
Signup Page POST API #256 Back-end Team 15.10.2023 3hr 2hr #276
Login Page POST API #257 Back-end Team 15.10.2023 3hr 2hr #276
Signup Page #266 Front-end Team 17.10.2023 5hr 6hr #282
Login Page #267 Front-end Team 17.10.2023 5hr 5hr #282

Completed tasks that were not planned for the week

Description Issue Assignee Due PR
Get authenticated user API is written #275 Ömer Şükrü 30mins #276
CORS policy implamentation #279 Hakan 1hr #280
Implamenting Tests for API #279 Backend Team 1hr #281

Planned vs. Actual

  • We planned to update UML diagrams according to changes in the requirements. However we decided wait for the requirement revision of the product owner before updating the diagrams.
  • This week we planned to create all user models however we decided to implement only the basic user model since we won't need other models for now. So we decided to postpone implementing other models.

Your plans for the next week

Description Issue Assignee Due Estimated Duration
Transfer Project Plan to Github Project Road Map Page #283 Hakan, Ömer Şükrü 24.10.2023 5hr
Profile Page GET API #285 Oğuz 22.10.2023 2hr
Home Page GET API #286 Ali Mert, Hakan 22.10.2023 5hr
Profile Page #288 Bengisu, Leyla, Zülal 24.10.2023 9hr
Home Page #289 Abdullah, Mehmet, Ömer Faruk 24.10.2023 12hr
Generic Parent Page #290 Ömer Faruk 22.10.2023 2hr
Admin Class/Model Implementation #291 Arda 22.10.2023 1hr
Reviewer Class/Model Implementation #292 Arda 22.10.2023 1hr
Contributor Class/Model Implementation #293 Arda 22.10.2023 3hr
Node Class/Model Implementation #294 Bera 22.10.2023 3hr
Theorem Class/Model Implementation #296 Bera 22.10.2023 1hr
Proof Class/Model Implementation #297 Bera 22.10.2023 1hr
Question Class/Model Implementation #298 Ömer Şükrü 22.10.2023 2hr
Semantic Tag Class/Model Implementation #299 Ömer Şükrü 22.10.2023 2hr

Risks

  • Some of the tasks are dependent therefore we may have timing issues.
  • While it's not a significant risk, it's important to acknowledge that implementing the homepage before incorporating search functionalities and graph visualization is a deliberate decision. This approach prioritizes a generic structure for the homepage at this stage, with plans to enhance it over time.

Participants

  • Ahmed Bera Pay
  • Ahmet Abdullah Susuz
  • Arda Arslan
  • Ali Mert Geben
  • Bengisu Kübra Takkin
  • Hakan Emre Aktaş
  • Leyla Yayladere
  • Mehmet Süzer
  • Ömer Faruk Ünal
  • Ömer Şükrü Uyduran
  • Oğuz Pançuk

Implementation Strategies

  1. Main Branch Protection Strategy: Developers can not commit directly to main branch, backend branch and frontend branch.
  2. Unit tests will be implemented by the developers who developed related features. They have to be included in the same pull request with the related feature.
  3. In the frontend side of the project, vscode flutter plugin's default formatter will be used by all developers. And in the backend side of the project, vscode django plugin's default will be used by all developers.
  4. Branch's will be created based on the features that will be implamented.
  5. Pull requests will be connected to the related issues.