COSC-499-W2023 / year-long-project-team-1

PrivacyPal: A secure messaging and video sharing service (COSC499 Team 1)
Apache License 2.0
18 stars 3 forks source link

[Assignment] Design Milestone #149

Closed connordoman closed 8 months ago

connordoman commented 9 months ago

Rubric: https://cmps-people.ok.ubc.ca/bowenhui/499/doc-design.html

Design Video

A 5-minute video showcasing all design aspects of your project so far. You will want to use a mix of a mocks, slides, and system demo to showcase what you have and how you got there. Be selective and use this as a promo of your work (you can choose from the content you need to submit from the design document).

The video should give the audience a quick overview of what you have so far and highlights of the design process that explains how you got there for 2 specific features. Be clear with the rationale and the steps you went through. If you have made design changes based on some kind of feedback, those aspects are probably the most interesting ones to showcase!

The final version of this video will be submitted as part of the design document as link. Make sure your video remains available for the duration of the grading period.

Design Document

The purpose of this document is to explain your rationale for what you have built. This would be easy if you have been documenting your decisions and choices along the way. Many companies ask about this type of experience during interviews, and it is also helpful for you to get into the habit of documenting design decisions, especially in large projects. Note that although we say "design document" in this milestone, you can choose to develop a traditional report and submit it in PDF or you can opt to build a webapge as part of your portfolio/website. The expected content will be the same; but the latter will be more useful for your career development.

By December, your prototype is likely fairly small so there won't be a lot of information you need to provide (which is good). In this milestone, we are interested in the design process and the rationale that happened behind the scenes. The video already gave us a demo of what your prototype has built. In this document, recap your prototype with a written description as well (approx. 2-3 sentences should suffice).

System Architecture Design: Recall the system architecture slides and tell us which architecture pattern you are using and why (it may also be something not in the slides). Provide more details about the components you have written, and where these components fit in the overall architecture so we can visualize how you have decomposed your system. Basically, this should all be captured in ONE diagram with the components on them and a few sentences explaining (i) why you chose this architecture and (ii) why the components are where you put them.

Database Design: Provide an ER diagram of the entities and relationships you have so far in your prototype (you can use your framework tools to generate this diagram if you want). In a few sentences, explain why the data is modeled this way and whether there is another way to model it but why this is better. Was there a time when you thought of having something different but chose this instead? If so, explain what that was and why that decision was canned. For this part, you only need to have ONE diagram and an explanation.

User Interface (UI) Design: The UI in your current prototype might be minimal but you have at least made some choices about the interaction flow of the application. Use a diagram to explain the navigation flow of your prototype so far and explain why it is designed this way (presumably related to user needs). You should use a second diagram to explain the alternate navigation flow and why that is less preferred. If you have implemented a lot of navigation already, you can just present a small part of what you have here and focus the discussion on the decision process. You don't need to explain the whole UI here. For this part, you should have TWO diagrams (your chosen navigation, and the navigation that you decided is worse) with an explanation of your choice.

Work Distribution

tthvo commented 8 months ago

Done: https://github.com/COSC-499-W2023/year-long-project-team-1/wiki