Architecture for a Music Distribution System
publish date: 2026/06/11 07:14:53.647742 UTC
An online music distribution system (similar to iTunes) needs to sell and distribute music over the Internet. It must handle a large catalogue of music, manage user accounts and purchases, stream or download audio files, and process payments. Which combination of architectural patterns forms the most appropriate base architecture, and why?
Correct Answer
Explanation
A music distribution system naturally uses multiple patterns: Client-Server is the primary pattern because users (clients) access distinct services - catalogue browsing, streaming/download, and payment processing - from separate servers. A Repository pattern manages the large shared music catalogue and user account database. MVC suits the web front-end where the same catalogue data is presented in different views (search results, recommendations, album pages) and user interactions are separated from the data model.
Reference
Software Engineering, Ian Sommerville, 10th edition
