Question: Project: Software Requirements and Design. Note: Please give me everything in detail with very clear explanation You're tasked with developing a Personalized Video Recommendation platform.

Project: Software Requirements and Design.
Note: Please give me everything in detail with very clear explanation
You're tasked with developing a Personalized Video Recommendation platform. This platform will offer customized video suggestions based on user preferences and interests. Additionally, users will have the ability to upload their own videos, fostering community engagement and creativity. Your goal is to create a seamless experience that keeps users coming back for more, while seamlessly integrating user-generated content with personalized recommendations. Embrace the challenge of empowering users to contribute their own content and shape the platforms vibrant ecosystem.
Goals:
(1) Support efficiency and ease of use for users to discover videos they enjoy by providing personalized recommendations based on their interests and viewing history.
(2) Support users to upload their videos and search and view videos on the platform.
(3) Promote meaningful learning for user through access to legal and healthy resources.
Users:
The potential video viewers, creators, and administrators (these individuals or teams are responsible for moderating and managing the content uploaded to the platform), etc.
Tasks:
1. Task 1: Decomposing the system into smaller subsystems. List the potential subsystems and briefly discuss each subsystem
2. Task 2: Choose an Architectural Pattern to model the system. Explain why you have applied a particular architecture pattern, for example, advantages and disadvantages of using this architecture pattern. Draw a UML diagram to visualize the system, including the subsystems, key classes (only need class name) inside each subsystem, and basic relationships (we simplify it only association or dependency relationship) between subsystems and classes.
3. Task 3: Identity a potential issue of this system (e.g., scalability) when you analyze and design the system, and what is your design decision to address it. Document the design rationale, using the Issue, Proposal, Argument, Criteria, and Resolution format.
4. Discuss three potential design patterns that could be applied to the system and briefly discuss the reasons.
Please give everything in detail.

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Programming Questions!