Sunday, February 2, 2014

WorldBand: A Social Music Website


UPDATE: I have uploaded the pdf for easier viewing here.



  1. Project Drivers
1a. Purpose of the Project
There are plenty of socially uploaded media sites out there, but none that focus on the needs of bands. One thing that I've always thought was necessary was a site that could act as a banding together of musicians from around the world and allow them to work together through the internet. There are millions of musicians in the world, just waiting to be recognized or just wanting to express themselves. However, it is not easy to form a band with a person in another city, let alone another country. The internet lets us connect these people in a novel way. In my site, people can upload music they've recorded or record it fresh, and tag it with an instrument and their unique username. In this way, they can upload an guitar part, for example, that they have written and thought was very cool. In a different part of the world, a drummer may listen to this piece and make a drum part and attach his part to the guitar part, forming a duo but with each part being credited to its respective writer. People can sample each others work without stealing it, and still give credit to the authors. The idea of an international band is realistic, with members each from a different country in the world.
1b. Goals
1b.1
Purpose: We want to attract users who want to create content to the site.
Advantage: More content will attract more customers
1b.2
Purpose: We want to attract users who want to listen to content generated by other users
Advantage: More customers means more money from ad revenue

  1. The Client, the Customer, and Other Stakeholders.
2a. The Client
Users who are looking to upload music and work with others around the world.
2b. The Customer
Users who are looking for new sources of music, and are willing to purchase them.
Ad agencies looking to advertise on the site.
2c. Other stakeholders
2c.1 Positive stakeholders
Users looking for free content
Investors in the site
The programmers
Users uploading music
Users selling uploaded music
2c.2 Negative stakeholders
Pandora
Soundcloud
iTunes
2d. Users of the product
Music creators
People who want to listen to music

  1. Constraints
3a. Solution constraints
For the environment of the site, we will be using HTML5 for the front end with a PHP and SQL back end. HTML5 is very robust with a lot of functionality and we want to take advantage of this to make a very nice looking site without sacrificing capability. PHP is a popular language to write a site's backend in, though we could just as easily use Ruby on Rails or Django. PHP was chosen because of a likelihood of more people being familiar with it, which means less familiarization time necessary for the programmers. However, this could easily be changed once the project group is chosen. SQL, similarly, was chosen because of the likelihood of programmers being more familiar with it rather than other languages.
3b. Time constraints
Timeline:

In-depth timeline:
For each week, I will budget 75 hours of time based on the assumption of 5 members of the group. This means a half hour meeting will take 2.5 man hours as it is .5 hours for 5 people.

Week 1:
Budget:
Introductions and learning each other's skill sets: 5 hours
Weekly client meeting - 5 hours
Concept and Basic Design: 20 hours
Basic skills acquisition (understanding AWS, learning HTML5, figuring out what algorithms, including Fourier transformation, are necessary, etc.): 40 hours
Setting up server: 5 hours
Goals for end of week:
Finish initial design blueprint for the site
Make final decision of framework and skills needed for site
Set up the AWS server

Week 2:
Budget:
Weekly client meeting: 5 hours
Design development, including planning out features very fully, and modeling site: 30 hours
Code development and documentation: 40 hours
Basic framework for site in html5: 25 hours
Back end and AWS: 15 hours
Goals for end of week:
Finish framework of site (not functional, but a bare bones of what we want it to look like)

Week 3:Budget:
Weekly client meeting: 5 hours
Sound file manipulation design, how we're going to save files and attach headers: 45 hours
Algorithm implementation: 20 hours
Documentation: 5 hours
Goals for end of week:
Have a better idea of how we're going to save sound files and how the algorithm will work

Week 4:Budget:
Weekly client meeting: 5 hours
Sound file implementation programming and documentation: 50 hours
Algorithm implementation: 20 hours
Goals for end of week:
Have significant code for the implementation of recording or converting sound files to be compatible with site

Week 5:Budget:
Weekly client meeting: 5 hours
Sound file implementation programming and documentation: 50 hours
Figure out how to manipulate lengths of files to change beat of songs uploaded: 20 hours
Goals for end of week:
Finish up the code for sound file manipulation, ready for implementation in week 6

Week 6:
Halfway mark
Budget:
Weekly client meeting: 5 hours
Implementation of sound code onto website: 25 hours
Working with site and AWS to make sure clients can upload files: 40 hours
Documentation: 5 hours
Goals for end of week:
Working prototype released
Will be able to upload files through the site
Will be able to manipulate files through site
Will be able to mash sound files through site

Week 7:
Budget:
Weekly client meeting: 5 hours
Front end touching up, making UI nicer: 35 hours
Back end reinforcing, bug fixing, making more robust: 30 hours
Documentation: 5 hours
Goals for end of week:
Website looks good, performs well

Week 8:
Budget:
Weekly client meeting: 5 hours
Bug testing, content creation and bug fixing: 50 hours
Marketing, and seeing market response: 15 hours
 Documentation: 5 hours
Goals for end of week:
Get a market response
Measure market response (positive/negative and why)

Week 9:
Budget:
Weekly client meeting: 5 hours
Adding new features based on market response: 50 hours
Continuing marketing: 15 hours
Documentation: 5 hours
Goals for end of week:
New features implemented

Week 10:
Budget:
Weekly client meeting: 5 hours
Finishing new feature implementation: 35 hours
Testing and bug fixing: 30 hours
Documentation: 5 hours
Goals for end of week:
Version 1 released
Full version with all features wanted
Should be relatively bug free
Go live with site to public

Week 11:Budget:
Weekly client meeting: 5 hours
Bug fixing from new release: 20 hours
Testing public response: 30 hours
Any additional features requested by client or users: 15 hours
Documentation: 5 hours
Goals:
Attempt to handle the amount of users on site
Fix any user problems in a timely manner

Week 12:
Budget:
Weekly client meeting: 5 hours
Touch up front end: 20 hours
Finish all back end and server code to make sure users have no problems: 30 hours
Testing and bug fixing: 15 hours
Documentation: 5 hours
Goals:
Final version released

  1. Scope of the Work
4a. The Current Situation
Currently, music creators are uploading their music to sites like Youtube and Soundcloud, where people can view it. On sites like this, there is no functionality of using the internet to connect with other music creators, only listeners. Furthermore, if someone were to mix someone else's song, the mixer would get all money from ad revenue and downloads, because there is no way to credit the original artist. There are programs like GarageBand that allows music creators to create different tracks for parts of a song, but users are limited to working with other musicians that they know. There are sites like iTunes, where bands can display their songs for others to download, similar to the projected way on this site. However, once again there are no ways to collaborate with other's work, or at least do it without stealing someone else's work. Though iTunes is able to connect to a person's iPod or other mp3 player, the files downloaded from the site proposed will be able to connect into iTunes and still have the same functionaliy. There is no current platform that allows the display of music while simultaneously allowing users to work with each other and still give credit to the original artist.
4b. Context of Work
This model shows how the different stakeholders can interact through the site.

4c. Work Partitioning
The following table partitions the site into 5 business events.

No. Event Name Input Output
1 User streams music -Chosen Music -Streaming music
2 User downloads music -Pay for Music -Download music
3 Creator gets paid for content -Upload music -Get paid for downloaded songs
4 Creator collaborates with other creators -Collaborate with other users None
5 External companies pay for advertising space -Funding -Advertising

4d. Business use case scenarios
Business event 1: User streams music
Business use case: Stream music for customer
Trigger: Play music request from user
Preconditions: User must have account on website, must be logged in
Active stakeholders: Programmers, user
-The user requests to play a song either automatically through a playlist, or manually by pressing play button
-The website loads music stored on server
-The site streams music to the user's computer
-Once the song ends, the song stops streaming or moves to next song in playlist

Business event 2: User downloads music
Business use case: Download music to user's computer
Trigger: Download request from user
Preconditions: User must have paid for song
Interested stakeholders: programmers, user, content creator
-The user requests to download song
-Site loads song from servers
-Site uploads the file to the user's computer
-Portion of payment goes to content creator

Business event 4: Creator collaborates with other creators
Business use case: Allow creators to interact through site
Trigger: Creator requests to collaborate with another creator's content
Preconditions: Creator must have an account on site, must be logged in
Interested stakeholders: programmers, content creators
-Content creator requests to collaborate with another creator's work
-Site retrieves requested track from servers, streams to creator's computer
-Creator uploads track tagged with own username and releases song with both tracks
-Song is displayed on creator's page for public to listen and download if desired


Business event 5: External companies pay for advertising space
Business use case: Business provides ad space and receives funding
Trigger: Company requests ad space from website
Preconditions: Ads must be reviewed by team running the site, the company must pay fee
Interested stakeholders: investors, company advertising, users, programmers
-Company requests ad space
-Team examines the proposed ads
-If acceptable, site places company ads for users to see
-Company pays for advertising space for an agreed-upon amount of time

4e. Overview of site functionality
An example of how the site will work is as follows: a user, who styles himself a producer, uploads a track of his own making. It has a basic rhythm with a few instrumental and vocal additions, but a very vague track without much appeal by itself. A friend of his on his page, a DJ who has worked with the producer before, decides to take the track and mix in some electronic music he wrote. Another user, a follower of the DJ, decides he wants to add his own part to the track once the dj has modified it. Then with the three users combined, a full track is completed and other users begin to listen. When a user listens to the track, all three artists are credited. Though these people may not know each other, they have created a very popular song that gets thousands of views, and they may want to work together again in the future. If they ever decide to monetize the song and sell it, they would all get a portion of the sales from the song, and would all profit.


  1. Project Issues
5a. Risks and Solutions
Of course, there are drawbacks to this idea. It's very complicated, and would require some knowledge of sound file manipulation. This is addressed in the timeline by giving our programmers plenty of time to familiarize themselves with the content. Another problem is that servers would be required to hold user generated content, which in turn would cost money. However, once a user base gets off of the ground, it should be an exponentially growing model with more people joining the site the more users there are. And of course, the main problem would be getting it off of the ground. Because all of the content is user generated, before there are many users there would not be very much content to attract new users. This is always a big problem with sites that are community driven. We can use several methods to address this though. Eventually we will get to a point when users will be able to upload music that they sell through the site and get a portion of each sale. We will also give rewards to users who upload more content. The more content you upload or listen to, or even the more friends you have, the higher your “user level” is. A higher user level will provide incentives to the user, like adding additional flair to their user page where people can see their music. There will also be community contests where users can submit songs for specific contests that are on a weekly or monthly basis. This will allow fans to listen to a variety of songs based on a theme and be able to vote, and users to have changing community goals to go along with their own personal or band projects.
5b. Costs
Funding is always required with sites like this. Servers cost money, so the site will obviously take some funding beyond the programmers compensation. However, this is going to be a variable cost, based on the amount of traffic to the site. Initially, if we are using AWS and we are students, we will likely be able to get away without paying while we are still working on the site. Eventually, once we have a project ready to show, investors will hopefully chip in to get it up and running. Once we are established and have reached an acceptable user base, we can begin putting ads on the site. Also, the music created on the site will eventually be able to be downloaded for a small fee, which a percentage of will go to the site for every transaction. A percentage will also go to each artist who contributed to the song. This makes it so artists are incentivized to create more music and are more likely to want to use the site as a platform to release their music rather than other competing sites or platforms.
The following table gives an itemized list of items that will cost money in order of their level of projected cost:
No. of Item Item name
1 Servers
2 Programmers
3 Marketing
4 Domain name

  1. Marketing

6a. Target Audience
The target audience we want is people who are looking for a different way of listening to music. The music on the site will not necessarily be high production value, but rather independent in production and creation. The site will introduce listeners to bands and musicians who would not necessarily be able to stand out otherwise. There are people who are interested in this sort of “free market” for independently produced content. On YouTube, for example, the content creators are making new formats to videos and movie never thought viable before YouTube's popularity. It is very plausible that a large number of people would enjoy being the explorers on a new horizon of music release.
On the other hand, we also want to attract the content creators to the site as well. This will be important because there is no tool like this for bands out there right now. This site could potentially revolutionize the way people look at and delve into the music industry. Rather than messing with producers and record labels, you can write a popular song and have producers come to you. Of course, that was always the ideal situation, but this site could make it a democratic system of determining popularity compared to what is played on the radio.

6b. Marketing strategies
One of the most important parts of starting the site will be getting a starting audience. How can we attract people to the site before there is any content? Ideally, we will reward the early adopters. Since we will be able to recognize mp3 files and convert them to our own, this will allow new users to use content that they have already created to add to the site. As well, we will give them featured spots on the front page so new users will immediately be able to see their work. Of course, the lower quality content will immediately be rated poorly by other users, and then removed from sight, but the initial front page views will give content creators a good shot at being recognized.
Since every song is tied with the creator's unique username, every artist will be getting credit for his or her work, which makes it desirable to put on the site. The idea of getting credit for each song that you're mixed in with gives incentive to both mix in with other songs and have your songs be desirable to be mixed with, because the more songs your parts are in the more chance of recognition and reward you get. This will also help address problems of users who mix minimalist parts with excellent tracks as to “ride their coattails.” Since nobody will want to mix with a track that barely has any content, these users will not likely be rewarded as the other track will get mixed into a lot of songs and their track will not.
There will be tons of incentives once the site has content as well. Popular songs that are responses to site sponsored contests will be featured on the front page and more likely to garner listens from other users. The more content created for a content creator will increase that user's level on the site. The levels will be badges of pride, showing how long an account has been active and producing on the site. As well, listeners will similarly be able to gain levels by listening to music, rating it, and even making playlists. Special badges can be achieved by listeners and creators by participating in the weekly contests. All of these incentives together will work as a sort of gamification, getting the users to use the site more by being invested in their online profile.

Of course, besides the online incentives, the site will also allow users to market themselves and make money through the site through other users downloading. This will provide monetary incentive to content creators who are very popular, thus encouraging them to continue creating content. Because they are being provided a portion of the money paid to the site for downloading their music, this comes with basically no cost to the site. Since it is self-sustaining, the site can afford any amount of users getting paid from other users downloading their work.

1 comment:

  1. I did a review of your proposal. It's on my blog at:

    http://cs460-james-vickers.blogspot.com/

    ReplyDelete