Sunteți pe pagina 1din 107

MUSIC WORLD

A Mini Project Report Submitted to the Faculty of Computer Science and Engineering JAYAPRAKASH NARAYAN COLLEGE OF ENGINEERING (Affiliated to J.N.T.U., Accredited by N.B.A.) In partial fulfillment of the requirements For the award of degree of BACHELOR OF TECHNOLOGY IN COMPUTER SCIENCE AND ENGINEERING By E.ANUSHA G.MADHURI D.KIRAN KUMAR A.CHANDRAKANTH (08361A0504) (08361A0533) (08361A0532) (08361A0519)

Under the Esteemed Guidance of Mr. M. VENKATA KRISHNA REDDY Assoc. Professor Department of Computer Science and Engineering JAYAPRAKASH NARAYAN COLLEGE OF ENGINEERING DHARMAPUR, MAHABOOBNAGAR 509001 (A.P.) 2011-2012
1

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING JAYAPRAKASH NARAYAN COLLEGE OF ENGINEERING DHARMAPUR, MAHABOOBNAGAR 509001 (A.P.) (Affiliated to J.N.T.U., Accredited by N.B.A.)

CERTIFICATE
This is to Certify that the Mini Project report on MUSIC WORLD is a bonafied work done by E.ANUSHA (08361A0504), G.MADHURI (08361A0533), D.KIRAN KUMAR(08361A0532), A.CHANDRA

KANTH (08361A0519) in partial fulfilment of the requirement of the award for the degree of Bachelors of technology in Computer Science and Engineering J.N.T.U., Hyderabad during the year 2011-2012.

Internal Guide

H.O.D.

Mr. M. VENKATA KRISHNA REDDY Assoc. Professor, Dept of C.S.E.

Prof. D. JAMUNA Professor & Head, Dept of C.S.E.

External Examiner :
2

ACKNOWLEDGEMENT

Success is to be measured not so much by the position that one has reached in life, but as by the obstacles which he had to overcome while trying to succeed.

In many ways it is more difficult to acknowledge ones but I express my deep sense of gratitude to each and every one whose support and cooperation helped me to complete this project successfully and without which the completion of this project would ever have been easier. I hereby take the pleasure of thanking my project guide. I have truly benefited a lot from the constructive criticism and suggestions given to me by MR. M. VENKATA KRISHNA REDDY. Here are some special thanks to MRS. D. JAMUNA.V.KUMAR, Professor & Head of the Department, whose co-operation made this work really special. We are grateful to the Department of Computer Science and Engineering for providing us with the excellent lab and library facilities. I also wish to thanks my parents who always stand by me in my all decisions and without their help it was not possible for me to reach at this place.

E. ANUSHA G. MADHURI D. KIRAN KUMAR A. CHANDRAKANTH

ABSTRACT

Music world is a portal system that aims for the flexibility and growing needs of music lovers. It facilitates an unregistered user to access the basic links of the database and listen to collections, along with facilitating registered users with wide range of functionalities. This system deals with users, who access the database on one end and an administrator, who maintains the database on other end. The existing system is accessible only to the registered users, where few systems charge the registration, and some even charge for accessing the collections. Present portals provide low standards of security for payment transactions which is a major drawback which may lead to misuse of users details. The proposed system provides access to all the users by granting different privileges to registered and unregistered users separately. All the users can listen to collections uncharged whereas only the registered user is provided with wide functionalities of voting, rating, and interaction with the administrator. It facilitates the registered users to maintain their personalized playlist in their account and can buy the collections through shopping cart with high defined standards of security to overcome the feasibilities of the existing system.

CONTENTS
Page No

ACKNOWLEDGEMENT ABSTRACT 1. INTRODUCTION


1.1 About the project
1.1.1 Project Notion 1.1.2 Project Scope 1.1.3 Project Objectives

III IV 1 1 3 4 4 5 5 5 6 6 10 11 25 31 31 35 36 37 38 39 41 41 43 44 50 52 52 56

1.2 Hardware and Software Requirements


1.2.1 Software Requirements 1.2.2 Hardware Requirements

2. TECHNOLOGIES USED
2.1 HTML 2.2 Java Script 2.3 MySQL 2.4 Java Server Pages (JSP)

3. SYSTEM ANALYSIS
3.1 Introduction 3.2 Problem Definition 3.3 Existing System 3.4 Proposed System 3.5 Requirement Analysis/Specification 3.6 Feasibility Studies

4. SYSTEM DESIGN
4.1 Module Description 4.2 Architecture Design
4.2.1 UML Diagrams 4.2.2 Data Flow Diagrams(DFDs)

4.3 Data Base Design


4.3.1 Tables

5. IMPLEMENTATION

6. TESTING
6.1 Testing Objectives 6.2 White Box Testing 6.3 Black Box Testing 6.4 Unit Testing 6.5 Integration Testing 6.6 Validation Testing 6.7 System Testing 6.8 Test Cases

58 58 59 59 59 60 60 60 61 62 91 92

7. SCREENS 8. CONCLUSION 9. BIBLIOGRAPHY

INTRODUCTION

1. INTRODUCTION

1.1 ABOUT THE PROJECT


The system contains two users they are User, and Administrator. Each member has own facilities and has interlinked functionalities. Unregistered user can just view Music Store Portal but cant avail all the facilities when compared to Registered User having. Administrator can add or remove a user. Below are the some Functionalities of User, Registered User and Administrator. Facilities provided to the User for Music Store as listed:  Ability to see Latest Releases of Movies, Albums and Songs.  Ability to give Ratings to Movies or Songs.  Ability to get information of Release Dates of Movies.  Ability to Search Songs by giving name of Song in the Search Box.  Ability to vote for Songs or Movies.  Ability to view information about a Movies or Album. Facilities provided to the Registered User:  Ability to Download Songs.  Ability to keep a Request to Administrator about Songs or Movies.  Ability to view the so far purchased Movies or Albums in Shopping Cart.  Ability to Hear/Download Songs from which he is going to purchase.  Ability to Search Songs and Movies using Search option provided.  Ability to have an opportunity to write a message regarding Movies or Songs.  Ability Buy a Movies or Albums provided in given List.
8

Facilities provided to the Administrator:  Ability to provide request Song or Movies.  Ability to delete user.  Ability to reply to message sent by a particular user.  Ability to see Sales Report According to Daily, Weekly and Monthly Sales.  Ability to view Feedbacks given by Registered User.  Ability to Add New Released Movies or Albums.  Ability to do Different Operation on Database of Music Store.

User can view web pages and just look and hear the songs provided. After that if he is interested then he can register with Music Store and can get username and password of his wish. This process happens at time of registration of user. The registration page contains all necessary details for user to register like personal information, Credit Card information, username and password. After registration user will have his own username and password with which he logins in Music Store. Registered user can keep a request to administrator regarding albums or Movies which he wishes to download or hear songs from that particular movie. Users have search option to search movies by giving name of the movie. User can purchase movies, albums and can add them in shopping cart. The total amount can be paid through Credit Card. The amount will be deducted when customer gets his movies or albums from Music Store. Administrator has the responsible of sending the user purchased movies or album. Administrator has all rights to delete users if they found guilty. Administrator has all the power of controlling the Music Store Portal.

Administrator can update/delete/remove the movies or albums according to circumstances. Administrator has the only opportunity to view sales report based on daily, weekly and monthly.

1.1.1 Project Notion:


To help people quickly and easily find what they're looking for on the Web, and explore the areas that interest them most. The Web is an extraordinary place, but ... for most of us, it also poses a challenge. A good Music Site should be a perfect entertainer for the members those who are passionate about Music and Songs. This Music portal attributes the functionalities that are easy for the users to handle and build up their own music community. Every user expects latest information about movies and albums. If Music album is very nice then user should have chance to purchase that album through online using credit card. They should difference for registered user and a normal user where normal user can just view information about movies and albums but he cant buy or keep a request for administrator. Normal user should not have much facility like registered user. For all this problems we have kept a common platform and designed, developed this Music Portal. After purchasing music albums through online one should have get albums through Music Store Administrator. Administrator should maintain all sales report of Music Albums sold based on daily, weekly and monthly wise. In some Music site where need to register before see any information regarding movies. Here it is avoided. Normal users can view information regarding Movies without registration. User can here through online without downloading the song from Portal. Music Store provides user to listen song from portal itself instead of
10

downloading it. In present Music Portal doesnt have search option for searching song which user wants. Music Store provides users a search option where user can search songs by typing song name in text box provided. Normal user wants to vote for an album. Music Store also provides this facility for users. For registered users we are providing rating facility where user can give rating after hearing the song. After purchasing albums and Movies user can still go for shopping. All purchased Items are stored in shopping cart where it keeps on increasing or decreasing based on choice. All payments are made through credit card where credit card details are taken at the time of registration itself.

1.1.2 Project Scope:


This document is the only one that describes the requirements of the system. It is meant for the use by the developers, and will also be the basis for validating the final delivered system. Any changes made to the requirements in the future will have to go through a formal change approval process. The developer is responsible for asking for clarifications, where necessary, and will not make any alterations without the permission of the client.

1.1.3 Project Objectives:


 Easy to buy music albums using credit card through online.  Latest updates of music albums and songs on music portal.  Easy to use and user friendly operations.  Requests to Administrator for desired music albums.  Download / Listen to songs online.
11

 Administrator can delete/remove/update the music albums.

1.2 HARDWARE AND SOFTWARE REQUIREMENTS 1.2.1 Software Requirements


Operating System Server Side Client Side Services Database Integrated Development Environment : Windows NT/2000 : JSP with Tomcat Server : HTML ,JavaScript : JDBC : My SQL : Net Beans 6.5

1.2.2 Hardware Requirements:


Processor RAM Hard Disk : Pentium IV : 2 GB : 40 GB

12

TECHNOLOGIES USED

13

2. TECHNOLOGIES USED
2.1 HTML
Html is a language which is used to create web pages with html marking up a page to indicate its format, telling the web browser where

you want a new line to begin or how you want text or images aligned and more are possible. We used the following tags in our project.

TABLE:
Tables are so popular with web page authors is that they let you arrange the elements of a web page in such a way that the browser wont rearrange them web page authors frequently use tables to structure web pages. <TR>: <TR> is used to create a row in a table encloses <TH> and <TD> elements. <TR> contain many attributes. Some of them are, ALIGN: specifies the horizontal alignment of the text in the table row. BGCOLOR: Specifies the background color for the row. BORDERCOLOR: Sets the external border color for the row. VALIGN: Sets the vertical alignment of the data in this row.

14

<TH>: <TH> is used to create table heading. ALIGN: Sets the horizontal alignment of the content in the table cell. Sets LEFT, RIGHT, CENTER. BACKGROUND: Species the back ground image for the table cell. BGCOLOR: Specifies the background color of the table cell VALIGN: Sets the vertical alignment of the data. Sets to TOP, MIDDLE, BOTTOM or BASELINE. WIDTH: Specifies the width of the cell. Set to a pixel width or a percentage of the display area.

<TD>: <TD> is used to create table data that appears in the cells of a table. ALIGN: Species the horizontal alignment of content in the table cell. Sets to LEFT, CENTER, RIGHT. BGCOLOR: Specifies the background image for the table cell. BGCOLOR: sets the background color of the table cells. WIDTH: Species the width of the cell.

FRAMES:
Frames are used for either run off the page or display only small slices of what are supposed to be shown and to configure the frame we can
15

use <FRAMESET>.

There are two important points to consider when

working with <FRAMESET>. <FRAMESET> element actually takes the place of the <BODY> element in a document. Specifying actual pixel dimensions for frames . <FRAME> Elements are used to create actual frames. From the frameset point of view dividing the browser into tow vertical frames means creating two columns using the <FRAMESET> elements COLS attribute. The syntax for vertical fragmentation is, <FRAMESET COLS =50%, 50%> </FRAMESET> Similarly if we replace COLS with ROWS then we get horizontal fragmentation. The syntax for horizontal fragmentation is, <FRAMESET ROWS=50%, 50%> </FRAMESET>

FORM:
The purpose of FORM is to create an HTML form; used to enclose HTML controls, like buttons and text fields.  ATTRIBUTES:  ACTION: Gives the URL that will handle the form data.  NAME: Gives the name to the form so you can reference it in code set to an alphanumeric string.
16

 METHOD: method or protocol is used to sending data to the target action URL. The GET method is the default, it is used to send all form name/value pair information in an URL. Using the POST method, the content of the form are encoded as with the GET method, but are sent in environment variables.

CONTROLS IN HTML:
<INPUT TYPE =BUTTON>: Creates an html button in a form. ATTRIBUTES:  NAME: gives the element a name. Set to alphanumeric characters.  SIZE: sets the size.  VALUE: sets the caption of the element. <INPUT TYPE = PASSWORD>: Creates a password text field which makes typed input. ATTRIBUTES:  NAME: gives the element a name, set to alphanumeric characters.  VALUE: sets the default content of the element.

<INPUT TYPE=RADIO>: Creates a radio button in the form. ATTRIBUTE:  NAME: Gives the element a name. Set to alphanumeric character.
17

 VALUE: Sets the default content of the element.

<INPUT TYPE=SUBMIT>: Creates a submit button that the user can click to send data in the form back to the web server. ATTRIBUTES:  NAME: Gives the element a name. Set to alphanumeric characters.  VALUE: Gives this button another label besides the default, Submit Query. Set to alphanumeric characters. <INPUT TYPE=TEXT>: Creates a text field that the user can enter or edit text in. ATTRIBUTES:  NAME: Gives the element a name. Set to alphanumeric characters.  VALUE: Holds the initial text in the text field. Set to alphanumeric characters.

2.2 JAVA SCRIPT


Java script originally supported by Netscape navigator is the most popular web scripting language today. Java script lets you embedded programs right in your web pages and run these programs using the web browser. You place these programs in a <SCRIPT> element, usually with in the <HEAD> element. If you want the script to write directly to the web page, place it in the <BODY> element.

18

JAVASCRIPT METHODS: Writeln: Document.writeln() is a method, which is used to write some text to the current web page. onClick: Occurs when an element is clicked. onLoad: Occurs when the page loads. onMouseDown: Occurs when a mouse button goes down. onMouseMove: Occurs when the mouse moves. onUnload: Occurs when a page is unloaded.

2.3 My SQL
The database has become an integral part of almost every human's life. Without it, many things we do would become very tedious, perhaps impossible tasks. Banks, universities, and libraries are three examples of organizations that depend heavily on some sort of database system. On the Internet, search engines, online shopping, and even the website naming convention (http://www...) would be impossible without the use of a database. A database that is implemented and interfaced on a computer is often termed a database server.
19

One of the fastest SQL (Structured Query Language) database servers currently on the market is the MySQL server. MySQL, available for download, offers the database programmer with an array of options and capabilities rarely seen in other database servers. What's more, MySQL is free of charge for those wishing to use it for private and commercial use. Those wishing to develop applications specifically using MySQL should consult MySQL's licensing section, as there is a charge for licensing the product. These capabilities range across a number of topics, including the following:
  

Ability to handle an unlimited number of simultaneous users. Capacity to handle 50,000,000+ records. Very fast command execution, perhaps the fastest to be found on the market.

Easy and efficient user privilege system.

A database is really nothing more than a hierarchy of increasingly complex data structures. In MySQL, the acknowledged structure for holding blocks (or records) of information is called the table. These records, in turn, are made up of the smallest object that can be manipulated by the user, known as the data type. Together, one or more of these data types form a record. A table holds the collection of records that make up part of the database. We can consider the hierarchy of a database to be that of the following: Database < Table < Record < Datatype Datatypes come in several forms and sizes, allowing the programmer to create tables suited for the scope of the project. The decisions made in
20

choosing proper datatypes greatly influence the performance of a database, so it is wise to have a detailed understanding of these concepts. MySQL Datatypes: MySQL is capable of many of the datatypes that even the novice programmer has probably already been exposed to. Some of the more commonly used include: CHAR (M): CHAR's are used to represent fixed length strings. A CHAR string can range from 1-255 characters. In later table creation, an example CHAR datatype would be declared as follows: Ex: car_model CHAR(10); VARCHAR (M): VARCHAR is a more flexible form of the CHAR data type. It also represents data of type String, yet stores this data in variable length format. Again, VARCHAR can hold 1-255 characters. VARCHAR is usually a wiser choice than CHAR, due to it's variable length format characteristic. Although, keep in mind that CHAR is much faster than VARCHAR, sometimes up to 50%. (A CHAR stores the whole length of the declared variable, regardless of the size of the data contained within, whereas a VARCHAR only stores the length of the data, thus reducing size of the database file.) Ex: car_model VARCHAR(10);

21

INT (M) [Unsigned]: The INT datatype stores integers ranging from -2147483648 to 2147483647. An optional "unsigned" can be denoted with the declaration, modifying the range to be 0 to 4294967295 Ex: light_years INT; Valid integer: '-24567'.

Invalid integer: '3000000000'.

Ex: light_years INT unsigned; Valid integer: '3000000000'. Invalid integer: '-24567'. FLOAT [(M.D)]: A FLOAT represents small decimal numbers, used when a somewhat more precise representation of a number is required. Ex: rainfall FLOAT (4,2); This could be used to represent rainfall average in centimeters per year, which could be a decimal value. More specifically, FLOAT (4,2) states the fact that rainfall can hold up to four characters and two decimal places. Thus, 42.35 is valid, accurately represented. 324.45 is invalid, rounded to 324.5.2.2 is valid, accurately represented. 34.542 is invalid, rounded to 34.54.

22

Note: Due to the fact that FLOAT is rounded, those wishing to represent money values would find it wise to use DECIMAL, a datatype found within MySQL that does not round values. Consult the documentation for a complete explanation. DATE: Stores date related information. The default format is 'YYYY-MMDD', and ranges from '0000-00-00' to '9999-12-31'. MySQL provides a powerful set of date formatting and manipulation commands, too numerous to be covered within this article. However, one can find these functions covered in detail within the MySQL documentation. Ex: the_date DATE; TEXT / BLOB: The text and blob datatypes are used when a string of 255 - 65535 characters is required to be stored. This is useful when one would need to store an article such as the one you are reading. However, there is no end space truncation as with VARCHAR AND CHAR. The only difference between BLOB and TEXT is that TEXT is compared case insensitively, while BLOB is compared case sensitively. SET: A datatype of type string that allows one to choose from a designated set of values, be it one value or several values. One can designate up to 64 values.

23

Ex: transport SET ("truck", "wagon") NOT NULL; From the above declaration, the following values can be held by transport: "truck" "wagon" "truck,wagon" ENUM: A datatype of type string that has the same characteristics as the SET datatype, but only one set of allowed values may be chosen. Usually only takes up one byte of space, thus saving time and space within a table. Ex: transport ENUM ("truck", "wagon") NOT NULL; From the above declaration, the following values can be held by transport: "truck" "wagon" Records: Together, a group of declared datatypes form what is known as a record. A record can be as small as one data variable, or as many as deemed needed. One or more records form the structure of a table.

24

The Bigger Picture Tables: Before we can execute commands on the database, we must first create a table in which data can be stored. This is accomplished in the following manner, mysql> CREATE TABLE test ( > name VARCHAR (15), > email VARCHAR (25), > phone_number INT, > ID INT NOT NULL AUTO_INCREMENT, > PRIMARY KEY (ID)); Ensuing output: Query OK, 0 rows affected (0.10 sec) mysql> The first table in your database has now been created. Note: no two tables can have the same name. Note(2): Each dataspace is more often referred to as a column. Column Characteristics:
  

A name may not be made up of strictly numbers. A name may start with a number. A name may be up to 64 characters.

Other table options: The following options can be placed after any datatype, adding other characteristics and capabilities to them.
25

Primary Key: Used to differentiate one record from another. No two records can have the same primary key. This is obviously useful when it is imperative that no two records are mistaken to be the other.

Auto_Increment:

A column with this function is automatically

incremented one value (previous + 1) when an insertion is made into the record. The datatype is automatically incremented when 'NULL' is inserted into the column.


NOT NULL: Signifies that the column can never be assigned a NULL value.

Ex: soc_sec_number INT PRIMARY KEY; No two soc_sec_number records can hold the same value. ID_NUMBER INT AUTO_INCREMENT; Automatically increments in value, starting at '1', with every subsequent insertion. Table-Relevant Commands: We can execute a number of useful commands pertaining to the tables, such as the following: Show Tables: mysql> show tables; Result: This will list all tables currently existing within the database.

26

Show Columns: mysql> show columns from test; Result: This will return the columns and column information pertaining to the designated table. Take a minute to execute each one of the above commands after you have created the test table. They will prove very helpful as your database increases in size and complexity. You should now have a basic understanding of the creation of tables, one of the most important concepts of the MySQL server. You now know that tables are constructed using datatypes, which when grouped together form a record. In the next section, we will begin learning how to manipulate the database. A database can be manipulated in four possible ways: addition, deletion, modification, and search. These topics will all be briefly covered in the following two sections. However, before we begin, I would like to highlight the fact that SQL, like many computer languages, is somewhat particular about command syntax. The slightest error in placement of a parentheses, comma, or semicolon will almost surely end in error. As a result, take care to be attentive of command syntax.

27

DRIVER MANAGER AND DRIVER: The java.sql package defines an interface called Java.sql.Driver that makes to be implemented by all the JDBC drivers and a class called java.sql.DriverManager that acts as the interface to the database clients for performing tasks like connecting to external resource managers, and setting log streams. When a JDBC client requests the DriverManager to make a connection to an external resource manager, it delegates the task to an approate driver class implemented by the JDBC driver provided either by the resource manager vendor or a third party. JAVA.SQL.DRIVERMANAGER: The primary task of the class driver manager is to manage the various JDBC drivers register. It also provides methods for:  Getting connections to the databases.  Managing JDBC logs.  Setting login timeout.

28

MANAGING DRIVERS: JDBC clients specify the JDBC URL when they request a

connection. The driver manager can find a driver that matches the request URL from the list of register drivers and delegate the connection request to that driver if it finds a match JDBC URLs normally take the following format: <protocol>:<sub-protocol>:<resource> The protocol is always jdbc and the sub-protocol and resource depend on the type of resource manager. The URL for postgreSQL is in the format: Jdbc: postgres ://< host> :< port>/<database> Here host is the host address on which post master is running and database is the name of the database to which the client wishes to connect. MANAGING CONNECTION: DriverManager class is responsible for managing connections to the databases: public static Connection getConnection (String url,Properties info) throws SQLException This method gets a connection to the database by the specified JDBC URL using the specified username and password. This method throws an instance of SQLException if a database access error occurs. CONNECTIONS: The interface java.sql.Connection defines the methods required for a persistent connection to the database. The JDBC driver vendor implements this interface. A database vendor-neutral client never uses the implementation class and will always use only the interface. This interface defines methods for the following tasks:
29

 Statements, prepared statements, and callable statements are the different types of statements for issuing sql statements to the database by the JDBC clients.  For getting and setting auto-commit mode.  Getting meta information about the database.  Committing and rolling back transactions. CREATING STATEMENTS: The interface java.sql.Connection defines a set of methods for creating database statements. Database statements are used for sending SQL statements to the database: Public Statement createStatement () throws SQLException This method is used for creating instances of the interface java.sql.Statement. This interface can be used for sending SQL statements to the database. The interface java.sql.Statement is normally used for sending SQL statements that dont take any arguments. This method throws an instance of SQLException if database access errors occur: Public Statement createStatement (int resType, int resConcurrency) throws SQLException JDBC RESULTSETS: A JDBC resultset represents a two dimentional array of data produced as a result of executing SQL SELECT statements against databases using JDBC statements. JDBC resultsets are represented by the interface java.sql.ResultSet. The JDBC vendor provider provides the implementation class for this interface.

30

SCROLLING RESULTSETS: public boolean next() throws SQLException public boolean previous() throws SQLException public boolean first() throws SQLException public boolean last() throws SQLException

31

ACCESSING RESULTSET DATA:

Method name and Purpose public boolean getBoolean (int i) Gets the data in the specified column as a boolean. public boolean getBoolean (String col) public int getInt(int I) Gets the data in the specied columnas an int. public int getInt (String col) public String getString (int I) Gets the data in the specied column a string. Public String getString (String col) STATEMENT: The interface java.sql.Stament is normally used for sending SQL statements that do not have IN or OUT parameters. The JDBC driver vendor provides the implementation class for this interface. The common methods required by the different JDBC statements are defined in this interface. The methods defined by java.sql. Statement can be broadly categorized as follows:  Executing SQL statements  Querying results and resultsets  Handling SQL batches  Other miscellaneous methods

32

The interface java.sql.statements defines methods for executing different SQL statements like SELECT, UPDATE, INSERT, DELETE, and CREATE. Public Resultset execute Query (string sql) throws SQLException The following figure shows how the DriverManager, Driver, Connection, Statement, ResultSet classes are connected.
DriverManager

Driver Layer Application

Driver

Connection Layer

Prepared Statement

Statement

Callable Statement

Result Set

Result Set

Result Set

2.4 JAVA SERVER PAGES (JSP)


Introduction: Java Server Pages (JSP) technology enables you to mix regular, static HTML with dynamically generated content. You simply write the regular HTML in the normal manner, using familiar Web-page-building tools. You then enclose the code for the dynamic parts in special tags, most of which start with <% and end with %>.

33

The need for JSP: Servlets are indeed useful, and JSP by no means makes them obsolete. However,  It is hard to write and maintain the HTML.  You cannot use standard HTML tools.  The HTML is inaccessible to non-Java developers. Benefits of JSP: JSP provides the following benefits over servlets alone:  It is easier to write and maintain the HTML: In this no extra backslashes, no double quotes, and no lurking Java syntax.  You can use standard Web-site development tools: We use Macromedia Dreamweaver for most of the JSP pages. Even HTML tools that know nothing about JSP can use because they simply ignore the JSP tags.  You can divide up your development team: The Java programmers can work on the dynamic code. The Web developers can concatenate on the representation layer. On large projects, this division is very important. Depending on the size of your team and the complexity of your project, you can enforce a weaker or stronger separation between the static HTML and the dynamic content. Creating template text: A large percentage of our JSP document consists of static text known as template text. In almost all respects, this HTML looks just likes normal HTML follows all the same syntax rules, and simply passed through to that client by the servlet created to handle the page. Not only does the HTML look normal, it can be created by whatever tools you already are using for building Web pages.

34

There are two minor exceptions to the template text passed through rule. First, if you want to have <% 0r %> in the out port, you need to put <\% or %\> in the template text. Second, if you want a common to appear in the JSP page but not in the resultant document, <%-- JSP Comment -- %> HTML comments of the form: <!HTML Comment --> are passed through to the client normally. Types of JSP scripting elements: JSP scripting elements allow you to insert Java code into the servlet that will be generated from the JSP page. There are three forms: 1. Expressions of the form <%=Java Expression %>, which are evaluated and inserted into the servlets output. 2. Scriptlets of the form <%Java code %>, which are inserted into the servlets_jspService method (called by service). 3. Declarations of the form<%! Field/Method Declaration %>, which are inserted into the body of the servlet class, outside any existing methods. Using JSP expressions: A JSP element is used to insert values directly into the output. It has the following form: <%= Java Expression %> The expression is evaluated, converted to a string, and inserted in the page. This evaluation is performed at runtime (when the page is requested) and thus has full access to the information about the request. For example, the following shows the date/time that the page was requested. Current time: <%=new java.util.Date () %>

35

Predefined variables: To simplify expressions we can use a number of predefined variables (or implicit objects). The specialty of these variables is that, the system simple tells what names it will use for the local variables in _jspService.The most important ones of these are:  request, the HttpServletRequest.  response, the HttpServletResponse.  session, the HttpSession associated with the request  out, the writer used to send output to clients.  application, the ServletContext. This is a data structure shared by all servlets and JSP pages in the web application and is good for storing shared data. Here is an example:Your hostname: <%= request.getRemoteHost Comparing Servlets to JSP pages: JSP works best when the structure of the HTML page is fixed but the values at various places need to be computed dynamically. If the structure of the page is dynamic, JSP is less beneficial. Some times servlets are better in such a case. If the page consists of binary data or has little static content, servlets are clearly superior. Sometimes the answer is neither servlets nor JSP alone, but rather a combination of both. Writing Scriplets: If you want to do something more complex than output the value of a simple expression .JSP scriptlets let you insert arbitrary code into the servlets , jspService method. Scriptlets have the following form: Java code %> <%

36

Scriptlets have access to the same automatically defined variables as do expressions (request, response, session, out , etc ) .So for example you want to explicitly send output of the resultant page , you could use the out variable , as in the following example: <% String queryData = request.getQueryString (); out.println (Attached GET data: + queryData); %> Scriplet Example: As an example of code that is too complex for a JSP expression alone, a JSP page that uses the bgColor request parameter to set the background color of the page .Simply using <BODY BGCOLOR=<%= request.getParameter (bgcolor) %> > would violate the cardinal rule of reading form data. Using declarations: A JSP declaration lets you define methods or fields that get inserted into the main body of the servlet class .A declaration has the following form: <%! Field or Method Definition %> Since declarations do not generate output, they are normally used in conjunction with JSP expressions or scriptlets. In principle, JSP declarations can contain field (instance variable) definitions, method definitions, inner class definitions, or even static initializer blocks: anything that is legal to put inside a class definition but outside any existing methods. In practice declarations almost always contain field or method definitions.

37

We should not use JSP declarations to override the standard servlet life cycle methods. The servlet into which the JSP page gets translated already makes use of these methods. There is no need for declarations to gain access to service, doget, or dopost, since calls to service are automatically dispatched to _jspService , which is where code resulting from expressions and scriptlets is put. However for initialization and cleanup, we can use jspInit and jspDestroy- the standard init and destroy methods are guaranteed to call these methods in the servlets that come from JSP.

38

SYSTEM ANALYSIS

39

3. SYSTEM ANALYSIS
3.1 INTRODUCTION
Software engineering is an outgrowth of hardware and System engineering. To solve actual problems in industry setting a software engineer or a team of engineers must incorporate a development strategy that encompasses the process methods and tool layers. This strategy often refereed as a process model or software engineering paradigm. A process model, a paradigm for software is chosen based on the nature of the project and application. Generally there will be five phases.  Analysis  Design  Coding  Testing  Maintenance The various software engineering models are, 1. Linear sequential model. 2. Prototype model. 3. The RAD model. 4. Evolutionary software model. 5. Formal methods model. 6. Fourth generation techniques.

40

Linear Sequential Model: This model sometimes called as waterfall model, the life cycle paradigm demands a systematic, sequential, approach to software development that begins at the system level and progresses through analysis, design, coding, testing and maintenance. Model of Prototyping: Prototyping an application system is basically a four-step process as described below. There are two significant roles the user and system designer roles. Step l: Identify the users basic information requirements. In this stage the user particulates his or her basic needs in terms of output from the system. The designers responsibility to establish realistic user expectations and to estimate the cost of developing an operational prototype. The date elements are defined and their availability determined. Step2: Developing the initial developing system. The objective of this step is to build a functional interactive application system that meets the users basic stated information requirements. The system designer has the responsibility for building the system using very high development tools. The early prototype is delivered to the user to assess the capability and further development. Step3: Use of the prototype system to define the user requirements. This step allows users to gain hands-on experience with the system in order to understand his/her information needs and what the system does and

41

does not do to meet those needs. The user rather than the designer decide when changes are necessary and thus controls the overall development time. Fourth Generation Techniques: The term "fourth generation techniques" encompasses broad array of tools that have one thing in common. Each enables the software engineer to specify some characteristics of software at high level. The tool then automatically generates source based on developer specification. It focus on the ability to software using specialized language forms or a graphic notion that describes the problem to be solved in terms of that the customer can understand. The current 4GT tools: nonprocedural languages for database query report generation, data manipulation, screen interaction and definition code generation, and high-level graphics capability. The use of 4Gt has broadened considerable over the past decade and is now a variable approach for many different application areas. 4GT offer solutions to various problems by using computer aided software engineering tool and code generators. Data collected from the companies who are using 4GT indicates the time required to produce software is greatly reduced for small and intermediate applications. DETAILS: Study phase: The study phase is the phase during which identified, alternative solutions are studied and other recommendations are made about committing the personal, money other resources required to design this system. The
42

activities in this phase include the investigation of the problem, the determination of the desired system performance, the identification and evaluation of activities is it selects the most cost-effective system. A study phase report is prepared and this system is recommended to the user or users of the system as most feasible solution to the problem. The first step in this phase is the problem identification. The second step is performance definition. This means determining what the usable outputs of the system may be. The third step in selecting a system is to identify possible system that might solve the problem and to select one of these. We call the possible solutions as alternatives and we call the process of selecting the most cost-effective alternative as a feasible solution. Design phase: The Detailed Design of the system selected in the study phase takes place during the design phase. System design starts by reviewing the study phase activities and making final decisions about which functions are to be performed by hardware, software or humans. In this phase the output, input and the data base storage designs are completed for each of the computer programs. The design phase recommendations are presented to the user in a report. To perform these activities the expected time duration is again fifteen to twenty days. The logical design shows how the system meets the requirements. This may take a minimum of ten days. Here the data stores, data sources etc should be identified, and the physical design showing the development of actual program software may take another ten days. Development phase:

43

In the development phase, the system is constructed to fulfill the requirements outlined in the design phase. Development phase activities include preparing manuals and training employees, writing and testing computer programs are a part. At the conclusion of the development phase, the system is ready to be put into use. This phase concludes with a presentation of the complete system for acceptance by the user, at management review meeting. The whole of the development may take one month. To actually write the chosen language, which takes at least ten days, preparing manuals etc. take five to eight days, finally the testing of the computer programs may take ten more days. Operation phase: The operation phase is period during which the system is used. Activities include changing over the new system, monitoring the system's performance, and establishing procedures for making modifications or changes in the system. This phase continues for the rest of system's usefulness life. The implementation and evaluation may take three months at least.

3.2 PROBLEM DEFINITION


Every user expects latest information about movies and albums. If Music album is very nice then user should have chance to purchase that album through online using credit card. They should difference for registered user and a normal user where normal user can just view information about movies and albums but he cant buy or keep a request for administrator. Normal user should not have much facility like registered user. For all this problems we have kept a common platform and designed, developed this Music Portal.

44

After purchasing music albums through online one should have get albums through Music Store Administrator. Administrator should maintain all sales report of Music Albums sold based on daily, weekly and monthly wise. In some Music site where need to register before see any information regarding movies. Here it is avoided. Normal users can view information regarding Movies without registration. User can here through online without downloading the song from Portal. Music Store provides user to listen song from portal itself instead of downloading it. In present Music Portal doesnt have search option for searching song which user wants. Music Store provides users a search option where user can search songs by typing song name in text box provided. Normal user wants to vote for an album. Music Store also provides this facility for users. For registered users we are providing rating facility where user can give rating after hearing the song. After purchasing albums and Movies user can still go for shopping. All purchased Items are stored in shopping cart where it keeps on increasing or decreasing based on choice. All payments are made through credit card where credit card details are taken at the time of registration itself.

3.3 EXISTING SYSTEM


The first step of preliminary study in the system analysis process involves the identification of needs for Music Portal. The motivation behind this project is to overcome all the defects in the existing Music Portal. Some of the difficulties are,  Registration is compulsory for user to view information about movies/albums.
45

 No Search option for user where he want to search for desired Albums.  Purchasing of albums through credit card.  Delay of updating of the music albums released.

Need for Music Portal: To help people quickly and easily find what they're looking for on the Web, and explore the areas that interest them most. The Web is an extraordinary place, but ... for most of us, it also poses a challenge. A good Music Site should be a perfect entertainer for the members those who are passionate about Music and Songs. This Music portal attributes the functionalities that are easy for the users to handle and build up their own music community.

3.4 PROPOSED SYSTEM


Music Store is specially designed for those users who want free resources from a particular Music Portal. This Music portal is for all ages not just a particular age group people. Music Store is designed by young intellectuals with all latest softwares used to give more comparing looks with other Music Portals. Some of the features of the proposed system are:  Resources such as music albums and songs should be freely available without any obstructions.  New look and feel in music portal with advance option such as search.  For all age groups, not for particular age group.  Easy to buy music albums using credit card through online.
46

 Latest updates of music albums and songs on music portal.  Easy to use and user friendly operations.  Requests to Administrator for desired music albums.  Download / Listen to songs online.  Administrator should have all control of Music Portal.  Administrator should update/delete/remove music album based the users interests.  Music Portal should have all related information such as price, etc., of Movies.

3.5 REQUIREMENT ANALYSIS/SPECIFICATIONS


Software Requirement Specification (SRS) is the starting point of the software developing activity. As system grew more complex it became evident that the goal of the entire system cannot be easily comprehended. Hence the need for the requirement phase arose. The software project is initiated by the client needs. The SRS is the means of translating the ideas of the minds of clients (the input) into a formal document (the output of the requirement phase). The SRS phase consists of two basic activities: Requirement Analysis: The process is order and more nebulous of the two, deals with understand the problem, the goal and constraints. Requirement Specification:

47

Here, the focus is on specifying what has been found giving analysis such as representation, specification languages and tools, and checking the specifications are addressed during this activity. The Requirement phase terminates with the production of the validate SRS document. Producing the SRS document is the basic goal of this phase. Role of SRS: The purpose of the Software Requirement Specification is to reduce the communication gap between the clients and the developers. Software Requirement Specification is the medium though which the client and user needs are accurately specified. It forms the basis of software development. A good SRS should satisfy all the parties involved in the system.

3.6 FEASIBILITY STUDIES


The next step in analysis is to verify the feasibility of the proposed system. All projects are feasible given unlimited resources and infinite time. But in reality both resources and time are scarce. Project should confirm to time bounce and should be optimal in there consumption of resources. This place a constant is approval of any project. Feasibility has applied to Music Store pertains to the following areas: Technical feasibility Operational feasibility Economical feasibility

48

3.6.1 TECHNICAL FEASIBILITY: To determine whether the proposed system is technically feasible, we should take into consideration the technical issues involved behind the system. Music Store uses the web technologies, which is rampantly employed these days worldwide. The world without the web is incomprehensible today. That goes to proposed system is technically feasible. 3.6.2 OPERATIONAL FEASIBILITY: To determine the operational feasibility of the system we should take into consideration the awareness level of the users. This system is operational feasible since the users are familiar with the technologies and hence there is no need to gear up the personnel to use system. Also the system is very friendly and to use. 3.6.3 ECONOMIC FEASIBILITY To decide whether a project is economically feasible, we have to consider various factors as: Cost benefit analysis Long-term returns Maintenance costs

The proposed Music Store is computer based. It requires average computing capabilities and access to internet, which are very basic requirements and can be afforded by any organization hence it doesnt incur additional economic overheads, which renders the system economically feasible.
49

DESIGN

50

4. SYSTEM DESIGN
Design is concerned with identifying system components, specifying relationships among components. The detailed design of the system selected in the study phase takes place during the design phase. Design is essentially a blue print or it acts as a bridge between the requirement specification and the final solution for satisfying the requirements. Our system design starts by reviewing the study phase activities and making final decisions about which functions are to be performed by hardware, software or humans. In this phase the output, input and the data base storage designs are completed for each of the computer programs. Here we presented the design phase recommendations to the user in a report. Based on the work-flow described above we can draw the following conclusions for the Software System that has to be developed. The System needs to be a web-based system, so that it allows to connect different databases. It allows to access different databases using same console. We submit SQL statements and view results. It allows to perform various operations on database object (selected Database). It facilitates to export and import a file.

4.1 MODULE DESCRIPTION


Music world consists of three modules they are, 1. Security Module. 2. Album Managing Module. 3. Audio Streaming Module.
51

Security Module: This security module plays a vital role. We can provide security to users, through id and password. So that it prevents the user from viewing the unauthorized information. Users without proper Username and Password will not have permissions to enter the site. Security module deals with all User Authentication and Authorization process. User can register with the Music Portal and can become a Registered User. Album Managing Module: An administrator has rights to update, delete/modify the albums. Administrator will arrange all albums into the different categories like old albums, latest releases, remixes, top composers list, coming soon albums and also lyrics. He can maintain quotations .To increase the sales administrator can also give discounts to the albums. Albums updating is done by Administrator himself based on User requests. Administrator has whole rights of Update/Delete/Remove of either Albums or Movies currently present in Music Store Music Portals. Administrator controls all Album Managements. Audio Streaming Module: In this module the audio/video files are regularly uploaded/ updated by the administrator of the site. The user can play the audio/video songs directly from the site. This module ensures that the file is uploaded to the server and is available to sale or play on the site. All this modules are interlinked with each other. User without any registration can view the site and access it. For registered users Music Store is providing different facilities like keeping request to administrator for
52

more movies and albums. Interested users can login with Music Store and fill up all details which are required for registration. The registration page contains all details which need to be filling up by user.

4.2 ARCHITECTURE DESIGN


The design process translates requirements into a representation of the software that can be assessed for quality before code generation begins. Like requirements the design is documented and becomes part of the software configuration. Design of software involves conceiving planning out and specifying the externally observable characteristics of the software product. We have data design, architectural design and user interface design in the design process. These are explained in the following section. The goals of design process it to provide a blue print for implementation, testing, and maintenance activities.

53

4.2.1 UML Diagrams: Class Diagram:

user username id password view() select() address() send() * * 1

administrator username id password add() modify() delete() show()

* album no of songs album name rating of album view album() select album() purchase() download album() llistenng sample song() * *

song name singer listen() ratesong() feedback()

54

Usecase Diagrams: User:

listening samplesong

register

login

selectingalbum user

download sample song

buying albums

gives feedback

logout

55

Administrator:

login

update new songs

administrator

checking address of user

checks users rating

sending albums to the requested users

collecting bill amount

logout

56

Sequence Diagrams: User:

::User login

::Application

::Database

request for user

retriv ing user details user validation login /inv alid user

view album selecting album hearing sample song request for sample song

download samplesong purchase album request for user address confirmation of purchase sending of user address

logout logout successfully

57

Administrator:

::Administrator login

::Application

::Database

request for user details

retriving user details

user validation checking user valid /not

update new songs

checks address of user response for user address

checks user rating

sending albums to the user

collecting bill

logout

58

Collaboration Diagrams: User:


1: login 6: view album 7: selecting album 8: hearing sample song 9: request for sample song 12: purchase album 16: logout ::User 5: login /invalid user 11: download samplesong 15: confirmation of purchase 17: logout successfully 3: retriving user details 14: sending of user address 4: user validation 10:

::Applicati on

13: request for user address

2: request for user ::Databas e

Administrator:
1: login 6: update new songs 7: checks address of user 9: checks user rating 10: sending albums to the user 11: collecting bill 4: user validation 8: response for user address

::Administra tor

5: checking user valid /not 12: logout

::Applicati on

3: retriving user details

2: request for user details

::Databas e

59

4.2.2 Data Flow Diagrams:

60

61

4.3 DATABASE DESIGN


4.3.1 Tables:

USER INFO: USER_NAME FIRST_NAME MIDDLE_NAME LAST_NAME DATE_OF_BIRTH E_MAIL ADDRESS_LINE1 ADDRESS_LINE2 CITY STATE REQUEST_ID CREDIT_CARD varchar(50) varchar(50) varchar(50) varchar(50) datetime varchar(50) varchar(50) varchar(50) varchar(50) varchar(50) smallint(6) varchar(50)

CREDIT_CARD_TYPE varchar(50)

62

BILL INFO: USER_NAME CREDIT_CARD varchar(50) varchar(50)

CREDIT_CARD_TYPE varchar(50) AMOUNT float

FEEDBACK MASTER: USER_NAME varchar(50) MESSAGE MSG_DATE varchar(50) Datetime

ITEM MASTER: TITLE RATE ITEM_DESC SINGER QTY_ON_HAND TYPE RELEASE_DATE ITEM_CODE varchar(50) int(11) varchar(50) varchar(50) int(11) varchar(50) Datetime varchar(50)

NO_OF_TRACKS int(11)

63

LOGIN INFO: USER_NAME PASSWORD varchar(50) varchar(50)

SECRET_QUESTION varchar(50) SECRET_ANSWER ROLE varchar(50) varchar(50)

REPLY INFO: REPLY_DATE REPLY_MSG datetime varchar(50)

REPLY_USER_NAME varchar(50)

SALES INFO: SALE_DATE ITEM_CODE SALE_QTY RATE Datetime varchar(50) int(11) int(11)

USER_NAME varchar(50)

64

TRACK MASTER: Field ITEM_CODE TRACK_NAME RATING TRACKLOCATION LYRICS TRACKCODE Type varchar(50) varchar(50) int(11) varchar(50) varchar(50) int(11)

NO_OF_USERS_RATED int(11)

VOTE INFO: ITEM_CODE varchar(50)

NUMBER_VOTES int(11)

WISH LIST: Field Type

USER_NAME varchar(50) ITEM_CODE QTY WISH_DATE varchar(50) int(11) Datetime

65

IMPLEMENTATION

66

5. IMPLEMENTATION

The implementation phase is the period during which the system is used. The major activities in this phase are:  Complete conversion  Operate system  Evaluate system performance  Maintain system and manage changes Usually, this phase is the longest of all the life cycle phases and is characterized by four distinct changes. Initially, the new system must be introduced into the business activity stream. This state is called changeover. The changeover transaction may take weeks or even months. After it is completed, the system enters the operation and routine maintenance stage. Early in this stage, the evaluation should be made based on performance measurements that determine whether the specific benefits claimed for the system have been achieved. Finally, the new system, all operational systems, must be able to accommodate change. Change is perhaps the most important stage in the life of computer-based system. The principle activities and documents that characterize the stages of the implementation phase are:  System changeover  Routine operation  System performance evaluation  System change

67

 Run the source code in Net beans IDE using Tomcat server.  Select the required option from the music world home page.  New users can register through online registration form.  Registered users need to login from login page to access the database.  Every user can maintain his personalised collection in the database which makes them access the required songs easily through wish list.  Required collection can be found by searching with appropriate key word.  Selected collections through database provide flexibility of listening, voting, rating, commenting and downloading them.  Registered users can place a request to administrators for providing the required unfound collections.  A user can view the top rated list directly from homepage through top rated hyperlink.  A user can buy required collections through shopping cart page and can clarify queries by messaging administrator.  Through logout page a user can logoff from his account.  An administrator can manage the database by uploading, managing, deleting the tracks and users (if not logged in for more than 90 days).  An administrator can view the sales report and analyse the report when required and can reply customers queries.  An administrator has a flexibility to add and remove collections from shopping cart by managing shopping cart.

68

TESTING

69

6. TESTING
Software testing is a critical element of software quality assurance and represents the ultimate review of specification, design and code generation.

6.1 TESTING OBJECTIVES:


 To ensure that during operation the system will perform as per specification.  TO make sure that system meets the user requirements during operation.  To make sure that during the operation, incorrect input, processing and output will be detected.  To see that when correct inputs are fed to the system the outputs are correct.  To verify that the controls incorporated in the same system as intended.  Testing is a process of executing a program with the intent of finding an error.  A good test case is one that has a high probability of finding an as yet undiscovered error.

The software developed has been tested successfully using the following testing strategies and any errors that are encountered are corrected and again the part of the program or the procedure or function is put to testing until all the errors are removed. A successful test is one that uncovers an as yet undiscovered error.
70

Note that the result of the system testing will prove that the system is working correctly. It will give confidence to system designer, users of the system & prevent frustration during implementation process etc.

6.2 WHITE BOX TESTING:


White box testing is a testing case design method that uses the control structure of the procedure design to derive test cases. All independents path in a module are exercised at least once, all logical decisions are exercised at once, execute all loops at boundaries and within their operational bounds exercise internal data structure to ensure their validity. Here the customer is given three chances to enter a valid choice out of the given menu. After which the control exits the current menu.

6.3 BLACK BOX TESTING:


Black Box Testing attempts to find errors in following areas or categories, incorrect or missing functions, interface error, errors in data structures, performance error and initialization and termination error. Here all the input data must match the data type to become a valid entry.

6.4 UNIT TESTING:


Unit testing is essentially for the verification of the code produced during the coding phase and the goal is test the internal logic of the module/program. In the Generic code project, the unit testing is done during coding phase of data entry forms whether the functions are working properly or not. In this phase all the drivers are tested they are rightly connected or not.

71

6.5 INTEGRATION TESTING:


All the tested modules are combined into sub systems, which are then tested. The goal is to see if the modules are properly integrated, and the emphasis being on the testing interfaces between the modules. In the generic code integration testing is done mainly on table creation module and insertion module.

6.6 VALIDATION TESTING:


This testing concentrates on confirming that the software is error-free in all respects. All the specified validations are verified and the software is subjected to hard-core testing. It also aims at determining the degree of deviation that exists in the software designed from the specification; they are listed out and are corrected.

6.7 SYSTEM TESTING:


This testing is a series of different tests whose primary is to fully exercise the computer-based system. This involves:  Implementing the system in a simulated production environment and testing it.  Introducing errors and testing for error handling.

72

6.8 TEST CASES:


TEST CASE 1: Test case for Login form: When a user tries to login by submitting an incorrect ID or an incorrect Password USER NAME. TEST CASE 2: Test case for User Registration form: When a user enters user id to register and ID already exists, then this result in displaying error message USER ID ALREADY EXISTS. TEST CASE 3: Test case for Change Password: When the old password does not match with the new password, then it results in displaying an error message as OLD PASSWORD DOES NOT MATCH WITH THE NEW PASSWORD. Test case for Forget Password: When a user forgets his password he is asked to enter Login name, ZIP code, Mobile number. If these are matched with the already stored ones then user will get his Original password. TEST CASE 4: Validation cases: If any data field which accept the data from the user are not filled then the corresponding error messages are generated.
73

then it displays an error message NOT A VALID

SCREEN LAYOUTS

74

7. SCREENS

Screen 7.1: Home page

75

Screen 7.2: Registration

76

Screen 7.3: Login Page

77

Screen 7.4: User Home Page

78

Screen 7.5: Chart Toppers

79

Screen 7.6: Search Page

80

Screen 7.7: Search Results Page

81

Screen 7.8: Voting Page

82

Screen 7.9: View Tracks

83

Screen 7.10: View Rating Page

84

Screen 7.11: Rating Page

85

Screen 7.12: New Releases

86

Screen 7.13: Wish List Page for User

87

Screen 7.14: Feedback Page

88

Screen 7.15: Buy Page

89

Screen 7.16: Shopping Cart

90

Screen 7.17: Adding Item to Shopping Cart

91

Screen 7.18: Administrator Home Page

92

Screen 7.19: User Deletion

93

Screen 7.20: Add New Item

94

Screen 7.21: Modifying the Existing Item

95

Screen 7.22: Admin Upload New Songs to Portal

96

Screen 7.23 View Sales Report

97

Screen 7.24: Admin View User Wish List

98

Screen 7.25: Admin View User Messages

99

Screen 7.26: Admin Reply to User Messages

100

Screen 7.27: Admin View Billing Information

101

Screen 7.28: Change Password

102

Screen 7.29: Logout Page

103

CONCLUSIONS

104

8. CONCLUSION

The MUSIC WORLD project has been successfully completed. The goal of the system is achieved and the problems are solved. This project is developed in this manner that is user friendly and required help is provided at different levels. The primary objective is to provide the interactive service to all the Users. Different types of services are provided to both the admin and users. User can avail this service any time. We can make further enhancements in this project, in the present system uploading and deleting of the songs from the music portal can be done only by the administrator. For future enhancement we have to give these permissions to registered users also. In order to provide security to the portal only uploading permissions are given to the user, but he cant delete the songs. So users can also upload the songs into the portal. Users can delete the songs that are uploaded by them only. They cant delete the songs uploaded by the administrator and other users. And every user can listen, view and download the songs uploaded by any one.

105

BIBLIOGRAPHY

106

9. BIBLIOGRAPHY

1. Advanced Java Programming 2. Mastering JAVA 2 3. Java Server Programming 4. Software Engineering 5. Anlysis & Design of InformationSystems

- Dietel and Dietel - John Zukowski - Apress - Roger Pressman - Senn

WEBSITES: 1. www.eci.gov.in 2. www.google.com 3. www.apeci.com 4. www.askjeeves.com

107

S-ar putea să vă placă și