SlideShare uma empresa Scribd logo
1 de 31
Page 1 of 31
Copyright © 2007 Captive Design
Mr ###
### Street
Pietermaritzburg
3201
Captive Design
Pietermaritzburg
3201
Senior Software Engineer: Chris Morton
Phone: 0741012850
Email: chris@captivedesign.co.za
Table of Contents
Proposal for Development of Music Distribution Website ..................................3
Executive Summary ...........................................................................3
Introduction......................................................................................3
Features and Core Functionality............................................................4
Assumptions ..................................................................................4
Primary Purpose ............................................................................4
Scenario ......................................................................................4
A session in the life of www.musicfusion.co.za ............................4
Targeted Audience .........................................................................5
Core Features ................................................................................6
Proposed Module Overview ..............................................................6
Diagram 1 ............................................................................6
Searching and Display ....................................................................8
Community Forums........................................................................9
Customer Reviews/Ratings ..............................................................9
Customisability..............................................................................9
User Profiling .............................................................................. 10
Top 10....................................................................................... 10
Shopping Cart and Payment Processing ........................................... 11
Jewel Case Insert Creation ............................................................ 11
Access Levels and User Roles......................................................... 12
Internal Users ..................................................................... 12
Public Users ........................................................................ 13
Administration Panels ................................................................... 13
Value Added Features.................................................................... 14
Musician Pages ............................................................................ 14
Ringtones................................................................................... 14
My Scratches, My Albums Sharing .................................................. 15
Band Voting ................................................................................ 15
Events Guide .............................................................................. 15
Audio Streaming.......................................................................... 16
News and Hot Topics.................................................................... 16
Ticket Sales................................................................................ 16
Optional Newsletters .................................................................... 16
RSS Streams .............................................................................. 16
Competitions and Special Offers ..................................................... 16
Page 2 of 31
Copyright © 2007 Captive Design
Advertising ................................................................................. 17
Site Reports................................................................................ 17
Layout and Design ........................................................................... 17
Proposal 1 ................................................................................... 18
Features: ................................................................................... 18
Pros: ......................................................................................... 18
Cons: ........................................................................................ 19
Proposal 2 ................................................................................... 19
Features .................................................................................... 19
Pros: ......................................................................................... 19
Cons: ........................................................................................ 20
Proposal 3 ................................................................................... 20
Features .................................................................................... 20
Pros: ......................................................................................... 21
Cons: ........................................................................................ 21
Development Strategy ...................................................................... 21
Prerequisites................................................................................ 21
Consultation ................................................................................ 21
Milestones ................................................................................... 22
Milestone Summary ..................................................................... 22
Diagram 2 .......................................................................... 22
Explanation ................................................................................ 23
Database Design .......................................................................... 23
Application Design ........................................................................ 24
Testing ....................................................................................... 25
Deployment ................................................................................. 25
Support ...................................................................................... 26
Upgrades .................................................................................... 26
Documentation............................................................................. 26
Scope ............................................................................................ 26
Inclusions.................................................................................... 26
Limitations .................................................................................. 27
Suggestions .................................................................................... 27
Transferral of Data........................................................................ 27
Hosting ....................................................................................... 27
Cost .............................................................................................. 28
Cost Break Down ......................................................................... 28
Diagram 3 .......................................................................... 28
Keys .............................................................................................. 29
Technological Summary .................................................................... 30
Exclusive Permissions ....................................................................... 30
Document Summary......................................................................... 30
Support Documentation .................................................................... 30
Page 3 of 31
Copyright © 2007 Captive Design
Proposal for Development of Music Distribution
Website
Author: Chris Morton
Executive Summary
This document is a proposal for the development of a website for your client.
The document covers a scenario on which the rest of the document is based
upon. From the scenario I have extracted the technical aspects, financial aspects
and development aspects for the proposal.
Three important diagrams summarise the documents content and will be useful
for a preliminary glance about this proposal. It is important to understand that
reading the content of the document will give you a better understanding of the
entire proposal.
I hope you find this document useful in creating your proposal to your client.
Introduction
Please note: Keys used in this document are listed here.
The purpose of this document is to formally conceptualise the development of
www.musicfusion.co.za1 in order to support the acceptance of the work offered by
your client.
The core functionality of this application supports the online registration of users
who once registered can compile custom compilations of music CD’S2 according to
the music available on the site. The registered users can upload images and can
create jewel case inserts for their compilations and proceed to pay for and order
their compilation to be delivered to their selected destination.
The site must support the customisation and updateability of certain content via
an administrator access portal3.
The site must also allow for feature rich interaction of registered users where
users can review and rate music. Registered users must also be able to
participate in forums.
In this document I will attempt to address the following issues raised by your
client:
1. Site Layout
2. Customisability
3. Information presented to a user of the site.
4. Searching
5. Community Forums and Customer Reviews
6. Suggestions for integrating existing data into the new application
7. Suggestions to make the site appealing to the public
8. Hosting Solutions
Please note that at the time of writing the site http://mas.musiccreator.de/ was
down or inaccessible from my machine.
Page 4 of 31
Copyright © 2007 Captive Design
Features and Core Functionality
Assumptions
I have defined two assumptions that I am basing this proposal on as described
under the pertinent headings. Please be advised that I have based these
assumptions from my initial consultation with First Technologies representative
and from the information given to me.
Primary Purpose
The primary purpose of www.musicfusion.co.za is addressed in the introduction in
a condensed summary. A more detailed description is documented here:
I have used my creative licence to document an excerpt that describes user
interaction in order to describe the purpose:
Scenario
A session in the life of www.musicfusion.co.za
An anonymous user browses to www.musicfusion.co.za whereby he4 is presented
with an attractive, feature rich website that immediately prompts him to discover
the massive mp3 collection that is now available for his perusal.
The user browses the music collection and previews the music he likes. Hopefully
he discovers many musicians he really enjoys and has already seen the possibility
of legally acquiring a copy of his favourite music collection. As he has been
browsing he has been ‘tagging’ music that he likes and dislikes and after a preset
(by the administrator) number of previews he is prompted to login or create an
account to continue his browsing.
Assuming this user is a new unregistered user he decides to sign-up and enjoy
the benefits of belonging to www.musicfusion.co.za. He discovers that his
‘tagging’ has been saved in his online profile in his ‘My Scratches’ section. He
continues his browsing activity and he is now given the option of longer previews
and the ability to rate his music preferences.
As a new registered user he is slightly uncertain of paying for music as he is
unfamiliar with the site and wants to know more, which prompts him to browse to
the FAQ section. This section briefly describes that the music is legal and shows a
customisable (by administrator) price list and most importantly describes that the
music in his ‘My Scratches’ can be compiled into a CD which he can purchase
from www.musicfusion.co.za. Hopefully he is satisfied and the FAQ suggests he
looks in the forum to find out more about what ever he needs to know.
He browses the forum and discovers he has reached the utopia of the music
culture in South Africa. Thousands of other users just like him are participating in
threads about genres, bands, songs, events, instruments – you name it and he
finds it. He discovers he can start his own thread and promptly starts one on
‘Alternative Jazz’. He is prompted by www.musicfusion.co.za to update his profile
with a picture and some other information. He is allowed to put a watch on this
thread and the other ones he has participated in, which he will be alerted via
email or an RSS feed when something changes.
Page 5 of 31
Copyright © 2007 Captive Design
The user logs off and returns a few days later from a different computer. He logs
in continues to review, rate and tag his music. Eventually this sceptical user gets
the urge to splash out and order some of his scratched music to be compiled into
CD format and delivered to his residence. He clicks on his scratch he has entitled
‘Electronica from The Depths’ and he is invited to use some templates for his
jewel case insert or upload his own. He decides to upload his own. Unfortunately
he interrupted and needs to come back later to finish his order.
That evening at his residence he logs on again and goes to his ‘My Scratches’
section. Alas he discovers his ‘Electronica from the Depths’ is no longer there but
notices that his ‘My Albums’ section is showing (1) next to it. So he goes to ‘My
Albums’ and previews his album before proceeding to the checkout. He notices
that he has one track on the album that is not really Electronica and removes it.
The track moves back to his ‘My Scratches’ section and he selects another to be
added to his 64 minute compilation. The track he selects is 7 minutes long and
the system advises that the album cannot include the track he has selected. He
types in ‘ElecTRonica 2001 south Africa’ in the search box and 10 results are
displayed. Luckily he finds exactly the track he wants by Felix Laband and adds it
to his ‘My Scratches’ where he proceeds to add it to his ‘Electronica from the
Depths’ album.
He proceeds to the ‘Get It’ section where he confirms his identity using a sec ure
access password and is redirected to a SSL protected Paypal hosting page and
enters his credit card details. After a couple of seconds his payment is processed
and he receives an email in his inbox confirming his purchase and the estimated
time of arrival. He is redirected back to www.musicfusion.co.za and continues the
important business of browsing the music.
After the specified time he gets his album via mail and is extremely happy to
receive the excellent quality pre-packaged article and secretly reckons he has got
a bargain.
That night he has a party and his friends comment ‘Dude! That is the best music
of that sort I have listened to for a while – but it’s not really my jive’. He replies
‘Yeah I ordered it on the net….. Ah …. www.musicfusion.co.za has a huge
selection of music you can listen to and if you like it you can order a CD if you
want. Check it out man.’
And the story continues…
End of Excerpt
Although unconventional, I find it easiest to describe functionality in this way, as
it is much more interesting than dry technical explanations. Captive Design
documents such explanations in an article entitled ‘User Requirement
Specifications’.
Targeted Audience
As suggested in the excerpt the target audience assumed for the application is
essentially a moneyed young professional.
In this document I have written the features to appeal to a wide range of
audiences including but not limited to:
 students
Page 6 of 31
Copyright © 2007 Captive Design
 young adults
 professional musicians
It assumed that the target audience has a minimal degree of technological savvy,
own credit cards or have a paypal account, and are of course music fans.
Core Features
Proposed Module Overview
A Summary of the proposed modules is presented below in table format:
The codes in the righter most columns represent the module types; multiple
values represent a combination of them:
Keys:
S – Standard Core Functionality
F – Value Added feature
V - Visible
I – Invisible or contains an Invisible Component
C – Module collection of a number of Custom Controls
T – Contains third party components
R – Revenue Generator
Diagram 1
Module Description Module
Type
Searching Used to search for music according to
any criteria
S,V
Display Allows User to see more detailed
information on his selection. Using
this he can preview, rate, review, tag
and nominate mp3’s. he can also look
at linking pertaining to the music.
S,V,C
Community Forum Allows anonymous users to browse
community forums.
Allows registered users to participate
in forums
Allows administrators to review posts
and prevent certain users from
participating. Administrators can also
hide and disable threads.
S,V,C
Ratings Allows Registered Users to rate music S,V
Review Allows Registered Users to write a
review of music
S,V
User Profile Allows users to edit and view their
details. Includes the My Scratched
and My Albums modules.
S,V,C,I
Top 10 Displays the top ten of a selected list.
The default is most listened to music.
S,V
My Scratches Keeps track of the users interest of
music. He can tag music which goes
into his scratches so he can compile
S,V,C
Page 7 of 31
Copyright © 2007 Captive Design
albums
My Albums My Albums in the Shopping Cart of
this site. Here the user can create his
desired product and jewel case
design, preview, edit and change the
album.
S,V,C
Get It Get It is the Checkout of this site. This
allows the user to enter his banking
details under a SSL and confirm his
order and proceed to purchase it.
S,V,C,T,R
Jewel Case Creation Wizard This allows a user to create a jewel
case using either a template wizard or
uploading a custom insert.
S,V,C,T,R
Login Module Provides a security layer for
registered users
S,V
Registration Module Allows new users to register S,V,C
Access Control Module Runs as background service that
manages sessions and access control
S,I
Administration/Customisation
Modules
Allows authorised users to perform
customisation tasks of various types
through different interfaces according
to the customization task
S,V,C,T
Musician Pages Provides an interface whereby a user
can upload information on his band
and create a band profile page.
F,V,C,R
Ringtone Wizard Allows registered users to create
custom Ringtones from the mp3s
available and mms them to their
phones
F,V,C,T,R
Sharing Module Allows a to share is albums or
scratches for the perusal of other
users
F,V,C,R
Events Calendar Allows users to configure their events
online and add them to a national
events calendar. Users can down load
an outlook calendar event to add to
there outlook
F,V,C,R
Voting/Survey Module Allows the site administrators to post
voting an surveys about current
issues. Allows users to vote for bands
they would like to see.
F,V
Audio Streaming Module Performs an online radio service F,V,I
News and Hot Topics Module Allows the administrators to keep the
site current with current cultural
events etc
F,V,C
Ticket Sales Integrates with event calendar to
allow the online sale of tickets
F,V,C,T,R
Optional Newsletters Allows users to sign up for optional
news letter that have been composed
by an administrator
F,V,C
RSS Feed module Allows users to get feeds from the site
from selected areas
F,V
Competitions/Special Offers
Module
Allows users to enter competitions
and partake in special offers to
F,V.R
Page 8 of 31
Copyright © 2007 Captive Design
maintain a loyal user base.
Advertising Module Allows administrator to configure
advertising on the site
F,V,C,R
Site Reports Module Allows administrators to generate
reports pertaining to activity on the
site to gauge performance of various
aspects of the site.
F,V,C,R,T
The core features of www.musicfusion.co.za are described below with some
description of technical aspects involved:
Searching and Display
The search functionality for www.musicfusion.co.za is implemented using queries
against data stored in a database about the mp3’s available.
The mp3 format contains a piece of information called a meta-tag which stores
metadata about the actual mp3 file. Please follow these links for more
information:
http://en.wikipedia.org/wiki/MP3
http://www.id3lib.org/id3//id3v1.html
Essentially this metadata can store information such as the song title, artist,
genre, year, album and other data about the music. When using software such as
Win Amp or Windows Media Player searches conducted on a users system use
this information to return results.
Assuming5 the metadata of the mp3 files on our client’s server is good it is
possible to write a small windows application to retrieve this data from the mp3’s
files and write it into SQL Server which can then be used to query against by
www.musicfusion.co.za.
Using SQL server and C# to execute query logic against a SQL database will be
the fastest and easiest way of implementing an effective search mechanism.
Alternatively searching directly against the meta-tags for a very large number of
individual files by multiple users simultaneously may produce significant overhead
and hence slow the application significantly.
At this stage the implementation of the search functionality depends heavily on
acquiring a copy of the mp3 files in order to analyse, develop, test and implement
functionality for a search engine. Please follow these links for further information:
http://www.id3.org/id3guide
http://channel9.msdn.com/ShowPost.aspx?PageIndex=11&PostID=250823
http://www.searchtools.com/info/mp3-search.html
Once an effective search engine is created it is very important to display the
results in a way that the user can comprehend.
Essentially to address this www.musicfusion.co.za will only show song titles,
album names, artists and genre (and perhaps a thumbnail if it is available) in the
initial result set. The user is required to click on the item which will display the
Page 9 of 31
Copyright © 2007 Captive Design
entire information set (and perhaps related data such as ‘other music like this’ or
‘other music from this artist’).
Once the user is viewing the selected information he can listen to a preview of the
track (length according to login status), tag it, rate it or review it according to his
preference.
Community Forums
To support community forums www.musicfusion.co.za will use a similar forum
format to the one displayed here:
http://forums.asp.net/
The forum represented here is very advanced software and some of the
functionality of the http://forums.asp.net/ forum is unnecessary for
www.musicfusion.co.za and I therefore advise that consultation be undertaken
with the client to establish the exact needs for www.musicfusion.co.za.
Essentially the forum will support thread creation by registered users, thread
disabling or hiding (essentially the same effect as deleting) by administrators,
post creation that supports avatars (i.e. users can use a pseudonym and a picture
to represent themselves), post hiding by administrators and moderators.
Please note that forums do carry risks with them as they are a public area for
people to express what ever they like, which may cause incidents leading to legal
intervention. In order to prevent this type of thing happening it is important to
have a particular policy about how users conduct themselves and additionally
there is a need for enforcement of certain policies by moderators.
Customer Reviews/Ratings
Registered Users will be able to rate music from 0-5 stars according to their
preference.
The average ratings of a particular mp3 will be displayed to all users to gauge the
quality of the music however the individuals rating will be displayed for that
particular user in order for him to compile albums his particular taste.
www.musicfusion.co.za will use the AJAX control listed here:
http://ajax.asp.net/ajaxtoolkit/Rating/Rating.aspx
to implement rating.
Users will also be able to write reviews on music or bands which I will refer to as
‘Blurbs’. The ‘Blurbs’ or reviews may also carry risks similar to the forums risks.
Customisability
Customisability of www.musicfusion.co.za will include the option to upload a
number of different master pages which can include different graphics, CSS and
page layouts. The limitation to this approach is that the master page(s) must
follow a consistent naming convention, XHTML validation and code behind file to
ensure that the application does not produce formatting errors or application
Page 10 of 31
Copyright © 2007 Captive Design
errors. For this to be ensured a professional programmer should be employed to
maintain compatibility of a new layout.
It is important that customisability options exist to enable administrators to
update certain content on the site (for example news, advertising, graphics etc)
to keep the site attractive and to encourage repeat traffic of existing visitors. To
allow this www.musicfusion.co.za will implement some of the third party controls
specifically designed for this purpose, for example:
http://www.freetextbox.com/
Another aspect of customisability is the option to customise email messages sent
from an application such as this. This functionality will be supported by a section
whereby an administrator can compose HTML messages using the interface
provided where ‘generic’ datatags that represent different values can be inserted
at various locations within the message.
Examples of a generic datatags could be ‘!@Username@’, ‘!@FirstName@’,
‘!@LastName@’, ‘!@AlbumName@’ and ‘!@Price@’ where the values pertaining to
the particular user account are substituted into the configurable HTML email
message.
An example of this functionality can be seen in messages received from Microsoft
Subscription Services.
User Profiling
User profiling will encompass the collection of data pertaining to:
 Names
 Locations
 Contact Details
 Login Information
 Avatar Information
The above mentioned data is typically collected by most sites that require some
kind of registration.
Further more, user profiles will contain information about music preferences,
usage statistics, financial transactional information (i.e. how much has a
particular user actually bought), rating information, ‘My Scratches’, ‘My Albums’
and other data should it be required.
From the aspect of an administrator, he must be able to generate statistical
reports based on the data in the system.
Top 10
Top 10 need not be limited to actual ‘sales’ of music. The potential of the top 10
concept can include the following:
 Sales
 Most Listened To
 Highest Rated (the traditional top 10 chart)
 Most Active Users
 Newest
Page 11 of 31
Copyright © 2007 Captive Design
The top ten can be implemented using similar controls as demonstrated here:
http://www.imate.com/
http://www.imate.com/t-devicedetails.aspx
Shopping Cart and Payment Processing
The shopping cart functionality consists of three sections:
 ‘My Scratches’
 ‘My Albums’
 ‘Get It’
Once I again I have used my creative licence to suggest ‘cool names’ that are not
as intimidating or as boring as ‘Shopping Cart’ and ‘Check Out’. I am very familiar
with online shopping and suggest that a ‘Wish List’ be implemented as an
accurate generalisation people are sceptical about shopping online and need the
psychological reassurance of the option to back-out or change their mind. This
functionality can be seen on http://www.amazon.com/.
For clarification please note the following equivalencies:
‘My Scratches’ roughly equates to amazon.com’s ‘Wish List’
‘My Albums’ equates to the ‘Shopping Cart’
‘Get It’ equates to the ‘Checkout’
The basic business process behind compiling and purchasing a CD from
www.musicfusion.co.za is described in the excerpt entitled ‘A session in the life of
www.musicfusion.co.za’.
The process of online purchasing follows this procedure:
 A registered user tags his music which is added to his ‘My Scratches’
section.
 When the user decides to purchase some music he creates an empty
album in his ‘My Albums’ section.
 The user proceeds to add his scratches to the new album until the time
limit of 70 minutes is reached. The album can be edited until the user is
satisfied.
 The user is encouraged to create a jewel case insert from existing
templates or upload his own.
 Once the user is satisfied with his album he can decide to ‘Get It’ which
directs him to a secure access site hosted by Paypal where he proceeds to
transact. For further information please follow this link:
https://www.paypal.com/IntegrationCenter/ic_pdnHome.html.
 On successful completion of the transaction he is send a message of
confirmation of his order and a delivery estimate (ETA).
Jewel Case Insert Creation
The creation of jewel case inserts is implemented in two methods:
 The selection of a pre-existing template ‘wizard’.
 The uploading of a user created jewel case insert.
Page 12 of 31
Copyright © 2007 Captive Design
The wizard allows the user to select various colour schemes, fonts and images to
be included in his jewel case insert. www.musicfusion.co.za produces an XML
document that contains the information for the users album (including track data
and jewel case insert data) and adds it to the ‘manufacturing queue’ 6.
The uploading of a user created jewel case insert should support two generic
formats, namely the .ncd file format that is created by the popular Nero Cover
Designer software, and .psd format files created by Photoshop 5.0 or above.
In order for a registered user to up load his custom jewel case insert design a
tutorial should be published on www.musicfusion.co.za that covers both methods
of creation.
Additionally .ncd and .psd files should be downloaded or sent to the registered
user with strict instructions that he is to modify the documents according to the
tutorial and upload them. This must be enforced to allow for consistency and
therefore efficiency in the manufacturing process.
Needless to say an additional charge should be requested for custom jewel case
inserts.
Access Levels and User Roles
During the creation of this document several possibilities of access levels have
been deliberated by me.
I have referred to the ‘administrator’ as the person who can perform certain
functionality. I have also referred to moderators, registered users and anonymous
users.
The challenge with only having one type of internal user in this type of application
(referred to as the ‘administrator’) is that the work required to maintain the site
would over-burden a single person. Alternatively if there where a number of
administrators with exactly the same permissions it would be almost impossible
to delegate tasks effectively and apply some kind of quality assurance. With
reference to this scenario the need to provide a number of different roles for the
application with specific tasks and access permissions becomes apparent.
In order to clarify the access levels and users rights assignments I propose the
following roles for the application. I typically refer to these as user types. Below is
a summation of my proposed user types and the roles they perform in the
www.musicfusion.co.za application:
Internal Users
1. Administrator
The administrator is responsible for the configuration settings of the application
such as the length that an anonymous user can preview a track, uploading of
different master pages and the configuration of other internal user accounts or
disabling of registered users accounts. The administrator will also be able to
generate statistical reports relating to site usage etc. The administrator also
inherits the permissions of the content publisher, forum moderator, review
moderator and music moderator.
Page 13 of 31
Copyright © 2007 Captive Design
2. Content Publisher
The role of the content publisher includes the ability to update content on the site
relating to news, advertising, general information, email messages, FAQ’s and
jewel case insert templates (wizards). The content publisher does not inherit the
forum moderators, review moderators or music moderators’ permissions.
3. Forum Moderator
The forum moderator will be tasked to monitor the thread on the forum and can
disable or hide the threads that may be controversial, irrelevant or exhausted.
The forum moderator can also nominate registered users who are not following
the conduct guidelines to be disabled from using the forums section. The
administrator will disable a disruptive users account.
4. Review Moderator
The review moderator is tasked to monitor reviews of music on the site. The
prevention of legal interaction by copyright holders of the music available should
be a high priority in www.musicfusion.co.za. The review moderator inherits the
permissions of the music moderator.
5. Music Moderator
The music moderator is responsible for censoring offensive material from
sensitive audiences. When a registered user signs up he is given the option of
‘safe-searching’ which will prevent offensive material from being displayed for the
particular user. Additionally people below a certain age will automatically have
‘safe-searching’ enabled on their accounts. In order to implement such a strategy
music should be graded manually according to its offensive content. I cannot
think of anyway of automating this process except that users who come across
unrated offensive material can nominate it to be reviewed by the music
moderator to allow it to rated.
Public Users
6. Registered User
A registered user has permissions to listen to longer previews of music, rate
music, review music, and participate in forums and voting. A registered user can
also add and remove items from his ‘My Scratches’ section, create and order
albums.
7. Anonymous User
An anonymous user has access to search and preview music (for a shorter
interval), tag music (tags will be stored on the client’s cookies until he signs up),
access the forums (read only) and browse all other sections of
www.musicfusion.co.za except for the SSL section.
Administration Panels
As documented above customization is an integral part of www.musicfusion.co.za,
it therefore stands to reason that ‘special’ internal user access panels be available
for this purpose. Unfortunately the name ‘Administration Panels’ might be slightly
misleading to the reader of this document. To clarify: Administration refers to a
verb (administrate) as opposed to a noun (administrator), thus all internal users
who have the ability to administrate content have access to certain administration
panels according to their permissions.
Page 14 of 31
Copyright © 2007 Captive Design
At this stage it is impossible to describe all the aspects of administration without
a consultation with the client.
Value Added Features
As requested by the client suggestions to make www.musicfusion.co.za more
appealing to the general public would be appreciated. The following suggestions
may actually be beyond the scope of www.musicfusion.co.za but I have thought
to myself as I have been writing this document about ideas that are just
appealing or are both appealing and could be used to generate revenue.
Musician Pages
The music industry in South Africa is still developing and many musicians and
bands out there do not have the resources to fund a great deal of marketing. I
believe that giving South African bands the opportunity to create a page on
www.musicfusion.co.za would be beneficial for all parties involved, especially
concerning the important aspect of generating revenue for
www.musicfusion.co.za.
I propose that a band can upload information on the site about their band and be
assigned a sub domain on www.musicfusion.co.za.
An example sub domain could be: www.thebandname.musicfusion.co.za. This
concept has been around since I can remember and is implemented on sites such
as:
http://geocities.yahoo.com/
http://www.myspace.com/
http://googlepages.com
This has proven to be a popular revenue generator.
During the upload process the band is mandatorily required to send a cd of their
music to the www.musicfusion.co.za administration offices for review before the
musician page is approved (by the content publisher).
Secondly big international bands such as Metallica, U2 or Madonna could have
pages on www.musicfusion.co.za that I will call band profiles. These profile pages
would be created by a Content Publisher as and when needed.
An example URL for such a page could be:
http://www.musicfusion.co.za/profiles.aspx?t=band&b=HootieAndTheBlowfish
When a user searches for music and selects an mp3 to preview, if a profile page
exists for the band (either a musician page or a profile page) the user can browse
that page if they want to.
Ringtones
From my personal experience, I find the sms services available in this country
that distribute Ringtones of popular music are below standard and too expensive.
I have resorted to creating my own Ringtones and uploading them on to my
phone (I have a phone that accepts mp3’s as Ringtones).
Page 15 of 31
Copyright © 2007 Captive Design
I propose I service whereby a user can select music and create up to 20 second
long Ringtones and have them mms’ed to his phone via www.musicfusion.co.za
for a fee.
I believe this could be a good revenue generator if the technology is available.
My Scratches, My Albums Sharing
A lot of people out there rate themselves as DJ’s or would like to impose their
taste of music on other people.
The idea of individual users ‘sharing’ their scratches or albums may have
commercial potential in terms of market research for CD manufacturers and
record companies who are looking for new ideas in order to create compilations of
music that will sell.
If users have the ability to publish their scratches and albums in
www.musicfusion.co.za data could be collected for corporations in order to collate
and eventually find out what is ‘really’ happening in a certain demographic of
music buying public.
This data could be used to generate another large revenue stream.
Band Voting
In general the South African public still feels ‘left-out’ of the international music
scene.
Using a ‘survey/voting’ system www.musicfusion.co.za could gauge which bands
the South African public would most like to see.
With strategic partnerships in place www.musicfusion.co.za could arrange for
events companies to invite bands to South Africa and receive revenue based on
ticket sales (see Ticket Sales).
Events Guide
One of the most annoying things for me is the marketing of musical events in
South Africa and my failure to add them to my Outlook Calendar to remind me
when something is happening.
I think a good revenue generator for www.musicfusion.co.za could be the ability
of registered users who have marked themselves as Venues to configure an
Outlook Calendar Event on www.musicfusion.co.za and users browsing the site
can download an Outlook Calendar Event and add it to their Outlook Calendars.
To view a demonstration of what I am talking about please follow this link:
http://www.snowcovered.com/Snowcovered2/user_uploads/BookableEventsDemo
3.html
Please note that this is a calendar that has been designed specifically for
DotNetNuke and that I would have to develop my own. I would also provide a
quite a different implementation.
Page 16 of 31
Copyright © 2007 Captive Design
In terms of revenue generation users who configure an event would be charged
to use the functionality. Users who download an Outlook calendar event would do
so for free.
Audio Streaming
Audio streaming to facilitate online radio could be implemented so that a
registered user could listen to his scratches or an online DJ’s selection of music.
I am not sure that this would encourage use of the site nor generate revenue. I
would also require very large bandwidth quotas.
Although this is an appealing feature of the site I don’t think it would benefit
www.musicfusion.co.za’s revenue stream.
News and Hot Topics
This would be absolutely essential to www.musicfusion.co.za in my opinion. The
possibility of integrating this into the events calendar/ticket sales modules is
achievable.
Ticket Sales
In line with publishing event online it would make sense to partner with an
organisation that distributes tickets for events and possibly either buy bulk
bookings (risky/higher profit) and resell the tickets or provide a link to the ticket
sellers online booking system and receive commission (low risk/low profit).
To implement this will involve consultation with the selected distributor.
Optional Newsletters
Although everyone hates spam, the ability for a user to receive optional news
letters is important. It must be clearly explained to the user that these are
optional news letters and they have the choice to unsubscribe at any time.
RSS Streams
An alternative to optional newsletters to keep users informed it the availability of
RSS feeds that more technological savvy users can subscribe to.
For a brief description of RSS feeds please follow this link:
http://en.wikipedia.org/wiki/RSS
Competitions and Special Offers
Competitions and special offers are well used marketing tools to gauge the
success or failure of a particular concept or product. In my opinion it is also fair to
offer users who frequently purchase products from www.musicfusion.co.za special
offers in order to keep their custom.
Competitions could also be useful for encouraging sales within
www.musicfusion.co.za for example:
If www.musicfusion.co.za holds a competition on the most attractive jewel case
insert design, users who have the inclination will rise to the challenge of
Page 17 of 31
Copyright © 2007 Captive Design
designing the best cover design (which could be democratically decided by votes)
and I am certain that in the process the users who design the covers will buy
their ‘own’ product. Additionally as a spin off some users who vote for the best
cover will also buy the cover designers album. (I have another appealing idea
here: musicbucks, if a particular user album is profitable he earns music bucks
which could allow him to get special discounts on his next purchase – you could
even go so far as to say to the public ‘get your favourite free legal music
delivered to your door for life – enter our jewel case insert design competition for
free!!!”)
Advertising
A web site without advertising is very scarce these days. I have added this in the
Value Added Features section as it has not been specifically mentioned by the
client.
To support adverting functionality there are many different possibilities available
and I cannot describe the suitable solution without first knowing what the clients
need is.
Needless to say this is a revenue stream.
Site Reports
Perhaps one of the most important aspects of modern e-commerce site design is
the ability to monitor activity within the site without resorting to log reports from
the IIS webserver. To this effect I can design certain functionality to support the
monitoring of activity with in the site if required.
Another aspect of site reporting is the ability to get statistical data from entities
such as users, mp3’s and voting.
This is potentially very complex and needs consultation to minimise the
requirements as much as possible.
Layout and Design
When reading this section please bear in mind that the proposals presented here
are only three of the designs I thought as suitable for www.musicfusion.co.za in
my personal capacity. If none of these are suitable I have a number of other
possibilities that may appeal.
Should one of these designs be suitable but have ‘missing’ elements we are able
to add those elements (features) accordingly.
Should the colour scheme of these proposals not be suitable we are able to
change it accordingly.
Graphics demonstrated in these proposals are only the purposes of
conceptualisation. In reality any graphics could be represented.
The purpose of the layout and design section of this document is to allow the
client to explore the possibilities of the application functionality matched with the
interface design.
Page 18 of 31
Copyright © 2007 Captive Design
The designs represented here are designed to be displayed correctly on 800 by
600 resolution display with 32 bit colour support. The screenshots are taken on a
1152 by 864 resolution display.
Proposal 1
This design presents a modern interface with exiting options for
www.musicfusion.co.za. The interface will support advanced navigation options
thus a feature rich site.
Features:
As you can notice from the search engine section a user can search for music
according to their genre preference. The three orange blocks on the right hand
side could be used to display news and hot topics or as adverting space.
The content section on the left hand side could display information pertaining to
the top artists/trends on the site. The light grey panel above the content and
news sections can be used to display important information to the users or host
some flash media.
Pros:
 Allows for a large amount of different information to be displayed on the
screen real-estate.
 Looks professional and neat.
 Provides a rich graphical user interface pertaining to images and flash
media.
Page 19 of 31
Copyright © 2007 Captive Design
Cons:
 May be ‘too complex’ in terms of navigation possibilities for an average
user.
 The colour scheme and graphics may need revision.
 There is a danger of presenting the user with ‘information overload’.
Proposal 2
This interface is very simplistic and allows for an average user to navigate easily
to what the essence of www.musicfusion.co.za is: the distribution of music.
Features
The primary focus of this interface is the search functionality. It presents a search
box and an alphabetical indexing section.
The secondary focus of this interface is a large content section that is sparsely
populated with images and text, supporting the simplistic navigation model.
The ternary focus of this site is a panel on the right that could be used to display
news and hot topics/advertising/navigation menus etc.
Pros:
Page 20 of 31
Copyright © 2007 Captive Design
 An attractive and simplistic interface.
 Promotes primary focus on the essence of www.musicfusion.co.za: the
ability to search for music.
Cons:
 The overly simplistic design limits the navigation model (thus the features)
of the site.
 The screen real-estate is not used optimally.
 The users of this site may interpret such a simple design to mean that
www.musicfusion.co.za does not have a lot of features.
 Some more adult users might not appreciate the adolescent appeal of this
design.
Proposal 3
This interface is also a simplistic design but allows for advanced navigational
options (and therefore a feature rich site). In this interface there are two content
sections, the first one displaying a flash element that could allow the user to
scroll latest albums. The first content section could be used to show advertising,
news and hot topics, navigation menus, album/track info or anything else with a
graphical nature. The second content section can be used for text data
representation.
Features
The primary focus of this interface is the navigation element of
www.musicfusion.co.za which will allow for rich feature support with easy
Page 21 of 31
Copyright © 2007 Captive Design
navigation for the average user. Also supported is a search box and a header
section.
Pros:
 Advanced navigation possibilities to support feature rich content.
 Two distinct content sections for different types of data.
 From a developer point of view this allows for the simplest development
path for feature rich support.
Cons:
 Some users may interpret the interface as boring or not funky enough.
 Search could be improved
 A right hand content section (in the second content section) could be
implemented.
Development Strategy
In order develop www.musicfusion.co.za within an agreed time frame and to the
specified standards a development strategy needs to be defined together with the
client and other stakeholders. At this stage it is difficult for me to give a concrete
development plan however below I have documented some typical steps in the
development of a site such as this.
Prerequisites
In order to develop an accurate and fast search engine to retrieve mp3’s we will
require a mp3 library similar to the clients (in terms of number of individual files,
metadata, file organisation (i.e. how are the files organised in the file system))
and hardware that meets similar performance of the file server where the files are
to be hosted on (if the file server has raid and the development environment does
not it will be impossible to determine how well or otherwise the software is
performing).
Additionally electronic documents containing the actual text content of the site
need to be supplied in order to develop the software as quickly as possible
without resorting to sample data (e.g. “Lorum ipsum dolor…”).
Preferably media content such as images should be supplied in the highest
resolution and biggest file sizes possible to allow us to edit them and produce the
highest quality images of appropriate file size for the site.
Unfortunately without these prerequisites the development time will be much
longer and therefore incur a higher cost.
Consultation
It is of paramount importance that a consultation between the developer and the
client take place before the next stage of this process can take place (the next
stage being the User Requirement Specification Document/Project Plan/UML
document stage).
Page 22 of 31
Copyright © 2007 Captive Design
It is also very important that regular communication takes place between the
developer(s) and the client as milestone are reached to ensure that the client
gets what they want on completion of the project. Unfortunately without regular
consultation with the client projects like this tend to have scope creep (the
developers do to much or to little) which will have cost implications for the
developer (in particular the risk of losing money due to either over development
or misguided developers). Simply put, just like in any industry time is money,
and spending a little time in effective communication can and always does
prevent wasted resources.
Milestones
The singular most important purpose of a project plan is to identify milestones. A
milestone consists of several tasks within a certain time frame that defines a
recognisable stage within the project plan. Without any concrete information is it
difficult to identify actual downloads however I have identified these milestones
that will definitely part of the project:
Milestone Summary
Keys:
I – included for the deposit price
P - Cost of labour R300 per hour
O – Cost of labour R250 per hour
C – Consultation needed
R – Research Required
M – Research may be required
A – Acquisition of third party components required
Diagram 2
Milestone Description Keys Estimated
Development
Time
URS/Project Plan/UML
Documentation
including initial
consultation
Documents relating to the
actual development
process
I,C,M 7 days
Database
Development
Continues throughout the
application development
I,C,R N/A
Database Integration Integrate existing data
into the database
P,C,R,A 5 days
Generic Interface
Design
Create appealing interface
and define navigation
paths and content display
O,C,M,A 6 days
Registration and
Login
Facilitates the sign-up and
login of new users
P,C 1 Day
Access Control Defines the permissions
that certain user types
have and their access
rights
P,C 3 Days
Search And Display Allows for search and
display of content on the
P,C,R 10 days
Page 23 of 31
Copyright © 2007 Captive Design
site
User Profile Allows users to view and
edit their account
P,C,M 4 days
My Scratches, My
Albums, Get It
integration and
Development
Incorporates the
functionality of
purchasing process
P,C,R,A 14 days
Integration and
development of
Administration Panels
Involves the development
of many different panels
and integration into the
structure of the application
P,C,R,A 10 days
Integration and
development of a
Community Forum
Development of a
community forum system
P,C,R,A 20 days
Jewel Case Creation
Wizard
Development of Jewel
Case Wizard
P,C,R,A 6 days
ATP, User Manual,
Observation Register
Documentation I,M 3 Days
Explanation
As software development is not a tangible product and often has a very abstract
nature (for example class development that has no visible user interface)
sometimes milestones are difficult to identify as project manager, because of this
fact a project plan for software development project uses a different premise to
determine milestones.
Captive Design depends on regular cash flow to ensure that our bills are paid.
Captive Design therefore works according to a tightly integrated arrangement
that follows this process:
Once a milestone is reached, a consultation with the client is arranged. At this
stage we kindly ask the customer for a payment in order to fund the next stage of
development.
Ideally this results in the following: a customer who is delighted with our
excellent work, a project that has been delivered on time and within budget, and
a team of developers who have not had to struggle to pay their bills between the
conception of the project (i.e. when deposit has been paid) and the end of the
project.
I always try to avoid any trouble. For me this is the best way of avoiding trouble,
with the added bonus of make clients very happy.
Database Design
The database design for this project will follow the 3rd normalised database design
rules. The database will be designed to fulfil the requirements of a high
performance OLTP application. The database will not be designed for replication.
The following describes the life cycle of a database design:
The Database design of any software project typically follows 5 stages:
Identification of entities, fields within those entities, the relationships between the
entities. This is translated into a ‘rough’ design that some of the core functionality
Page 24 of 31
Copyright © 2007 Captive Design
can be build upon. (My personal philosophy is that the database design is the
foundation of building good software, just like a builder needs a strong foundation
to build a strong house).
The next stage is encountered in the development phase of the project where
developers start to extend the database to meet the applications requirements
more specifically.
The third stage of developing a sound database design is often the need to add,
change or remove certain relationships that might have been initialised by some
kind of client request. Some times this kind of scope creep will cause minimal
changes and could take an hour to do but more often produces late nights,
unhappy developers and could lead to project failure (which means wasted
resources all round). Although I always try to avoid this, I have discovered it is
inevitable. This is why it is important to keep communication flowing, especially in
phase 2, to keep stage 3 infrequent and short lived.
The fourth stage of database development is the optimisation of things such as
indexes, clustered indexes and full text indexes using tools such as SQL Profiler in
order to create the fastest possible database for the application. Often this
requires the population of certain tables with a great deal of test data to imitate
the situation in a real life scenario.
The fifth stage is to create a special deployment version of the database that will
be used for the application’s commercial implementation. This is essentially a
database with exactly the same structure as the one used in development but
only includes the data that needs to be in the database to on the deployment
day.
Application Design
The application will be coded using C#. The application development will follow a
guideline as set out in User Requirement Specification document. If there is time
to publish a project plan and a UML the developers will also draw upon these
documents to guide development.
Typically in the development life cycle there are four stages:
Planning and Documentation
Development
Testing
Deployment
This is a cross-section of a larger module called the application lifecycle.
From my experience I have learned two valuable development concepts: KISS
(keep it simple stupid) and the concept of continuous improvement.
To develop software successfully a developer needs to have a clear idea of the
end product before he writes even the first line of code. This justifies frequent
consultation as the project materialises.
The second thing about application development that will keep development
easier and upgradeability a reality with out total application re-write is the good
application of sound object oriented programming principals.
Page 25 of 31
Copyright © 2007 Captive Design
The third thing about well designed web application that must be in the
developers mind when he develops is the ‘two-clicks/two-seconds’ principal.
Where ever possible ‘two-clicks/two-seconds’ is what the user wants when it
comes interacting with the site. In other words a user must be able to perform
simple interaction using one or ‘two-clicks’ and some kind of response must
happen within ‘two-seconds’ even if is just a message that says ‘loading…’.
During the development of this site I will try to keep the guidelines mentioned
here in mind while we develop code.
At this stage it is not possible to give you a detailed application development
description as without a consultation with the client their needs have not been
gauged and a guideline cannot be established.
Testing
The testing of an application is paramount to the success of a product.
Unfortunately with online applications should your application present a
unhandled exception to the client they will not come back. In reality the bigger
the site is the more likely this is to occur.
The best way to prevent unhandled exceptions is to employ people who are
actually developers that have not worked on your project and give them the
instructions ‘break it’.
Additionally it is advisable to give your application to novice users with the same
instruction.
Assuming that these testers find bugs there needs to be some mechanism in
place whereby the bugs can be documented and sorted out.
To do this I implement a special class that is called the error handler which I use
to records the error details either in a SQL database or as emails. This invisible
background functionality presents the end user with the illusion that there wasn’t
any error and lets him continue browsing, yet back at the office we know what
really happening.
Even the biggest and best programming companies have problems with software
bugs and they recommend a single design concept to minimise the possibility of
bugs – it is – write less code! In other words the KISS principle resurfaces here
again.
Deployment
From my experience deployment is often the easiest stage of the development
life-cycle for this type of application.
Having said this upon deployment there are always differences between the
clients infrastructure and the development infrastructure. The developer needs to
take note of certain differences before he begins to develop, or perhaps replicate
the clients’ environment in order to develop. (This applies more to windows
development not really web development).
Page 26 of 31
Copyright © 2007 Captive Design
The questions that need to be asked by the development team are, amongst
others: will we have a dedicated web server, will the database be on a separate
server, will the file server be in a separate server, will the application be run in a
web farm and how will this effect our sessions, what protocols will be available
(i.e. FTP and https).
To deploy successfully a senior developer must get to know the administrators of
the system he will deploy on. He needs to earn their trust and give them the
peace of mind that he knows what he’s doing and if he doesn’t he will ask before
doing anything.
Support
Support to the client will be provided if needed and may incur costs.
Upgrades
We will attempt to develop this application so that it can be upgraded if
necessary. Obviously cost will be incurred for upgrades.
Documentation
Documentation is very important to the development of applications as it levels
the playing field for the client and developer. In the form of documentation topics
concerning development can be communicated without uncertainty. This is why
documents such as the User Requirement Specification, Project Plan, UML,
Observation Register and Acceptance Test Procedure documents exist.
Having said this it is important to note that documents can take a significant
amount of time to compile and must be worked into the cost of development.
Scope
In this document I have covered many different possibilities for the development
of www.musicfusion.co.za. As this document is only a proposal consisting of a
collection of ideas the scope can only be defined loosely.
On consultation with the client a clear scope definition will established according
to their needs and our development restrictions (cost of development and time
allowed), which will be documented in a document entitled ‘User Requirement
Specification’s’.
The implied scope thus includes inclusions and limitations as described below:
Inclusions
Once the client has decided on the options presented in this document and we are
confident that we can develop these features within the specified budget and
timeframe, the chosen features become the inclusions within the scope of the
project.
This means that what we are certain we can deliver what the client needs within
our restrictions.
Page 27 of 31
Copyright © 2007 Captive Design
Limitations
Should the customer change their minds or request additional features during the
development phase (once we have completed the project up to certain point)
these requests fall out of scope of the inclusions of the URS.
The implementation of such requests falls within the development teams’
discretion as to whether to implement them or not and should implementation
take place these requests will incur additional cost and development time.
The reason for this approach is to manage the cost and development time within
restrictions and to prevent possible architectural changes which could cause
unexpected exceptions in the code.
Suggestions
Transferral of Data
With reference to the quoted text:
“Suggestions for integrating the site into our existing data base (methods of
delivering the order from website to content creation)”
I have assumed the following:
 The database may consist of mp3 indexes in a SQL Server
 Or the database could represent a file structure
 Content creation referrers to a manufacturing facility
In order to transfer SQL tables between databases this is a fairly7 easy task as
particular methods are well established.
If the database represents a file structure an application can be written to scan
the file structure and import the data into SQL server.
In terms of transferring the orders to the manufacturing facility a separate
application may have to be written to subscribe to the XML web service that
www.musicfusion.co.za will provide. In order to accurately describe integration
options it is necessary to analyse the existing infrastructure.
Hosting
In terms of hosting I recommend that the Webserver, SQL Server and File Server
be hosted on different physical servers.
Although this may seem like an expensive option the benefits outweigh the cost.
The benefits are as follows:
Better Performance:
As each machine has different hardware there is less chance of over burdening
the individual systems.
Better Security:
Page 28 of 31
Copyright © 2007 Captive Design
As the data stored on the file server and SQL server could have particular value
to hackers and other miscreants, using separate machines will provide an extra
layer of security both in terms of attempted unauthorised hacking and in terms of
unauthorised physical access.
Ease of maintenance and upgrades:
As the site grows the demand on the servers will increase which will eventually
prompt the need for upgrade or maintenance tasks to be performed. Since the
separate machines will need upgrades at different intervals and to different
specifications an infrastructure like the one I have suggested would facilitate the
most cost effective solution in the long term.
Ease of backup:
As the application hosted on the webserver will most likely not have much change
in the file system over time backups will only need to be performed infrequently.
Conversely the SQL Server and Fileserver will need to be backed up frequently.
Having distinct physical infrastructure for each machine will allow separate
backups and backup sets to be easily defined.
Cost
Cost Break Down
With no concrete plans it is difficult to estimate an actual cost breakdown
however the table below describes the cost break down (at industry standard
rates) according to Diagram 2.
Diagram 3
Chargeable
Entity
Cost Notes
Deposit R13333.33 Essential to fund
the development
until the first
milestone
Labour (based on 8
hours a day)
Days Rate
per
hour
Total
Rands
63 Days P R151200
6 Days O R12000
Total R163200
Based on standard
rates in this
industry. Please
refer to Diagram 2.
Page 29 of 31
Copyright © 2007 Captive Design
Components: Component Dollar
Price
Rand
Price
FreeTextBox
Distribution
Licence
USD
199.99
R
1,428.69
Developer
Express
Xtra
Reports
USD
299.99
R
2,144.26
Total R3572.96
Pre-developed
modules save time
and development
costs
Outsourcing: Entity Rand
Price
Can this be
done in
house
Graphic
Design
R700 Yes
Advanced
Flash
R2000 Yes
Total R2700
This can be done in
house at the rate
of 250 an hour. It
is cheaper to
outsource it to
specialists.
Consultation Fees Waived Excludes Travel
Expenses
As you can see from the cost breakdown of the above diagram, at industry
standard fees the site is very over budget. I am willing to make an arrangement
of some sort to compensate my labour. I will be still be able to develop this site
for the amount offered to me on the offer of in house contractual employment or
another type of arrangement.
The cost of development will only include features agreed upon that a within the
scope as determined by the stakeholders involved in this project.
The total cost of the solution will be R40000.008
This includes the following:
 Development of the database and application functionality for the
proposed website only
 Documentation of User Requirement Specification, Acceptance Test
Procedure and Administration Training manuals.
 Deployment if required
In order to commence work a 33% deposit is required of R40000.
Keys
Back to top
1. For the purpose of this document I will refer to the above mentioned
music distribution site as www.musicfusion.co.za.
2. 70 minutes of music in CDA format not mp3 compilation disks
3. The administrator portal is modelled upon similar functionality of the
DotNetNuke web applications.
4. For the purposes of simplicity all users and roles players in this document
are presumed to be male.
5. Assuming that the clients mp3 collection consists of 100000+ unique files,
organized into directories with usable metadata.
Page 30 of 31
Copyright © 2007 Captive Design
6. The manufacturing queue is not addressed in this document however it
should be noted that a consultation is needed to gauge what the client
needs in order to integrate this into a pre-existing manufacturing
infrastructure.
7. Assuming that the tables with the data have been designed in a way that
supports data integrity (i.e. normalised).
8. Negotiable bearing in mind the actual cost of development.
Technological Summary
Technology: AJAX enabled ASP.net 2.0
Server Side Scripting
Language:
C#
Client Side Scripting
Language:
JavaScript
Backend Database: SQL Server 2000
Webserver: IIS 6.0
Server Platforms: Windows Server 2003 Web Edition/Enterprise Edition
IDE: Visual Studio 2005 Professional Edition
Media: Flash 8.0, Photoshop 7.0
Exclusive Permissions
The exclusive permissions granted by Chris Morton to First Technology pertaining
to the use of this document are:
1. The use of the entire document or part thereof in the compilation of a
proposal for First Technology’s client on provision that a reference is made
to the Author of this document where applicable.
2. Permission to change and append the document contents provided an
original back-up copy is kept (unchanged).
3. Permission to distribute this document either electronically or in printed
form internally or to the client.
4. All other rights are reserved.
Document Summary
File Name: Proposal for Development of Music Distribution Website.doc
Author: Chris Morton
First Created: 2007/02/22 08:33 PM
Last Modified: 2022/03/18 08:32 PM
Word Count: 9833
Support Documentation
Quotation:
Page 31 of 31
Copyright © 2007 Captive Design
CDQ284.xls
Pro-forma Invoice:
CDPI284.xls

Mais conteúdo relacionado

Destaque

Proposal
ProposalProposal
Proposalloisevz
 
Proposal final
Proposal finalProposal final
Proposal finalleahwatts
 
Artists in Exploration 2016 Proposal
Artists in Exploration 2016 ProposalArtists in Exploration 2016 Proposal
Artists in Exploration 2016 ProposalRachael Ferranti
 
Richards business plan presentation assignment
Richards business plan presentation assignmentRichards business plan presentation assignment
Richards business plan presentation assignmentLaman Richards
 
POWERPOINT PRESENTATION FA7ITH URBAN MUSIC 2016 UPDATE
POWERPOINT PRESENTATION FA7ITH URBAN MUSIC 2016 UPDATEPOWERPOINT PRESENTATION FA7ITH URBAN MUSIC 2016 UPDATE
POWERPOINT PRESENTATION FA7ITH URBAN MUSIC 2016 UPDATETerry Greene Music Legend
 
Funding Strategies for the Individual Artist
Funding Strategies for the Individual ArtistFunding Strategies for the Individual Artist
Funding Strategies for the Individual ArtistFresh Arts
 
Artist Housing business proposal
Artist Housing business proposalArtist Housing business proposal
Artist Housing business proposalKelvin Xuna
 
digital marketing plan
digital marketing plandigital marketing plan
digital marketing planshanaericka
 
Entertainment As Business
Entertainment As BusinessEntertainment As Business
Entertainment As Businessguest34b8db
 
Africa Rise Up general Proposal
Africa Rise Up general  Proposal Africa Rise Up general  Proposal
Africa Rise Up general Proposal Kirsten Uhl
 
Manly Gregory Written Business Plan
Manly Gregory Written Business PlanManly Gregory Written Business Plan
Manly Gregory Written Business PlanGregory Manly
 
[Proposal Supplement] Our Shared Vision for the MPC Student Lounge
[Proposal Supplement] Our Shared Vision for the MPC Student Lounge[Proposal Supplement] Our Shared Vision for the MPC Student Lounge
[Proposal Supplement] Our Shared Vision for the MPC Student LoungeMonica Batac
 
MC101 Proposal for Students
MC101 Proposal for StudentsMC101 Proposal for Students
MC101 Proposal for StudentsAkhil Mehta
 
Evaluating advertising creative proposal
Evaluating advertising creative proposalEvaluating advertising creative proposal
Evaluating advertising creative proposaleddywidjaja1
 
Music business plan template
Music business plan templateMusic business plan template
Music business plan templatePatrick Diamitani
 

Destaque (20)

Proposal
ProposalProposal
Proposal
 
Proposal
ProposalProposal
Proposal
 
Proposal final
Proposal finalProposal final
Proposal final
 
Artists in Exploration 2016 Proposal
Artists in Exploration 2016 ProposalArtists in Exploration 2016 Proposal
Artists in Exploration 2016 Proposal
 
Richards business plan presentation assignment
Richards business plan presentation assignmentRichards business plan presentation assignment
Richards business plan presentation assignment
 
POWERPOINT PRESENTATION FA7ITH URBAN MUSIC 2016 UPDATE
POWERPOINT PRESENTATION FA7ITH URBAN MUSIC 2016 UPDATEPOWERPOINT PRESENTATION FA7ITH URBAN MUSIC 2016 UPDATE
POWERPOINT PRESENTATION FA7ITH URBAN MUSIC 2016 UPDATE
 
Proposal and treatment
Proposal and treatmentProposal and treatment
Proposal and treatment
 
Broadcast Music
Broadcast MusicBroadcast Music
Broadcast Music
 
Funding Strategies for the Individual Artist
Funding Strategies for the Individual ArtistFunding Strategies for the Individual Artist
Funding Strategies for the Individual Artist
 
Artist Housing business proposal
Artist Housing business proposalArtist Housing business proposal
Artist Housing business proposal
 
Performance Planning 8
Performance Planning 8Performance Planning 8
Performance Planning 8
 
digital marketing plan
digital marketing plandigital marketing plan
digital marketing plan
 
Entertainment As Business
Entertainment As BusinessEntertainment As Business
Entertainment As Business
 
Africa Rise Up general Proposal
Africa Rise Up general  Proposal Africa Rise Up general  Proposal
Africa Rise Up general Proposal
 
Manly Gregory Written Business Plan
Manly Gregory Written Business PlanManly Gregory Written Business Plan
Manly Gregory Written Business Plan
 
[Proposal Supplement] Our Shared Vision for the MPC Student Lounge
[Proposal Supplement] Our Shared Vision for the MPC Student Lounge[Proposal Supplement] Our Shared Vision for the MPC Student Lounge
[Proposal Supplement] Our Shared Vision for the MPC Student Lounge
 
MC101 Proposal for Students
MC101 Proposal for StudentsMC101 Proposal for Students
MC101 Proposal for Students
 
Brand identity
Brand identityBrand identity
Brand identity
 
Evaluating advertising creative proposal
Evaluating advertising creative proposalEvaluating advertising creative proposal
Evaluating advertising creative proposal
 
Music business plan template
Music business plan templateMusic business plan template
Music business plan template
 

Semelhante a Proposal for development of Music Distribution Website proposal

Work Measurement Application - Ghent Internship Report - Adel Belasker
Work Measurement Application - Ghent Internship Report - Adel BelaskerWork Measurement Application - Ghent Internship Report - Adel Belasker
Work Measurement Application - Ghent Internship Report - Adel BelaskerAdel Belasker
 
An Introduction to Creo 3.0
An Introduction to Creo 3.0An Introduction to Creo 3.0
An Introduction to Creo 3.0Kshitiz24
 
Data over dab
Data over dabData over dab
Data over dabDigris AG
 
architectureplaybook-readthedocs-io-en-latest.pdf
architectureplaybook-readthedocs-io-en-latest.pdfarchitectureplaybook-readthedocs-io-en-latest.pdf
architectureplaybook-readthedocs-io-en-latest.pdfmomirlan
 
Chat Application [Full Documentation]
Chat Application [Full Documentation]Chat Application [Full Documentation]
Chat Application [Full Documentation]Rajon
 
Information Architect Manifesto
Information Architect Manifesto Information Architect Manifesto
Information Architect Manifesto calmr.io
 
OpenScape Contact Center Enterprise V10 Manager Administration Guide Administ...
OpenScape Contact Center Enterprise V10 Manager Administration Guide Administ...OpenScape Contact Center Enterprise V10 Manager Administration Guide Administ...
OpenScape Contact Center Enterprise V10 Manager Administration Guide Administ...EnriqueJoseCaleroGal
 
Linux Vs Windows Tco Comparison
Linux Vs Windows Tco ComparisonLinux Vs Windows Tco Comparison
Linux Vs Windows Tco Comparisonaskme
 
SPi Global Services Overview
SPi Global Services OverviewSPi Global Services Overview
SPi Global Services Overviewbloevens
 
Digital Content Retrieval Final Report
Digital Content Retrieval Final ReportDigital Content Retrieval Final Report
Digital Content Retrieval Final ReportKourosh Sajjadi
 
Project Business Requirements Document
Project Business Requirements DocumentProject Business Requirements Document
Project Business Requirements DocumentJoshua Flewelling
 
Project final report
Project final reportProject final report
Project final reportALIN BABU
 
QBD_1464843125535 - Copy
QBD_1464843125535 - CopyQBD_1464843125535 - Copy
QBD_1464843125535 - CopyBhavesh Jangale
 
Software Engineering
Software EngineeringSoftware Engineering
Software EngineeringSoftware Guru
 
Daemon Behr - Challenge 3 - Virtual Design Master
Daemon Behr - Challenge 3 - Virtual Design Master Daemon Behr - Challenge 3 - Virtual Design Master
Daemon Behr - Challenge 3 - Virtual Design Master vdmchallenge
 
SIGURFREYR.COM: E-Magazine, Video-Gallery, Forum, Blog & Survey
SIGURFREYR.COM: E-Magazine, Video-Gallery, Forum, Blog & SurveySIGURFREYR.COM: E-Magazine, Video-Gallery, Forum, Blog & Survey
SIGURFREYR.COM: E-Magazine, Video-Gallery, Forum, Blog & SurveyGudmundur Sigurfreyr
 
RDGB Corporate Profile
RDGB Corporate ProfileRDGB Corporate Profile
RDGB Corporate ProfileRejaul Islam
 

Semelhante a Proposal for development of Music Distribution Website proposal (20)

Work Measurement Application - Ghent Internship Report - Adel Belasker
Work Measurement Application - Ghent Internship Report - Adel BelaskerWork Measurement Application - Ghent Internship Report - Adel Belasker
Work Measurement Application - Ghent Internship Report - Adel Belasker
 
An Introduction to Creo 3.0
An Introduction to Creo 3.0An Introduction to Creo 3.0
An Introduction to Creo 3.0
 
orcad-tutorial.pdf
orcad-tutorial.pdforcad-tutorial.pdf
orcad-tutorial.pdf
 
Data over dab
Data over dabData over dab
Data over dab
 
architectureplaybook-readthedocs-io-en-latest.pdf
architectureplaybook-readthedocs-io-en-latest.pdfarchitectureplaybook-readthedocs-io-en-latest.pdf
architectureplaybook-readthedocs-io-en-latest.pdf
 
Chat Application [Full Documentation]
Chat Application [Full Documentation]Chat Application [Full Documentation]
Chat Application [Full Documentation]
 
Information Architect Manifesto
Information Architect Manifesto Information Architect Manifesto
Information Architect Manifesto
 
OpenScape Contact Center Enterprise V10 Manager Administration Guide Administ...
OpenScape Contact Center Enterprise V10 Manager Administration Guide Administ...OpenScape Contact Center Enterprise V10 Manager Administration Guide Administ...
OpenScape Contact Center Enterprise V10 Manager Administration Guide Administ...
 
Linux Vs Windows Tco Comparison
Linux Vs Windows Tco ComparisonLinux Vs Windows Tco Comparison
Linux Vs Windows Tco Comparison
 
SPi Global Services Overview
SPi Global Services OverviewSPi Global Services Overview
SPi Global Services Overview
 
Digital Content Retrieval Final Report
Digital Content Retrieval Final ReportDigital Content Retrieval Final Report
Digital Content Retrieval Final Report
 
Moss2007
Moss2007Moss2007
Moss2007
 
Project Business Requirements Document
Project Business Requirements DocumentProject Business Requirements Document
Project Business Requirements Document
 
Project final report
Project final reportProject final report
Project final report
 
Open Source adobe lightroom like
Open Source adobe lightroom likeOpen Source adobe lightroom like
Open Source adobe lightroom like
 
QBD_1464843125535 - Copy
QBD_1464843125535 - CopyQBD_1464843125535 - Copy
QBD_1464843125535 - Copy
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
 
Daemon Behr - Challenge 3 - Virtual Design Master
Daemon Behr - Challenge 3 - Virtual Design Master Daemon Behr - Challenge 3 - Virtual Design Master
Daemon Behr - Challenge 3 - Virtual Design Master
 
SIGURFREYR.COM: E-Magazine, Video-Gallery, Forum, Blog & Survey
SIGURFREYR.COM: E-Magazine, Video-Gallery, Forum, Blog & SurveySIGURFREYR.COM: E-Magazine, Video-Gallery, Forum, Blog & Survey
SIGURFREYR.COM: E-Magazine, Video-Gallery, Forum, Blog & Survey
 
RDGB Corporate Profile
RDGB Corporate ProfileRDGB Corporate Profile
RDGB Corporate Profile
 

Mais de MakeNET

Word puzzle for verbal cognitive assessments
Word puzzle for verbal cognitive assessmentsWord puzzle for verbal cognitive assessments
Word puzzle for verbal cognitive assessmentsMakeNET
 
Regulations of obtaining Judo Degrees - Libyan Judo Federation
Regulations of obtaining Judo Degrees - Libyan Judo FederationRegulations of obtaining Judo Degrees - Libyan Judo Federation
Regulations of obtaining Judo Degrees - Libyan Judo FederationMakeNET
 
User Requirement Specification for Tender Alert Website
User Requirement Specification for Tender Alert WebsiteUser Requirement Specification for Tender Alert Website
User Requirement Specification for Tender Alert WebsiteMakeNET
 
Treasury HelpDesk Acceptance Test Procedure
Treasury HelpDesk Acceptance Test ProcedureTreasury HelpDesk Acceptance Test Procedure
Treasury HelpDesk Acceptance Test ProcedureMakeNET
 
HelpDesk Training Manual
HelpDesk Training ManualHelpDesk Training Manual
HelpDesk Training ManualMakeNET
 
CallQ scope and user specification summary
CallQ scope and user specification summaryCallQ scope and user specification summary
CallQ scope and user specification summaryMakeNET
 
Can MERSEA help restore our oceans?
Can MERSEA help restore our oceans?Can MERSEA help restore our oceans?
Can MERSEA help restore our oceans?MakeNET
 
MERSEA PhD Research Proposal
MERSEA PhD Research Proposal MERSEA PhD Research Proposal
MERSEA PhD Research Proposal MakeNET
 
MERSEA - Marine Ecosystem Restoration at Sea
MERSEA - Marine Ecosystem Restoration at SeaMERSEA - Marine Ecosystem Restoration at Sea
MERSEA - Marine Ecosystem Restoration at SeaMakeNET
 
Inventor Interests
Inventor InterestsInventor Interests
Inventor InterestsMakeNET
 
High Altitude Oxygen Pods Experiment
High Altitude Oxygen Pods ExperimentHigh Altitude Oxygen Pods Experiment
High Altitude Oxygen Pods ExperimentMakeNET
 
Thermo Electric Converter
Thermo Electric ConverterThermo Electric Converter
Thermo Electric ConverterMakeNET
 
The Modern Inventor
The Modern InventorThe Modern Inventor
The Modern InventorMakeNET
 
Ferro Fluid Based Solar Energy
Ferro Fluid Based Solar EnergyFerro Fluid Based Solar Energy
Ferro Fluid Based Solar EnergyMakeNET
 

Mais de MakeNET (14)

Word puzzle for verbal cognitive assessments
Word puzzle for verbal cognitive assessmentsWord puzzle for verbal cognitive assessments
Word puzzle for verbal cognitive assessments
 
Regulations of obtaining Judo Degrees - Libyan Judo Federation
Regulations of obtaining Judo Degrees - Libyan Judo FederationRegulations of obtaining Judo Degrees - Libyan Judo Federation
Regulations of obtaining Judo Degrees - Libyan Judo Federation
 
User Requirement Specification for Tender Alert Website
User Requirement Specification for Tender Alert WebsiteUser Requirement Specification for Tender Alert Website
User Requirement Specification for Tender Alert Website
 
Treasury HelpDesk Acceptance Test Procedure
Treasury HelpDesk Acceptance Test ProcedureTreasury HelpDesk Acceptance Test Procedure
Treasury HelpDesk Acceptance Test Procedure
 
HelpDesk Training Manual
HelpDesk Training ManualHelpDesk Training Manual
HelpDesk Training Manual
 
CallQ scope and user specification summary
CallQ scope and user specification summaryCallQ scope and user specification summary
CallQ scope and user specification summary
 
Can MERSEA help restore our oceans?
Can MERSEA help restore our oceans?Can MERSEA help restore our oceans?
Can MERSEA help restore our oceans?
 
MERSEA PhD Research Proposal
MERSEA PhD Research Proposal MERSEA PhD Research Proposal
MERSEA PhD Research Proposal
 
MERSEA - Marine Ecosystem Restoration at Sea
MERSEA - Marine Ecosystem Restoration at SeaMERSEA - Marine Ecosystem Restoration at Sea
MERSEA - Marine Ecosystem Restoration at Sea
 
Inventor Interests
Inventor InterestsInventor Interests
Inventor Interests
 
High Altitude Oxygen Pods Experiment
High Altitude Oxygen Pods ExperimentHigh Altitude Oxygen Pods Experiment
High Altitude Oxygen Pods Experiment
 
Thermo Electric Converter
Thermo Electric ConverterThermo Electric Converter
Thermo Electric Converter
 
The Modern Inventor
The Modern InventorThe Modern Inventor
The Modern Inventor
 
Ferro Fluid Based Solar Energy
Ferro Fluid Based Solar EnergyFerro Fluid Based Solar Energy
Ferro Fluid Based Solar Energy
 

Último

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 

Último (20)

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 

Proposal for development of Music Distribution Website proposal

  • 1. Page 1 of 31 Copyright © 2007 Captive Design Mr ### ### Street Pietermaritzburg 3201 Captive Design Pietermaritzburg 3201 Senior Software Engineer: Chris Morton Phone: 0741012850 Email: chris@captivedesign.co.za Table of Contents Proposal for Development of Music Distribution Website ..................................3 Executive Summary ...........................................................................3 Introduction......................................................................................3 Features and Core Functionality............................................................4 Assumptions ..................................................................................4 Primary Purpose ............................................................................4 Scenario ......................................................................................4 A session in the life of www.musicfusion.co.za ............................4 Targeted Audience .........................................................................5 Core Features ................................................................................6 Proposed Module Overview ..............................................................6 Diagram 1 ............................................................................6 Searching and Display ....................................................................8 Community Forums........................................................................9 Customer Reviews/Ratings ..............................................................9 Customisability..............................................................................9 User Profiling .............................................................................. 10 Top 10....................................................................................... 10 Shopping Cart and Payment Processing ........................................... 11 Jewel Case Insert Creation ............................................................ 11 Access Levels and User Roles......................................................... 12 Internal Users ..................................................................... 12 Public Users ........................................................................ 13 Administration Panels ................................................................... 13 Value Added Features.................................................................... 14 Musician Pages ............................................................................ 14 Ringtones................................................................................... 14 My Scratches, My Albums Sharing .................................................. 15 Band Voting ................................................................................ 15 Events Guide .............................................................................. 15 Audio Streaming.......................................................................... 16 News and Hot Topics.................................................................... 16 Ticket Sales................................................................................ 16 Optional Newsletters .................................................................... 16 RSS Streams .............................................................................. 16 Competitions and Special Offers ..................................................... 16
  • 2. Page 2 of 31 Copyright © 2007 Captive Design Advertising ................................................................................. 17 Site Reports................................................................................ 17 Layout and Design ........................................................................... 17 Proposal 1 ................................................................................... 18 Features: ................................................................................... 18 Pros: ......................................................................................... 18 Cons: ........................................................................................ 19 Proposal 2 ................................................................................... 19 Features .................................................................................... 19 Pros: ......................................................................................... 19 Cons: ........................................................................................ 20 Proposal 3 ................................................................................... 20 Features .................................................................................... 20 Pros: ......................................................................................... 21 Cons: ........................................................................................ 21 Development Strategy ...................................................................... 21 Prerequisites................................................................................ 21 Consultation ................................................................................ 21 Milestones ................................................................................... 22 Milestone Summary ..................................................................... 22 Diagram 2 .......................................................................... 22 Explanation ................................................................................ 23 Database Design .......................................................................... 23 Application Design ........................................................................ 24 Testing ....................................................................................... 25 Deployment ................................................................................. 25 Support ...................................................................................... 26 Upgrades .................................................................................... 26 Documentation............................................................................. 26 Scope ............................................................................................ 26 Inclusions.................................................................................... 26 Limitations .................................................................................. 27 Suggestions .................................................................................... 27 Transferral of Data........................................................................ 27 Hosting ....................................................................................... 27 Cost .............................................................................................. 28 Cost Break Down ......................................................................... 28 Diagram 3 .......................................................................... 28 Keys .............................................................................................. 29 Technological Summary .................................................................... 30 Exclusive Permissions ....................................................................... 30 Document Summary......................................................................... 30 Support Documentation .................................................................... 30
  • 3. Page 3 of 31 Copyright © 2007 Captive Design Proposal for Development of Music Distribution Website Author: Chris Morton Executive Summary This document is a proposal for the development of a website for your client. The document covers a scenario on which the rest of the document is based upon. From the scenario I have extracted the technical aspects, financial aspects and development aspects for the proposal. Three important diagrams summarise the documents content and will be useful for a preliminary glance about this proposal. It is important to understand that reading the content of the document will give you a better understanding of the entire proposal. I hope you find this document useful in creating your proposal to your client. Introduction Please note: Keys used in this document are listed here. The purpose of this document is to formally conceptualise the development of www.musicfusion.co.za1 in order to support the acceptance of the work offered by your client. The core functionality of this application supports the online registration of users who once registered can compile custom compilations of music CD’S2 according to the music available on the site. The registered users can upload images and can create jewel case inserts for their compilations and proceed to pay for and order their compilation to be delivered to their selected destination. The site must support the customisation and updateability of certain content via an administrator access portal3. The site must also allow for feature rich interaction of registered users where users can review and rate music. Registered users must also be able to participate in forums. In this document I will attempt to address the following issues raised by your client: 1. Site Layout 2. Customisability 3. Information presented to a user of the site. 4. Searching 5. Community Forums and Customer Reviews 6. Suggestions for integrating existing data into the new application 7. Suggestions to make the site appealing to the public 8. Hosting Solutions Please note that at the time of writing the site http://mas.musiccreator.de/ was down or inaccessible from my machine.
  • 4. Page 4 of 31 Copyright © 2007 Captive Design Features and Core Functionality Assumptions I have defined two assumptions that I am basing this proposal on as described under the pertinent headings. Please be advised that I have based these assumptions from my initial consultation with First Technologies representative and from the information given to me. Primary Purpose The primary purpose of www.musicfusion.co.za is addressed in the introduction in a condensed summary. A more detailed description is documented here: I have used my creative licence to document an excerpt that describes user interaction in order to describe the purpose: Scenario A session in the life of www.musicfusion.co.za An anonymous user browses to www.musicfusion.co.za whereby he4 is presented with an attractive, feature rich website that immediately prompts him to discover the massive mp3 collection that is now available for his perusal. The user browses the music collection and previews the music he likes. Hopefully he discovers many musicians he really enjoys and has already seen the possibility of legally acquiring a copy of his favourite music collection. As he has been browsing he has been ‘tagging’ music that he likes and dislikes and after a preset (by the administrator) number of previews he is prompted to login or create an account to continue his browsing. Assuming this user is a new unregistered user he decides to sign-up and enjoy the benefits of belonging to www.musicfusion.co.za. He discovers that his ‘tagging’ has been saved in his online profile in his ‘My Scratches’ section. He continues his browsing activity and he is now given the option of longer previews and the ability to rate his music preferences. As a new registered user he is slightly uncertain of paying for music as he is unfamiliar with the site and wants to know more, which prompts him to browse to the FAQ section. This section briefly describes that the music is legal and shows a customisable (by administrator) price list and most importantly describes that the music in his ‘My Scratches’ can be compiled into a CD which he can purchase from www.musicfusion.co.za. Hopefully he is satisfied and the FAQ suggests he looks in the forum to find out more about what ever he needs to know. He browses the forum and discovers he has reached the utopia of the music culture in South Africa. Thousands of other users just like him are participating in threads about genres, bands, songs, events, instruments – you name it and he finds it. He discovers he can start his own thread and promptly starts one on ‘Alternative Jazz’. He is prompted by www.musicfusion.co.za to update his profile with a picture and some other information. He is allowed to put a watch on this thread and the other ones he has participated in, which he will be alerted via email or an RSS feed when something changes.
  • 5. Page 5 of 31 Copyright © 2007 Captive Design The user logs off and returns a few days later from a different computer. He logs in continues to review, rate and tag his music. Eventually this sceptical user gets the urge to splash out and order some of his scratched music to be compiled into CD format and delivered to his residence. He clicks on his scratch he has entitled ‘Electronica from The Depths’ and he is invited to use some templates for his jewel case insert or upload his own. He decides to upload his own. Unfortunately he interrupted and needs to come back later to finish his order. That evening at his residence he logs on again and goes to his ‘My Scratches’ section. Alas he discovers his ‘Electronica from the Depths’ is no longer there but notices that his ‘My Albums’ section is showing (1) next to it. So he goes to ‘My Albums’ and previews his album before proceeding to the checkout. He notices that he has one track on the album that is not really Electronica and removes it. The track moves back to his ‘My Scratches’ section and he selects another to be added to his 64 minute compilation. The track he selects is 7 minutes long and the system advises that the album cannot include the track he has selected. He types in ‘ElecTRonica 2001 south Africa’ in the search box and 10 results are displayed. Luckily he finds exactly the track he wants by Felix Laband and adds it to his ‘My Scratches’ where he proceeds to add it to his ‘Electronica from the Depths’ album. He proceeds to the ‘Get It’ section where he confirms his identity using a sec ure access password and is redirected to a SSL protected Paypal hosting page and enters his credit card details. After a couple of seconds his payment is processed and he receives an email in his inbox confirming his purchase and the estimated time of arrival. He is redirected back to www.musicfusion.co.za and continues the important business of browsing the music. After the specified time he gets his album via mail and is extremely happy to receive the excellent quality pre-packaged article and secretly reckons he has got a bargain. That night he has a party and his friends comment ‘Dude! That is the best music of that sort I have listened to for a while – but it’s not really my jive’. He replies ‘Yeah I ordered it on the net….. Ah …. www.musicfusion.co.za has a huge selection of music you can listen to and if you like it you can order a CD if you want. Check it out man.’ And the story continues… End of Excerpt Although unconventional, I find it easiest to describe functionality in this way, as it is much more interesting than dry technical explanations. Captive Design documents such explanations in an article entitled ‘User Requirement Specifications’. Targeted Audience As suggested in the excerpt the target audience assumed for the application is essentially a moneyed young professional. In this document I have written the features to appeal to a wide range of audiences including but not limited to:  students
  • 6. Page 6 of 31 Copyright © 2007 Captive Design  young adults  professional musicians It assumed that the target audience has a minimal degree of technological savvy, own credit cards or have a paypal account, and are of course music fans. Core Features Proposed Module Overview A Summary of the proposed modules is presented below in table format: The codes in the righter most columns represent the module types; multiple values represent a combination of them: Keys: S – Standard Core Functionality F – Value Added feature V - Visible I – Invisible or contains an Invisible Component C – Module collection of a number of Custom Controls T – Contains third party components R – Revenue Generator Diagram 1 Module Description Module Type Searching Used to search for music according to any criteria S,V Display Allows User to see more detailed information on his selection. Using this he can preview, rate, review, tag and nominate mp3’s. he can also look at linking pertaining to the music. S,V,C Community Forum Allows anonymous users to browse community forums. Allows registered users to participate in forums Allows administrators to review posts and prevent certain users from participating. Administrators can also hide and disable threads. S,V,C Ratings Allows Registered Users to rate music S,V Review Allows Registered Users to write a review of music S,V User Profile Allows users to edit and view their details. Includes the My Scratched and My Albums modules. S,V,C,I Top 10 Displays the top ten of a selected list. The default is most listened to music. S,V My Scratches Keeps track of the users interest of music. He can tag music which goes into his scratches so he can compile S,V,C
  • 7. Page 7 of 31 Copyright © 2007 Captive Design albums My Albums My Albums in the Shopping Cart of this site. Here the user can create his desired product and jewel case design, preview, edit and change the album. S,V,C Get It Get It is the Checkout of this site. This allows the user to enter his banking details under a SSL and confirm his order and proceed to purchase it. S,V,C,T,R Jewel Case Creation Wizard This allows a user to create a jewel case using either a template wizard or uploading a custom insert. S,V,C,T,R Login Module Provides a security layer for registered users S,V Registration Module Allows new users to register S,V,C Access Control Module Runs as background service that manages sessions and access control S,I Administration/Customisation Modules Allows authorised users to perform customisation tasks of various types through different interfaces according to the customization task S,V,C,T Musician Pages Provides an interface whereby a user can upload information on his band and create a band profile page. F,V,C,R Ringtone Wizard Allows registered users to create custom Ringtones from the mp3s available and mms them to their phones F,V,C,T,R Sharing Module Allows a to share is albums or scratches for the perusal of other users F,V,C,R Events Calendar Allows users to configure their events online and add them to a national events calendar. Users can down load an outlook calendar event to add to there outlook F,V,C,R Voting/Survey Module Allows the site administrators to post voting an surveys about current issues. Allows users to vote for bands they would like to see. F,V Audio Streaming Module Performs an online radio service F,V,I News and Hot Topics Module Allows the administrators to keep the site current with current cultural events etc F,V,C Ticket Sales Integrates with event calendar to allow the online sale of tickets F,V,C,T,R Optional Newsletters Allows users to sign up for optional news letter that have been composed by an administrator F,V,C RSS Feed module Allows users to get feeds from the site from selected areas F,V Competitions/Special Offers Module Allows users to enter competitions and partake in special offers to F,V.R
  • 8. Page 8 of 31 Copyright © 2007 Captive Design maintain a loyal user base. Advertising Module Allows administrator to configure advertising on the site F,V,C,R Site Reports Module Allows administrators to generate reports pertaining to activity on the site to gauge performance of various aspects of the site. F,V,C,R,T The core features of www.musicfusion.co.za are described below with some description of technical aspects involved: Searching and Display The search functionality for www.musicfusion.co.za is implemented using queries against data stored in a database about the mp3’s available. The mp3 format contains a piece of information called a meta-tag which stores metadata about the actual mp3 file. Please follow these links for more information: http://en.wikipedia.org/wiki/MP3 http://www.id3lib.org/id3//id3v1.html Essentially this metadata can store information such as the song title, artist, genre, year, album and other data about the music. When using software such as Win Amp or Windows Media Player searches conducted on a users system use this information to return results. Assuming5 the metadata of the mp3 files on our client’s server is good it is possible to write a small windows application to retrieve this data from the mp3’s files and write it into SQL Server which can then be used to query against by www.musicfusion.co.za. Using SQL server and C# to execute query logic against a SQL database will be the fastest and easiest way of implementing an effective search mechanism. Alternatively searching directly against the meta-tags for a very large number of individual files by multiple users simultaneously may produce significant overhead and hence slow the application significantly. At this stage the implementation of the search functionality depends heavily on acquiring a copy of the mp3 files in order to analyse, develop, test and implement functionality for a search engine. Please follow these links for further information: http://www.id3.org/id3guide http://channel9.msdn.com/ShowPost.aspx?PageIndex=11&PostID=250823 http://www.searchtools.com/info/mp3-search.html Once an effective search engine is created it is very important to display the results in a way that the user can comprehend. Essentially to address this www.musicfusion.co.za will only show song titles, album names, artists and genre (and perhaps a thumbnail if it is available) in the initial result set. The user is required to click on the item which will display the
  • 9. Page 9 of 31 Copyright © 2007 Captive Design entire information set (and perhaps related data such as ‘other music like this’ or ‘other music from this artist’). Once the user is viewing the selected information he can listen to a preview of the track (length according to login status), tag it, rate it or review it according to his preference. Community Forums To support community forums www.musicfusion.co.za will use a similar forum format to the one displayed here: http://forums.asp.net/ The forum represented here is very advanced software and some of the functionality of the http://forums.asp.net/ forum is unnecessary for www.musicfusion.co.za and I therefore advise that consultation be undertaken with the client to establish the exact needs for www.musicfusion.co.za. Essentially the forum will support thread creation by registered users, thread disabling or hiding (essentially the same effect as deleting) by administrators, post creation that supports avatars (i.e. users can use a pseudonym and a picture to represent themselves), post hiding by administrators and moderators. Please note that forums do carry risks with them as they are a public area for people to express what ever they like, which may cause incidents leading to legal intervention. In order to prevent this type of thing happening it is important to have a particular policy about how users conduct themselves and additionally there is a need for enforcement of certain policies by moderators. Customer Reviews/Ratings Registered Users will be able to rate music from 0-5 stars according to their preference. The average ratings of a particular mp3 will be displayed to all users to gauge the quality of the music however the individuals rating will be displayed for that particular user in order for him to compile albums his particular taste. www.musicfusion.co.za will use the AJAX control listed here: http://ajax.asp.net/ajaxtoolkit/Rating/Rating.aspx to implement rating. Users will also be able to write reviews on music or bands which I will refer to as ‘Blurbs’. The ‘Blurbs’ or reviews may also carry risks similar to the forums risks. Customisability Customisability of www.musicfusion.co.za will include the option to upload a number of different master pages which can include different graphics, CSS and page layouts. The limitation to this approach is that the master page(s) must follow a consistent naming convention, XHTML validation and code behind file to ensure that the application does not produce formatting errors or application
  • 10. Page 10 of 31 Copyright © 2007 Captive Design errors. For this to be ensured a professional programmer should be employed to maintain compatibility of a new layout. It is important that customisability options exist to enable administrators to update certain content on the site (for example news, advertising, graphics etc) to keep the site attractive and to encourage repeat traffic of existing visitors. To allow this www.musicfusion.co.za will implement some of the third party controls specifically designed for this purpose, for example: http://www.freetextbox.com/ Another aspect of customisability is the option to customise email messages sent from an application such as this. This functionality will be supported by a section whereby an administrator can compose HTML messages using the interface provided where ‘generic’ datatags that represent different values can be inserted at various locations within the message. Examples of a generic datatags could be ‘!@Username@’, ‘!@FirstName@’, ‘!@LastName@’, ‘!@AlbumName@’ and ‘!@Price@’ where the values pertaining to the particular user account are substituted into the configurable HTML email message. An example of this functionality can be seen in messages received from Microsoft Subscription Services. User Profiling User profiling will encompass the collection of data pertaining to:  Names  Locations  Contact Details  Login Information  Avatar Information The above mentioned data is typically collected by most sites that require some kind of registration. Further more, user profiles will contain information about music preferences, usage statistics, financial transactional information (i.e. how much has a particular user actually bought), rating information, ‘My Scratches’, ‘My Albums’ and other data should it be required. From the aspect of an administrator, he must be able to generate statistical reports based on the data in the system. Top 10 Top 10 need not be limited to actual ‘sales’ of music. The potential of the top 10 concept can include the following:  Sales  Most Listened To  Highest Rated (the traditional top 10 chart)  Most Active Users  Newest
  • 11. Page 11 of 31 Copyright © 2007 Captive Design The top ten can be implemented using similar controls as demonstrated here: http://www.imate.com/ http://www.imate.com/t-devicedetails.aspx Shopping Cart and Payment Processing The shopping cart functionality consists of three sections:  ‘My Scratches’  ‘My Albums’  ‘Get It’ Once I again I have used my creative licence to suggest ‘cool names’ that are not as intimidating or as boring as ‘Shopping Cart’ and ‘Check Out’. I am very familiar with online shopping and suggest that a ‘Wish List’ be implemented as an accurate generalisation people are sceptical about shopping online and need the psychological reassurance of the option to back-out or change their mind. This functionality can be seen on http://www.amazon.com/. For clarification please note the following equivalencies: ‘My Scratches’ roughly equates to amazon.com’s ‘Wish List’ ‘My Albums’ equates to the ‘Shopping Cart’ ‘Get It’ equates to the ‘Checkout’ The basic business process behind compiling and purchasing a CD from www.musicfusion.co.za is described in the excerpt entitled ‘A session in the life of www.musicfusion.co.za’. The process of online purchasing follows this procedure:  A registered user tags his music which is added to his ‘My Scratches’ section.  When the user decides to purchase some music he creates an empty album in his ‘My Albums’ section.  The user proceeds to add his scratches to the new album until the time limit of 70 minutes is reached. The album can be edited until the user is satisfied.  The user is encouraged to create a jewel case insert from existing templates or upload his own.  Once the user is satisfied with his album he can decide to ‘Get It’ which directs him to a secure access site hosted by Paypal where he proceeds to transact. For further information please follow this link: https://www.paypal.com/IntegrationCenter/ic_pdnHome.html.  On successful completion of the transaction he is send a message of confirmation of his order and a delivery estimate (ETA). Jewel Case Insert Creation The creation of jewel case inserts is implemented in two methods:  The selection of a pre-existing template ‘wizard’.  The uploading of a user created jewel case insert.
  • 12. Page 12 of 31 Copyright © 2007 Captive Design The wizard allows the user to select various colour schemes, fonts and images to be included in his jewel case insert. www.musicfusion.co.za produces an XML document that contains the information for the users album (including track data and jewel case insert data) and adds it to the ‘manufacturing queue’ 6. The uploading of a user created jewel case insert should support two generic formats, namely the .ncd file format that is created by the popular Nero Cover Designer software, and .psd format files created by Photoshop 5.0 or above. In order for a registered user to up load his custom jewel case insert design a tutorial should be published on www.musicfusion.co.za that covers both methods of creation. Additionally .ncd and .psd files should be downloaded or sent to the registered user with strict instructions that he is to modify the documents according to the tutorial and upload them. This must be enforced to allow for consistency and therefore efficiency in the manufacturing process. Needless to say an additional charge should be requested for custom jewel case inserts. Access Levels and User Roles During the creation of this document several possibilities of access levels have been deliberated by me. I have referred to the ‘administrator’ as the person who can perform certain functionality. I have also referred to moderators, registered users and anonymous users. The challenge with only having one type of internal user in this type of application (referred to as the ‘administrator’) is that the work required to maintain the site would over-burden a single person. Alternatively if there where a number of administrators with exactly the same permissions it would be almost impossible to delegate tasks effectively and apply some kind of quality assurance. With reference to this scenario the need to provide a number of different roles for the application with specific tasks and access permissions becomes apparent. In order to clarify the access levels and users rights assignments I propose the following roles for the application. I typically refer to these as user types. Below is a summation of my proposed user types and the roles they perform in the www.musicfusion.co.za application: Internal Users 1. Administrator The administrator is responsible for the configuration settings of the application such as the length that an anonymous user can preview a track, uploading of different master pages and the configuration of other internal user accounts or disabling of registered users accounts. The administrator will also be able to generate statistical reports relating to site usage etc. The administrator also inherits the permissions of the content publisher, forum moderator, review moderator and music moderator.
  • 13. Page 13 of 31 Copyright © 2007 Captive Design 2. Content Publisher The role of the content publisher includes the ability to update content on the site relating to news, advertising, general information, email messages, FAQ’s and jewel case insert templates (wizards). The content publisher does not inherit the forum moderators, review moderators or music moderators’ permissions. 3. Forum Moderator The forum moderator will be tasked to monitor the thread on the forum and can disable or hide the threads that may be controversial, irrelevant or exhausted. The forum moderator can also nominate registered users who are not following the conduct guidelines to be disabled from using the forums section. The administrator will disable a disruptive users account. 4. Review Moderator The review moderator is tasked to monitor reviews of music on the site. The prevention of legal interaction by copyright holders of the music available should be a high priority in www.musicfusion.co.za. The review moderator inherits the permissions of the music moderator. 5. Music Moderator The music moderator is responsible for censoring offensive material from sensitive audiences. When a registered user signs up he is given the option of ‘safe-searching’ which will prevent offensive material from being displayed for the particular user. Additionally people below a certain age will automatically have ‘safe-searching’ enabled on their accounts. In order to implement such a strategy music should be graded manually according to its offensive content. I cannot think of anyway of automating this process except that users who come across unrated offensive material can nominate it to be reviewed by the music moderator to allow it to rated. Public Users 6. Registered User A registered user has permissions to listen to longer previews of music, rate music, review music, and participate in forums and voting. A registered user can also add and remove items from his ‘My Scratches’ section, create and order albums. 7. Anonymous User An anonymous user has access to search and preview music (for a shorter interval), tag music (tags will be stored on the client’s cookies until he signs up), access the forums (read only) and browse all other sections of www.musicfusion.co.za except for the SSL section. Administration Panels As documented above customization is an integral part of www.musicfusion.co.za, it therefore stands to reason that ‘special’ internal user access panels be available for this purpose. Unfortunately the name ‘Administration Panels’ might be slightly misleading to the reader of this document. To clarify: Administration refers to a verb (administrate) as opposed to a noun (administrator), thus all internal users who have the ability to administrate content have access to certain administration panels according to their permissions.
  • 14. Page 14 of 31 Copyright © 2007 Captive Design At this stage it is impossible to describe all the aspects of administration without a consultation with the client. Value Added Features As requested by the client suggestions to make www.musicfusion.co.za more appealing to the general public would be appreciated. The following suggestions may actually be beyond the scope of www.musicfusion.co.za but I have thought to myself as I have been writing this document about ideas that are just appealing or are both appealing and could be used to generate revenue. Musician Pages The music industry in South Africa is still developing and many musicians and bands out there do not have the resources to fund a great deal of marketing. I believe that giving South African bands the opportunity to create a page on www.musicfusion.co.za would be beneficial for all parties involved, especially concerning the important aspect of generating revenue for www.musicfusion.co.za. I propose that a band can upload information on the site about their band and be assigned a sub domain on www.musicfusion.co.za. An example sub domain could be: www.thebandname.musicfusion.co.za. This concept has been around since I can remember and is implemented on sites such as: http://geocities.yahoo.com/ http://www.myspace.com/ http://googlepages.com This has proven to be a popular revenue generator. During the upload process the band is mandatorily required to send a cd of their music to the www.musicfusion.co.za administration offices for review before the musician page is approved (by the content publisher). Secondly big international bands such as Metallica, U2 or Madonna could have pages on www.musicfusion.co.za that I will call band profiles. These profile pages would be created by a Content Publisher as and when needed. An example URL for such a page could be: http://www.musicfusion.co.za/profiles.aspx?t=band&b=HootieAndTheBlowfish When a user searches for music and selects an mp3 to preview, if a profile page exists for the band (either a musician page or a profile page) the user can browse that page if they want to. Ringtones From my personal experience, I find the sms services available in this country that distribute Ringtones of popular music are below standard and too expensive. I have resorted to creating my own Ringtones and uploading them on to my phone (I have a phone that accepts mp3’s as Ringtones).
  • 15. Page 15 of 31 Copyright © 2007 Captive Design I propose I service whereby a user can select music and create up to 20 second long Ringtones and have them mms’ed to his phone via www.musicfusion.co.za for a fee. I believe this could be a good revenue generator if the technology is available. My Scratches, My Albums Sharing A lot of people out there rate themselves as DJ’s or would like to impose their taste of music on other people. The idea of individual users ‘sharing’ their scratches or albums may have commercial potential in terms of market research for CD manufacturers and record companies who are looking for new ideas in order to create compilations of music that will sell. If users have the ability to publish their scratches and albums in www.musicfusion.co.za data could be collected for corporations in order to collate and eventually find out what is ‘really’ happening in a certain demographic of music buying public. This data could be used to generate another large revenue stream. Band Voting In general the South African public still feels ‘left-out’ of the international music scene. Using a ‘survey/voting’ system www.musicfusion.co.za could gauge which bands the South African public would most like to see. With strategic partnerships in place www.musicfusion.co.za could arrange for events companies to invite bands to South Africa and receive revenue based on ticket sales (see Ticket Sales). Events Guide One of the most annoying things for me is the marketing of musical events in South Africa and my failure to add them to my Outlook Calendar to remind me when something is happening. I think a good revenue generator for www.musicfusion.co.za could be the ability of registered users who have marked themselves as Venues to configure an Outlook Calendar Event on www.musicfusion.co.za and users browsing the site can download an Outlook Calendar Event and add it to their Outlook Calendars. To view a demonstration of what I am talking about please follow this link: http://www.snowcovered.com/Snowcovered2/user_uploads/BookableEventsDemo 3.html Please note that this is a calendar that has been designed specifically for DotNetNuke and that I would have to develop my own. I would also provide a quite a different implementation.
  • 16. Page 16 of 31 Copyright © 2007 Captive Design In terms of revenue generation users who configure an event would be charged to use the functionality. Users who download an Outlook calendar event would do so for free. Audio Streaming Audio streaming to facilitate online radio could be implemented so that a registered user could listen to his scratches or an online DJ’s selection of music. I am not sure that this would encourage use of the site nor generate revenue. I would also require very large bandwidth quotas. Although this is an appealing feature of the site I don’t think it would benefit www.musicfusion.co.za’s revenue stream. News and Hot Topics This would be absolutely essential to www.musicfusion.co.za in my opinion. The possibility of integrating this into the events calendar/ticket sales modules is achievable. Ticket Sales In line with publishing event online it would make sense to partner with an organisation that distributes tickets for events and possibly either buy bulk bookings (risky/higher profit) and resell the tickets or provide a link to the ticket sellers online booking system and receive commission (low risk/low profit). To implement this will involve consultation with the selected distributor. Optional Newsletters Although everyone hates spam, the ability for a user to receive optional news letters is important. It must be clearly explained to the user that these are optional news letters and they have the choice to unsubscribe at any time. RSS Streams An alternative to optional newsletters to keep users informed it the availability of RSS feeds that more technological savvy users can subscribe to. For a brief description of RSS feeds please follow this link: http://en.wikipedia.org/wiki/RSS Competitions and Special Offers Competitions and special offers are well used marketing tools to gauge the success or failure of a particular concept or product. In my opinion it is also fair to offer users who frequently purchase products from www.musicfusion.co.za special offers in order to keep their custom. Competitions could also be useful for encouraging sales within www.musicfusion.co.za for example: If www.musicfusion.co.za holds a competition on the most attractive jewel case insert design, users who have the inclination will rise to the challenge of
  • 17. Page 17 of 31 Copyright © 2007 Captive Design designing the best cover design (which could be democratically decided by votes) and I am certain that in the process the users who design the covers will buy their ‘own’ product. Additionally as a spin off some users who vote for the best cover will also buy the cover designers album. (I have another appealing idea here: musicbucks, if a particular user album is profitable he earns music bucks which could allow him to get special discounts on his next purchase – you could even go so far as to say to the public ‘get your favourite free legal music delivered to your door for life – enter our jewel case insert design competition for free!!!”) Advertising A web site without advertising is very scarce these days. I have added this in the Value Added Features section as it has not been specifically mentioned by the client. To support adverting functionality there are many different possibilities available and I cannot describe the suitable solution without first knowing what the clients need is. Needless to say this is a revenue stream. Site Reports Perhaps one of the most important aspects of modern e-commerce site design is the ability to monitor activity within the site without resorting to log reports from the IIS webserver. To this effect I can design certain functionality to support the monitoring of activity with in the site if required. Another aspect of site reporting is the ability to get statistical data from entities such as users, mp3’s and voting. This is potentially very complex and needs consultation to minimise the requirements as much as possible. Layout and Design When reading this section please bear in mind that the proposals presented here are only three of the designs I thought as suitable for www.musicfusion.co.za in my personal capacity. If none of these are suitable I have a number of other possibilities that may appeal. Should one of these designs be suitable but have ‘missing’ elements we are able to add those elements (features) accordingly. Should the colour scheme of these proposals not be suitable we are able to change it accordingly. Graphics demonstrated in these proposals are only the purposes of conceptualisation. In reality any graphics could be represented. The purpose of the layout and design section of this document is to allow the client to explore the possibilities of the application functionality matched with the interface design.
  • 18. Page 18 of 31 Copyright © 2007 Captive Design The designs represented here are designed to be displayed correctly on 800 by 600 resolution display with 32 bit colour support. The screenshots are taken on a 1152 by 864 resolution display. Proposal 1 This design presents a modern interface with exiting options for www.musicfusion.co.za. The interface will support advanced navigation options thus a feature rich site. Features: As you can notice from the search engine section a user can search for music according to their genre preference. The three orange blocks on the right hand side could be used to display news and hot topics or as adverting space. The content section on the left hand side could display information pertaining to the top artists/trends on the site. The light grey panel above the content and news sections can be used to display important information to the users or host some flash media. Pros:  Allows for a large amount of different information to be displayed on the screen real-estate.  Looks professional and neat.  Provides a rich graphical user interface pertaining to images and flash media.
  • 19. Page 19 of 31 Copyright © 2007 Captive Design Cons:  May be ‘too complex’ in terms of navigation possibilities for an average user.  The colour scheme and graphics may need revision.  There is a danger of presenting the user with ‘information overload’. Proposal 2 This interface is very simplistic and allows for an average user to navigate easily to what the essence of www.musicfusion.co.za is: the distribution of music. Features The primary focus of this interface is the search functionality. It presents a search box and an alphabetical indexing section. The secondary focus of this interface is a large content section that is sparsely populated with images and text, supporting the simplistic navigation model. The ternary focus of this site is a panel on the right that could be used to display news and hot topics/advertising/navigation menus etc. Pros:
  • 20. Page 20 of 31 Copyright © 2007 Captive Design  An attractive and simplistic interface.  Promotes primary focus on the essence of www.musicfusion.co.za: the ability to search for music. Cons:  The overly simplistic design limits the navigation model (thus the features) of the site.  The screen real-estate is not used optimally.  The users of this site may interpret such a simple design to mean that www.musicfusion.co.za does not have a lot of features.  Some more adult users might not appreciate the adolescent appeal of this design. Proposal 3 This interface is also a simplistic design but allows for advanced navigational options (and therefore a feature rich site). In this interface there are two content sections, the first one displaying a flash element that could allow the user to scroll latest albums. The first content section could be used to show advertising, news and hot topics, navigation menus, album/track info or anything else with a graphical nature. The second content section can be used for text data representation. Features The primary focus of this interface is the navigation element of www.musicfusion.co.za which will allow for rich feature support with easy
  • 21. Page 21 of 31 Copyright © 2007 Captive Design navigation for the average user. Also supported is a search box and a header section. Pros:  Advanced navigation possibilities to support feature rich content.  Two distinct content sections for different types of data.  From a developer point of view this allows for the simplest development path for feature rich support. Cons:  Some users may interpret the interface as boring or not funky enough.  Search could be improved  A right hand content section (in the second content section) could be implemented. Development Strategy In order develop www.musicfusion.co.za within an agreed time frame and to the specified standards a development strategy needs to be defined together with the client and other stakeholders. At this stage it is difficult for me to give a concrete development plan however below I have documented some typical steps in the development of a site such as this. Prerequisites In order to develop an accurate and fast search engine to retrieve mp3’s we will require a mp3 library similar to the clients (in terms of number of individual files, metadata, file organisation (i.e. how are the files organised in the file system)) and hardware that meets similar performance of the file server where the files are to be hosted on (if the file server has raid and the development environment does not it will be impossible to determine how well or otherwise the software is performing). Additionally electronic documents containing the actual text content of the site need to be supplied in order to develop the software as quickly as possible without resorting to sample data (e.g. “Lorum ipsum dolor…”). Preferably media content such as images should be supplied in the highest resolution and biggest file sizes possible to allow us to edit them and produce the highest quality images of appropriate file size for the site. Unfortunately without these prerequisites the development time will be much longer and therefore incur a higher cost. Consultation It is of paramount importance that a consultation between the developer and the client take place before the next stage of this process can take place (the next stage being the User Requirement Specification Document/Project Plan/UML document stage).
  • 22. Page 22 of 31 Copyright © 2007 Captive Design It is also very important that regular communication takes place between the developer(s) and the client as milestone are reached to ensure that the client gets what they want on completion of the project. Unfortunately without regular consultation with the client projects like this tend to have scope creep (the developers do to much or to little) which will have cost implications for the developer (in particular the risk of losing money due to either over development or misguided developers). Simply put, just like in any industry time is money, and spending a little time in effective communication can and always does prevent wasted resources. Milestones The singular most important purpose of a project plan is to identify milestones. A milestone consists of several tasks within a certain time frame that defines a recognisable stage within the project plan. Without any concrete information is it difficult to identify actual downloads however I have identified these milestones that will definitely part of the project: Milestone Summary Keys: I – included for the deposit price P - Cost of labour R300 per hour O – Cost of labour R250 per hour C – Consultation needed R – Research Required M – Research may be required A – Acquisition of third party components required Diagram 2 Milestone Description Keys Estimated Development Time URS/Project Plan/UML Documentation including initial consultation Documents relating to the actual development process I,C,M 7 days Database Development Continues throughout the application development I,C,R N/A Database Integration Integrate existing data into the database P,C,R,A 5 days Generic Interface Design Create appealing interface and define navigation paths and content display O,C,M,A 6 days Registration and Login Facilitates the sign-up and login of new users P,C 1 Day Access Control Defines the permissions that certain user types have and their access rights P,C 3 Days Search And Display Allows for search and display of content on the P,C,R 10 days
  • 23. Page 23 of 31 Copyright © 2007 Captive Design site User Profile Allows users to view and edit their account P,C,M 4 days My Scratches, My Albums, Get It integration and Development Incorporates the functionality of purchasing process P,C,R,A 14 days Integration and development of Administration Panels Involves the development of many different panels and integration into the structure of the application P,C,R,A 10 days Integration and development of a Community Forum Development of a community forum system P,C,R,A 20 days Jewel Case Creation Wizard Development of Jewel Case Wizard P,C,R,A 6 days ATP, User Manual, Observation Register Documentation I,M 3 Days Explanation As software development is not a tangible product and often has a very abstract nature (for example class development that has no visible user interface) sometimes milestones are difficult to identify as project manager, because of this fact a project plan for software development project uses a different premise to determine milestones. Captive Design depends on regular cash flow to ensure that our bills are paid. Captive Design therefore works according to a tightly integrated arrangement that follows this process: Once a milestone is reached, a consultation with the client is arranged. At this stage we kindly ask the customer for a payment in order to fund the next stage of development. Ideally this results in the following: a customer who is delighted with our excellent work, a project that has been delivered on time and within budget, and a team of developers who have not had to struggle to pay their bills between the conception of the project (i.e. when deposit has been paid) and the end of the project. I always try to avoid any trouble. For me this is the best way of avoiding trouble, with the added bonus of make clients very happy. Database Design The database design for this project will follow the 3rd normalised database design rules. The database will be designed to fulfil the requirements of a high performance OLTP application. The database will not be designed for replication. The following describes the life cycle of a database design: The Database design of any software project typically follows 5 stages: Identification of entities, fields within those entities, the relationships between the entities. This is translated into a ‘rough’ design that some of the core functionality
  • 24. Page 24 of 31 Copyright © 2007 Captive Design can be build upon. (My personal philosophy is that the database design is the foundation of building good software, just like a builder needs a strong foundation to build a strong house). The next stage is encountered in the development phase of the project where developers start to extend the database to meet the applications requirements more specifically. The third stage of developing a sound database design is often the need to add, change or remove certain relationships that might have been initialised by some kind of client request. Some times this kind of scope creep will cause minimal changes and could take an hour to do but more often produces late nights, unhappy developers and could lead to project failure (which means wasted resources all round). Although I always try to avoid this, I have discovered it is inevitable. This is why it is important to keep communication flowing, especially in phase 2, to keep stage 3 infrequent and short lived. The fourth stage of database development is the optimisation of things such as indexes, clustered indexes and full text indexes using tools such as SQL Profiler in order to create the fastest possible database for the application. Often this requires the population of certain tables with a great deal of test data to imitate the situation in a real life scenario. The fifth stage is to create a special deployment version of the database that will be used for the application’s commercial implementation. This is essentially a database with exactly the same structure as the one used in development but only includes the data that needs to be in the database to on the deployment day. Application Design The application will be coded using C#. The application development will follow a guideline as set out in User Requirement Specification document. If there is time to publish a project plan and a UML the developers will also draw upon these documents to guide development. Typically in the development life cycle there are four stages: Planning and Documentation Development Testing Deployment This is a cross-section of a larger module called the application lifecycle. From my experience I have learned two valuable development concepts: KISS (keep it simple stupid) and the concept of continuous improvement. To develop software successfully a developer needs to have a clear idea of the end product before he writes even the first line of code. This justifies frequent consultation as the project materialises. The second thing about application development that will keep development easier and upgradeability a reality with out total application re-write is the good application of sound object oriented programming principals.
  • 25. Page 25 of 31 Copyright © 2007 Captive Design The third thing about well designed web application that must be in the developers mind when he develops is the ‘two-clicks/two-seconds’ principal. Where ever possible ‘two-clicks/two-seconds’ is what the user wants when it comes interacting with the site. In other words a user must be able to perform simple interaction using one or ‘two-clicks’ and some kind of response must happen within ‘two-seconds’ even if is just a message that says ‘loading…’. During the development of this site I will try to keep the guidelines mentioned here in mind while we develop code. At this stage it is not possible to give you a detailed application development description as without a consultation with the client their needs have not been gauged and a guideline cannot be established. Testing The testing of an application is paramount to the success of a product. Unfortunately with online applications should your application present a unhandled exception to the client they will not come back. In reality the bigger the site is the more likely this is to occur. The best way to prevent unhandled exceptions is to employ people who are actually developers that have not worked on your project and give them the instructions ‘break it’. Additionally it is advisable to give your application to novice users with the same instruction. Assuming that these testers find bugs there needs to be some mechanism in place whereby the bugs can be documented and sorted out. To do this I implement a special class that is called the error handler which I use to records the error details either in a SQL database or as emails. This invisible background functionality presents the end user with the illusion that there wasn’t any error and lets him continue browsing, yet back at the office we know what really happening. Even the biggest and best programming companies have problems with software bugs and they recommend a single design concept to minimise the possibility of bugs – it is – write less code! In other words the KISS principle resurfaces here again. Deployment From my experience deployment is often the easiest stage of the development life-cycle for this type of application. Having said this upon deployment there are always differences between the clients infrastructure and the development infrastructure. The developer needs to take note of certain differences before he begins to develop, or perhaps replicate the clients’ environment in order to develop. (This applies more to windows development not really web development).
  • 26. Page 26 of 31 Copyright © 2007 Captive Design The questions that need to be asked by the development team are, amongst others: will we have a dedicated web server, will the database be on a separate server, will the file server be in a separate server, will the application be run in a web farm and how will this effect our sessions, what protocols will be available (i.e. FTP and https). To deploy successfully a senior developer must get to know the administrators of the system he will deploy on. He needs to earn their trust and give them the peace of mind that he knows what he’s doing and if he doesn’t he will ask before doing anything. Support Support to the client will be provided if needed and may incur costs. Upgrades We will attempt to develop this application so that it can be upgraded if necessary. Obviously cost will be incurred for upgrades. Documentation Documentation is very important to the development of applications as it levels the playing field for the client and developer. In the form of documentation topics concerning development can be communicated without uncertainty. This is why documents such as the User Requirement Specification, Project Plan, UML, Observation Register and Acceptance Test Procedure documents exist. Having said this it is important to note that documents can take a significant amount of time to compile and must be worked into the cost of development. Scope In this document I have covered many different possibilities for the development of www.musicfusion.co.za. As this document is only a proposal consisting of a collection of ideas the scope can only be defined loosely. On consultation with the client a clear scope definition will established according to their needs and our development restrictions (cost of development and time allowed), which will be documented in a document entitled ‘User Requirement Specification’s’. The implied scope thus includes inclusions and limitations as described below: Inclusions Once the client has decided on the options presented in this document and we are confident that we can develop these features within the specified budget and timeframe, the chosen features become the inclusions within the scope of the project. This means that what we are certain we can deliver what the client needs within our restrictions.
  • 27. Page 27 of 31 Copyright © 2007 Captive Design Limitations Should the customer change their minds or request additional features during the development phase (once we have completed the project up to certain point) these requests fall out of scope of the inclusions of the URS. The implementation of such requests falls within the development teams’ discretion as to whether to implement them or not and should implementation take place these requests will incur additional cost and development time. The reason for this approach is to manage the cost and development time within restrictions and to prevent possible architectural changes which could cause unexpected exceptions in the code. Suggestions Transferral of Data With reference to the quoted text: “Suggestions for integrating the site into our existing data base (methods of delivering the order from website to content creation)” I have assumed the following:  The database may consist of mp3 indexes in a SQL Server  Or the database could represent a file structure  Content creation referrers to a manufacturing facility In order to transfer SQL tables between databases this is a fairly7 easy task as particular methods are well established. If the database represents a file structure an application can be written to scan the file structure and import the data into SQL server. In terms of transferring the orders to the manufacturing facility a separate application may have to be written to subscribe to the XML web service that www.musicfusion.co.za will provide. In order to accurately describe integration options it is necessary to analyse the existing infrastructure. Hosting In terms of hosting I recommend that the Webserver, SQL Server and File Server be hosted on different physical servers. Although this may seem like an expensive option the benefits outweigh the cost. The benefits are as follows: Better Performance: As each machine has different hardware there is less chance of over burdening the individual systems. Better Security:
  • 28. Page 28 of 31 Copyright © 2007 Captive Design As the data stored on the file server and SQL server could have particular value to hackers and other miscreants, using separate machines will provide an extra layer of security both in terms of attempted unauthorised hacking and in terms of unauthorised physical access. Ease of maintenance and upgrades: As the site grows the demand on the servers will increase which will eventually prompt the need for upgrade or maintenance tasks to be performed. Since the separate machines will need upgrades at different intervals and to different specifications an infrastructure like the one I have suggested would facilitate the most cost effective solution in the long term. Ease of backup: As the application hosted on the webserver will most likely not have much change in the file system over time backups will only need to be performed infrequently. Conversely the SQL Server and Fileserver will need to be backed up frequently. Having distinct physical infrastructure for each machine will allow separate backups and backup sets to be easily defined. Cost Cost Break Down With no concrete plans it is difficult to estimate an actual cost breakdown however the table below describes the cost break down (at industry standard rates) according to Diagram 2. Diagram 3 Chargeable Entity Cost Notes Deposit R13333.33 Essential to fund the development until the first milestone Labour (based on 8 hours a day) Days Rate per hour Total Rands 63 Days P R151200 6 Days O R12000 Total R163200 Based on standard rates in this industry. Please refer to Diagram 2.
  • 29. Page 29 of 31 Copyright © 2007 Captive Design Components: Component Dollar Price Rand Price FreeTextBox Distribution Licence USD 199.99 R 1,428.69 Developer Express Xtra Reports USD 299.99 R 2,144.26 Total R3572.96 Pre-developed modules save time and development costs Outsourcing: Entity Rand Price Can this be done in house Graphic Design R700 Yes Advanced Flash R2000 Yes Total R2700 This can be done in house at the rate of 250 an hour. It is cheaper to outsource it to specialists. Consultation Fees Waived Excludes Travel Expenses As you can see from the cost breakdown of the above diagram, at industry standard fees the site is very over budget. I am willing to make an arrangement of some sort to compensate my labour. I will be still be able to develop this site for the amount offered to me on the offer of in house contractual employment or another type of arrangement. The cost of development will only include features agreed upon that a within the scope as determined by the stakeholders involved in this project. The total cost of the solution will be R40000.008 This includes the following:  Development of the database and application functionality for the proposed website only  Documentation of User Requirement Specification, Acceptance Test Procedure and Administration Training manuals.  Deployment if required In order to commence work a 33% deposit is required of R40000. Keys Back to top 1. For the purpose of this document I will refer to the above mentioned music distribution site as www.musicfusion.co.za. 2. 70 minutes of music in CDA format not mp3 compilation disks 3. The administrator portal is modelled upon similar functionality of the DotNetNuke web applications. 4. For the purposes of simplicity all users and roles players in this document are presumed to be male. 5. Assuming that the clients mp3 collection consists of 100000+ unique files, organized into directories with usable metadata.
  • 30. Page 30 of 31 Copyright © 2007 Captive Design 6. The manufacturing queue is not addressed in this document however it should be noted that a consultation is needed to gauge what the client needs in order to integrate this into a pre-existing manufacturing infrastructure. 7. Assuming that the tables with the data have been designed in a way that supports data integrity (i.e. normalised). 8. Negotiable bearing in mind the actual cost of development. Technological Summary Technology: AJAX enabled ASP.net 2.0 Server Side Scripting Language: C# Client Side Scripting Language: JavaScript Backend Database: SQL Server 2000 Webserver: IIS 6.0 Server Platforms: Windows Server 2003 Web Edition/Enterprise Edition IDE: Visual Studio 2005 Professional Edition Media: Flash 8.0, Photoshop 7.0 Exclusive Permissions The exclusive permissions granted by Chris Morton to First Technology pertaining to the use of this document are: 1. The use of the entire document or part thereof in the compilation of a proposal for First Technology’s client on provision that a reference is made to the Author of this document where applicable. 2. Permission to change and append the document contents provided an original back-up copy is kept (unchanged). 3. Permission to distribute this document either electronically or in printed form internally or to the client. 4. All other rights are reserved. Document Summary File Name: Proposal for Development of Music Distribution Website.doc Author: Chris Morton First Created: 2007/02/22 08:33 PM Last Modified: 2022/03/18 08:32 PM Word Count: 9833 Support Documentation Quotation:
  • 31. Page 31 of 31 Copyright © 2007 Captive Design CDQ284.xls Pro-forma Invoice: CDPI284.xls