Skip to content

Third Customer Milestone

Yekta Eren Ercul edited this page Dec 20, 2024 · 34 revisions

Table of Contents

1 Executive Summary

1.1 Summary of Project Status

As of the final milestone, we were able to successfully implement and test all the planned features in backend and frontend with mobile still lacking several minor ones. Overall, we are satisfied with the number and the diversity of our features and ideas. We also think that we have managed to process the feedbacks we have received into valuable outcomes, especially after the second milestone. As a result, our efforts culminated in a functional app, which we believe serves well to its' target audience.

1.2 Status of Deliverables

Deliverable Status
Project Repository Completed & Maintained
Issues Completed & Maintained
Weekly Meeting and Lab Notes Completed
RAM Completed
Third Customer Milestone Report Completed
Deployed Backend Completed
Deployed Frontend Completed
Mobile Apk Completed
Release Version Completed
Project Requirements TODO edit wrt latest feature set
Mockups TODO add missing ones
User Scenarios TODO write from scratch
Sequence Diagrams TODO change wrt feedback
Class Diagrams TODO change wrt feedback
Use-Case Diagrams TODO change wrt feedback

1.3 Final Release Notes

Our final release notes can be found under our latest release, here.

1.4 Changes since last milestone

As far as our development process is concerned, we have taken several decisions after the last milestone. Organizing more meetings between Frontend and Mobile teams was the most significant change we have applied. With this change, we aimed to maintain the design consistency across these two platforms. Furthermore, since Frontend team was ahead of the Mobile team in terms of number of implemented features, they guided Mobile team on the details of the implementation. Another approach we have changed was the task prioritization. Especially for the Backend team, we have thoroughly discussed which features to rule out and which ones to implement based on the feedback from the second customer milestone. As a result of these changes, we were able to bring new features in a more complete state and also further improve the existing ones.

1.5 Final Milestone Demo Reflections

TODO Tuluyhan

1.6 What could have been done differently

Going back to the start, we could have done several things differently. First of all, some of the key features that we have implemented have been planned during the semester, which loaded a weight onto Frontend and Mobile teams. Instead of this, we could have planned our app in a more detailed manner so that teams can individually distribute the workload better. Furthermore, although Backend team was able to implement all the planned functionalities, they were late at structuring api input and outputs, which became a bottleneck in development phase, as Frontend and Mobile teams could not start developing their corresponding components and they wasted time while trying to run the backend on their local computers. Finally, we were late at communicating Frontend and Mobile teams, which caused several design decisions to differ across these platforms.

2 Progress Based On Teamwork

2.1 Work performed by each member

TODO Ram olabilir mi?

2.2 Status of Requirements

Our Requirements are fully completed.

2.3 API Endpoints

TODO

2.3.1 API Documentation

We are using Swagger UI for API documentation purposes. It can be accessed here.

2.3.2 Link to the API

Same with the documentation link, our API can be tested here.

2.3.3 Example API Calls

TODO

2.4 User Interface and Experience

2.4.1 Link to UI designs

TODO

2.4.2 Screenshot of interfaces

Frontend

TODO

Mobile

Screenshot 2024-12-20 at 11 48 20 Screenshot 2024-12-20 at 11 49 20 Screenshot 2024-12-20 at 11 51 51 Screenshot 2024-12-20 at 11 52 17 Screenshot 2024-12-20 at 11 52 40 Screenshot 2024-12-20 at 11 54 25

3 Standard

We have implemented an annotation feature that complies with the W3C Web Annotation Data Model standard. Users can post annotations in post body texts using the web application, and can view annotations posted by other users in both the web and the mobile applications. Annotated text in post bodies is highlighted/underlined to make it easier for users to notice. Users can click/tap on annotated text to read the respective annotation.

4 Scenarios

TODO

5 Individual Contributions

  • Responsibilities:

  • Main Contributions:

  • Code-related significant issues:

  • Management-related significant issues:

  • Pull Requests:

  • Unit Tests:

  • Additional Information:

  • Responsibilities: As a member of the mobile team, my responsibilities included implementing the necessary enhancements after the second customer milestone in accordance with the requirements and the customer feedback, as well as keeping track of and reviewing the work of my teammates.

  • Main Contributions: In the time period between the second and third customer milestones, I was mainly occupied with implementing annotations for the mobile app (#410). Other than that, I updated post creation and viewing in the mobile app in accordance with the form feature, which was implemented after the second customer milestone in accordance with customer feedback (#438).

  • Code-related significant issues:

Summary Issue PR
Implement annotations #410 #440
Implement updated post creation/viewing #438 #439
  • Pull Requests: As mentioned above, I participated as an author in the following pull requests: #439, #440. Furthermore, I was a reviewer in the following PR: #425.
  • Responsibilities:

  • Main Contributions:

  • Code-related significant issues:

  • Management-related significant issues:

  • Pull Requests:

  • Unit Tests:

  • Additional Information:

  • Responsibilities: I was mainly working on improving and finalizing existing features and making small additions based on the feedback from the second customer milestone. I have also tracked the progress of Frontend and Mobile teams.

  • Main Contributions: I have spent most of my time deciding which improvements we need to make for the final milestone. Initially, I have conducted a research on design specification of 3D models, as it was one of the features that were requested after the second milestone. #429 Then, based on the current situations of Backend, Frontend and Mobile; I have created a list that includes the remaining work for each team and I have written it to the Lab 9 Report. #420 For the implementation part, I have started by integrating post tags into the semantic search flow. #415 Additionally, I have designed a new endpoint, which allows users to search posts just by tags. #446 Next, I have designed several other achievements to enhance user experience. #417 Concluding the implementation phase, I have implemented user search feature, which allows users to find other users with the search bar. #404 I have also implemented post update and delete features. #419 Following that, I have written several unit tests mainly for the Wikidata service and several other services. #443 Next, I have prepared the outline for our presentation. #444 Finally, I have written Executive Summary and Status of Requirements sections in this report. #442

  • Code-related significant issues:

Summary Issue PR
Add tags for semantic search #415 #416
Implement search posts by tags #445 #446
Create new achievements #417 #418
Implement User Search #404 #414
Implement Post Update&Delete #419 #441
Write Unit Tests #443
Review Swagger Descriptions PR #433
Review Integration test PR #447
  • Management-related significant issues:
Summary Issue
Design Specification Research For Post Forms #429
Creating&Maintaining branches for Lab 9 and Writing the Report #420
Preparing scenarios for customer milestone 3 presentation #444
Writing the report for customer milestone 3 #442
  • Pull Requests: As mentioned above, I have reviewed pull requests regarding swagger documentations and integrations tests #443, #447 Then, I have implemented semantic search tag integration, search with tags, search users, delete&update posts, new achievements and created a pull requests. #416, #446, #418, #414, #441.

  • Unit Tests: During the time between second and third customer milestones, I have written unit tests for WikidataService and PostService. For WikidataService, my test were overall checking whether the retrieved sibling and parent instances were accurate. For PostService, I have focused more on post deletion and tried to cover edge cases, such as preventing deletion of not owned posts. Further details can be found here.

  • Additional Information: I have tracked the progress and design consistencies of Frontend and Mobile. I also participated in all meetings.

  • Responsibilities:

  • Main Contributions:

  • Code-related significant issues:

  • Management-related significant issues:

  • Pull Requests:

  • Unit Tests:

  • Additional Information:

  • Responsibilities:

  • Main Contributions:

  • Code-related significant issues:

  • Management-related significant issues:

  • Pull Requests:

  • Unit Tests:

  • Additional Information:

  • Responsibilities:

  • Main Contributions:

  • Code-related significant issues:

  • Management-related significant issues:

  • Pull Requests:

  • Unit Tests:

  • Additional Information:

  • Responsibilities:

  • Main Contributions:

  • Code-related significant issues:

  • Management-related significant issues:

  • Pull Requests:

  • Unit Tests:

  • Additional Information:

  • Responsibilities:

  • Main Contributions:

  • Code-related significant issues:

  • Management-related significant issues:

  • Pull Requests:

  • Unit Tests:

  • Additional Information:

🏠Home

Final Milestone Project Artifacts

🛠️Project

🔍Labs

📁Assignments

📝Meeting Notes

👥Team Members

📄Templates

⚽️352 Material

352 Material

🛠️Project

🔍Research

📁Assignments

📝Meeting Notes

👥Team Members

📄Templates

Clone this wiki locally