Musify
Abstract
Musify is a multiplatform social media music streaming app that is essentially used on mobile devices such as phones and tablets. The application will include all the features found in traditional music platforms, including creating and sharing playlists, as well as uploading, streaming, and downloading music. It is also a social media application, so it will also include a profile feature where users can follow each other and have a deep delve into their music tastes. It will be designed to handle huge chunks of data by having a scalable architecture. It will also be robust and available to users almost every time of the day because music is something people can stream 24/7.
Author
Name: Raghav Aggarwal
Student number: 46553933
Functionality
To map out the functionality, we have decided to divide the application into two segments of user profiles: Artists and Streamers.
Artists Features:
- Releasing/ deleting albums: They would have the ability to upload data for other users to access.
- Keeping track of their following insights into streaming trends: An insight tool to monitor trends and give updates to the artist so they keep up with music trends.
- A collaboration tool: Having the ability to collaborate with other artists to release music.
Streamer Features:
- Streaming:Users can stream music in various music qualities; Having wide array of music to choose from.
- Downloading: Users can download music locally on there devices to access music when not connected to internet
- Creating albums: Users can group the music in albums for easy access.
- following friends/artists: They can follow other users and check there status/ account activity that includes: music tastes, playlists, liked songs, following etc;
- making shared playlists: 2 or more users can make a collaborative playlist and save songs together
- Music taste filter systems: App will decide the music according the their listening trends and filter the recommendations accordingly
Scope
The scope of Musify entails developing a comprehensive music streaming application with essential social networking features. The MVP will focus on core functionalities such as user authentication, music streaming, playlist creation, and basic social interactions like following other users and artists.
Quality Attributes
Musify aims to excel in several key quality attributes to provide an exceptional user experience:
- Usability: The application will feature an intuitive interface, making it easy for users to navigate, discover new music, and engage with social features effortlessly.
- Performance: Musify will prioritize fast streaming and downloading speeds to minimize wait times for users, ensuring smooth playback and easy access to content.
- Reliability: The platform has to be reliable, minimizing downtime and ensuring consistent availability for users to access their favourite music anytime, anywhere.
- Scalability: Musify will use a scalable architecture to accommodate growing user bases and increasing volumes of music data without sacrificing performance or user experience.
- Security: Robust security measures will be implemented to protect user data, ensure secure transactions, and safeguard against threats such as piracy, unauthorized access, and even data leaks.
- Interoperability: Musify will strive for interoperability across multiple platforms and devices, allowing users to access their music library and social connections seamlessly from various devices and operating systems.
Evaluation
The evaluation of Musify will be conducted through comprehensive testing processes to assess its functionality, performance, reliability, and user experience. This includes:
- Functional Testing: Testing all features and functionalities of the application to ensure they work as intended and meet user requirements.
- Performance Testing: Assessing the application’s performance metrics such as streaming speed and quality, download time, and overall response under different user loads and network conditions.
- Reliability Testing: Conducting tests to evaluate the platform’s reliability and availability, identifying and addressing potential points of failure to ensure uninterrupted service for users.
- User Experience Testing: Gathering feedback from users through surveys, interviews, and usability testing sessions to assess the application’s ease of use, satisfaction, and overall user experience.
- Security Testing: Conducting security assessments to identify and mitigate potential vulnerabilities, ensuring that user data and transactions are secure and protected against threats.
- Interoperability Testing: Verifying the application’s compatibility and seamless integration across various platforms, devices, and operating systems to ensure a consistent user experience.
Through rigorous evaluation across these dimensions, Musify aims to deliver a high-quality, reliable, and user-friendly music streaming experience for its users.