Project Description

Scenario:

You work as a App Developer at a software development company called Big Horizon Limited. Your company produces customized software solutions for startups and other businesses throughout New Zealand.

Your team has been approached by a startup called Sweet As Sound. They have seen the success of music streaming platforms and after a thorough investigation they spotted a gap in the local New Zealand music landscape

​​​​​​​​​​​​​​You have to design and prototype an app (similar to Spotify) that will allow local New Zealand artists to published their music so people can stream it online and listen to it.

The prototype has these requirements:

  • User Registration
  • User Login
  • Forgot Password
  • Player (Play, Pause, Forward, Back, Album Image)
  • Artists
  • Songs per Artist
  • Search
  • Favorites

SR01:  Create User personas and address: goals, background, age, gender, behaviors, spending habits, pain points, needs:

SR02: Write User Stories for all functions and abilities of the music player:

User Type Epic User Story Inscription Change Log
Unregistered user Accessing App / Site As an Unregistered user I want to access some content for free
As an Unregistered user I want to select and pay for the content I want to enjoy
As an Unregistered user I don’t want to create an account to use the app/website
As an Unregistered user I want to have flexibility on how I want to pay
User Registration As an Unregistered user I want to use my Google account credentials to sign up
As an Unregistered user I want to use any email I choose to sign up
As an Unregistered user I want to be able to read and agree to the privacy policy on the registration page (Updated 05/06)
As an Unregistered user I want to have secure, two factor verification method (Updated 05/06)
Registered user User Login As a registered user I want to have the option of two-factor authentication
As a registered user I want to be able to connect my login credentials to a password locker app
As a registered user I want to be recognised and “username” be automatically populated when I arrive at the app / site
As a registered user I want to have a secure login process (Updated 05/06)
Registered user Forgot Password As a registered user I want to have an easy way to reset my password if I forget it
As a registered user I want to have secure, two factor verification method (Updated 31/05)
As a user, I want to reduce the size of the app to view the controls and what’s playing
As a user, I want to turn on lyrics panel to work while the song is playing
As a user, I want to Drag and drop songs, albums and playlists to a play/next up queue
As a user, I want to when a song is playing see where the track came from i.e. playlist, album recommended etc.
User Player Controls As a user, I want to rewind and fast-forward through tracks
As a user, I want to Pause a track indefinitely
As a user, I want to be able to access the controls with my keyboard
As a user, I want to skip tracks
As a user, I want to be able to go back through the listened to tracks limitlessly
As a user, I want to Clearly see have tracks have been played in the play list
User Interactive Features As a user, I want to build playlists using drag and drop or a quick Add button
As a user, I want to have the option to turn on or off the “recommended for me” function
As a user, I want to download music I have paid for into any folder on my device
User Search As a user, I want to search through all music not just the “recommended” for me / tracks of the day
As a user, I want to have clean searches what are actually relevant to my search
As a user, I want to be able to search music by country or region
User Songs per Artist As a user, I want to able to sort music by artist, track, genre, year released, country/region of origin
Favourites As a user, I want to mark and collaborate my favourites into a list
User Purchases As a user, I want to have two factor authentication activate when I make a purchase (Updated 31/05)

SR03: Develop Wireframes based on user stories to cover all of the user’s needs:

SR03a: Create a Class named “Registration” to record all the information of the users at the time of registration using Constructor:

SR04 & SR07: Using the User Stories, create Captcha and validation for Registration and Login pages:

SR08: Target the Low Vision audience to provide them the better accessibility. Write a method/event to implement this: