Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Project report final
1. BABY SHOPPING is a website in which consumers go through products which are
needed by babies and purchase them over the internet.
Shopping has evolved with the growth of technology. Online shopping widens the
target audience by providing them the facility to shop online and get the products
delivered at the desired address.
The web project “Baby Shopping” is developed exclusively for baby products. An effort has
been made to cover all possible baby products. This web project aims to help customers search
for the desired products and buy them on mouse click. The user can pay for the products
shopped using credit card’s pin number.
Facility is provided for a user to register himself and shop. The web project has important
feature of shopping cart which help customer to collect products and purchase all of them
together. The purchase feature is available only to those customers who are registered with the
website. Also some more features available to the registered customer are
1.1 Search: Customer can search for products based on different categories
1.2 Sell: Customer can sell products
1.3 Buy: He can buy proucts
1.4 Reviews: He can also view reviews about particular product
Before the user is asked to make the payment he is shown the sum total of all the
goods in the cart which gives him an idea as to how much money he would need for
the selected products. After this, he is requested to submit his personal as well as
shipping details to where the products have to be delivered after the payment is
made. This is done because the user is not shopping in a real market but in a virtual
market and the goods have to be delivered to the shipping address provided. This
1
2. also provides the flexibility for the user to select the goods as gifts for someone by
the shipping address to where the package has to be sent.
It includes various categories of baby products like:
• Action toys & figures
• Arts & Crafts
• Discovery & Learning
• Dolls & Soft Toys
• Games & Puzzles
• Collectibles
• Infant & Preschool
• Novelty & Virtual
• Outdoors
The proposed project is a web-based portal .Consumers finds baby products of
interest by visiting the website and searching for it. Searching is made more user
friendly by providing sufficient categories through which the user can select the
required product. Customer is also allowed to select multiple items and pay the total
amount in one go.
A process follows in which payment and delivery information is collected. We
allow consumers to sign up for a permanent online account so that some or all of
this information only needs to be entered once.
2
3. 2.1 Introduction
This document provides details about the entire software requirements specification
for the project Baby Shopping.
2.1.1 Purpose
The purpose of this project is to provide easy shopping facility online and easy
payment options and delivery of products in time. Customers can choose from our
wide range of categories of products.
2.1.2 Scope
The name of the project is Baby Shopping
The software stores details of customer.
The software provides the following facilities to the customers:
Facilitates easy shopping online any where
Provides information about the products in categories
Customers are provided with up to date information on the products available
Enables user to shop for products as gifts for someone.
2.1.3 References
3
5. 2.2 Overall Description
2.2.1. Product Perspective
Baby Shopping is aimed towards the vendors who want to reach out to the
maximum section of customer and common people who can be potential customer.
This project envisages bridging the gap between the retailer and the customer.
This website is totally self contained and works relatively as efficient as other
packages related to the subject. It provides simple database rather than complex
ones for high requirements and it provides good and easy graphical user interface to
new, naive as well as experienced users of the computers.
2.2.1.1. System Interfaces
The software provides good graphical interface for the front end and appropriate
messages to guide the user
2.2.1.2. Hardware Interfaces
1. Monitor to display the pages of products.
2. Keyboard
3. Mouse
2.2.1.3. Software Interfaces
The software requires the support of the following softwares for the database and
other requirements
Microsoft Access for database
Server
NetBeans 6.7.1
5
6. 2.2.1.4. Communication Interfaces
Local intranet
Internet protocols
2.2.1.5. Memory Constraints
At least 1 GB of RAM and
10 GB of hard disk will be required for running the application.
2.2.1.6. Operations
This product will not cover any automated housekeeping aspects of database.
2.2.1.7. Site adaptation requirements
The terminals at client side will have to support the hardware and software
interfaces specified in the above sections.
2.2. User characteristics
No pre knowledge of html
No pre knowledge of database management
Should be familiar with internet
Should know English
Should be able to use and do according to the graphical user interface
2.3. Constraints
The system may become slow due to increased no. of records being stored.
6
7. To host the website a computer with an operating system that can serve as a server
is required.
2.4. Assumptions and Dependencies
The product assumes that the users don’t opt for the same product number
simultaneously
2.5. Specific Requirements
The following screens will be provided
Index Page
It is the starting page of the website. It provides following features:
(i) Login for old users
(ii) Registration for new users
(iii) Categories
(iv) Featured Products
(v) Contacts
Registration Page:
It allows new users to enter their details for being registered.
It asks:
1. Initial Name
2. Final Name
3. Email ID
4. Password
5. Area
6. Age
7. Contact No.
7
8. Login Page
This is a page that opens when user clicks on login.
It asks for:-
1. Email ID
2. Password
Products
This page shows the images of the various products at our website to users.
The name and prices of the products are given.
ViewCart page
This gives the details of the products in the shopping cart.
It provides two options:
1. Back to shopping
2. Purchase
Purchase Page
This page gives the user the total sum of the bill for the items in the shopping cart.
Checkout Page
It seeks the information from the user so as to ship the products purchased by the
user according to the details provided.
It asks for:
1. Name
2. mobile no
3. landline no
4. Address
5. City
8
9. 6. State
7. Country
Details page
It gives the address provided by the user along with the total price.
Payment page
It asks for 16-digit credit card number and the type of credit card for payment.
Search page
The user can search an item on the basis of the category.
SearchedItem page
This page is displayed when a user searches for an item on the search page.
It displays the item under the given category along with name and price.
Sell Page
The user can sell the old products by providing following information:
1. Browsing the image of the product
2. Name of the product
3. Category
4. Expected price
Buy page
The user can also buy the old products submitted by the other users.
Review page
The user can choose any item to give review to share his experience of using this
website or of the product bought.
9
10. Logical Database Requirements:
The following information will be placed in the database.
Login: - initial, finalname, email, pass, area, dob, contact.
Shopping: - name, mobile, landline, address, city, state, country.
Items: - item, category, image, price, id
Review: - id, review, email
10
11. Entity Relationship Diagram:-
The Entity Relationship Diagram (ERD) is the graphical notations of relationship
between different entities and attributes.
The ER diagram for Baby Shopping as follows:-
Figure 3.1. E-R Model showing relationship between Customer and Products:-
Customer
Name
Passwor
Customer Views
Address
Contact
Numbe
Product
Name Price
Category
11
12. Figure 3.2. E-R Model showing relationship between Cart and Transactions:-
Products
Sum Selected
Total
Cart Shoppin
Total
Products
Transaction
Details
Entering
Customer
Details
Contact Name
Numbe
User
Details
Shipping Credit
Card
Address
Details
12
13. Figure 3.3. E-R Model showing relationship between customer and cart:
Search in
Customer logi
categories
give
Product Product
Category Price
Product
Details
Product
Name
Add to
13
Cart
14. Sum Products
Total selected
Total
products
Figure 3.4. Data Flow Diagram for Baby Shopping:
Registration
Login
Customer
enter details
Enter email
id and
Baby password
Search on Shopping
basis of
categories Enter product
name and price
Customer enter
details for Sell
Purchase
shipping products
products
14
15. System testing is an expensive but critical process that can take as much as 50
percent of the budget for program development. The common view of testing held
by users is that it is performed to prove that there are no errors in the program.
Testing is the process of executing a program with the explicit intention of finding
errors that is, making the program fail. A successful test, then, is one that finds an
error.
Test the modules thoroughly- cover all the access paths. Generate enough data to
cover all the access paths arising from conditions.
Test the modules by passing wrong data.
To test the different access paths, look at the conditional statement. Enter some data
in the test file, which would satisfy the condition and again test the script. Repeat
this process many times.
After each test, analyze the log file to ensure proper, understandable and useful
messages are present in the log file.
Test for locking by invoking multiple concurrent processes.
4.1 Types of Testing
TYPES OF TESTING
WHITE BOX TESTING BLACK BOX TESTING
15
16. 4.1.1 WHITE BOX TESTING:
White Box testing which is performed early in the testing process is also called
glass-box testing. Using white box testing, the software engineer can derive test
cases that
Guarantee that all the independent paths within the module have been exercised at
least once.
Exercise all logical decisions on their true and false sides.
Execute all loops at their boundaries and within their operational bounds.
Exercise internal data structure to assure their validity.
4.1.2 BLACK BOX TESTING:
Black box testing is to be applied during later stage of testing. Black box testing
focuses on the functional requirement of the software. Black box testing enables the
software engineer to derive sets of input conditions that will fully exercise the
functional requirement of a program.
Black box testing enables to find error in the following categories:-
Incorrect or missing functions.
Interface errors.
Errors in the data structure or external database access.
Performance errors.
Initialization and termination errors
16
17. 4.2 TEST PLANS (TEST CASE)
1. Login
Test Case stored in database Output
Parul@yahoo.com,parul yes redirects to customer page
Parul@yahoo.com,9876 no is not redirected to customer
page
2. Prepare Bill Page
Test Case Output
All the entries filled up but except one Page is not submitted
One Entry filled others not filled Page is not submitted
Entries filled rest not filled Page is not submitted
3. Customer Shopping cart
Delete item
Test case Output
1. Text field blank, but delete button No item is deleted
Is clicked
2. Item not present in cart is type nothing happens
3. Name Of item present in cart is typed item is deleted and bill amount
is adjusted
17
18. 4. Payment Details
Test Case Output
All the entries filled up but except one Page is not submitted
One Entry filled others not filled Page is not submitted
Entries filled rest not filled Page is not submitted
18
19. Implementation
A crucial phase in the system life cycle is the successful implementation of the new
system design. Implementation includes all those activities that take place to
convert from the old system to the new. The new system may be totally new,
replacing an existing manual or automated system.
In our project implementation is done in following manner
Installation of software: First of all, the files are copied into CD writer. On the disk
also copy Microsoft Access database .Now all the files are copied in a folder on
server. The script is run on the query analyzer and all procedures are copied into
database on server.
Training the Operating Staff: All the users are given demonstration after copying all
the files. In this demonstration all the input variables are taken and project is
executed. After requirement of the user grew we have to amend our software for
before full installation.
Installation of Hardware: The only need is to install proper hardware for the
software. Deploy a server and install the software for proper working of software.
ADVANTAGES
It simplifies the operation.
It avoids a lot of manual work.
Every Transaction is obtained and processed immediately. Avoids errors by
avoiding the manual work.
User friendly screen to enter the data in database tables.
Contact information available.
User can easily access the system without much experience.
Provide Hardware and software securities.
Portable and flexible for further extension.
19
20. RESULT
The system has been implemented and tested successfully. It meets the
requirements specified to the great extent. Although the system has been designed
keeping the Present and future requirements in mind and made very flexible. There
are limitations of the System. Proper consideration has been given for a wide range
of new enhancements proposed in the future, throughout the development of
system. The system is developed user friendly.
20
21. SUMMARY AND CONCLUSION
The central concept of the application is to allow the customer to shop virtually
using
the Internet and allow customers to buy the items and articles of their desire from
the store. This system offers information relevant to the user accessing the
application thus avoiding unnecessary overloading and at the same time
maintaining the security.
The system has been developed for the given condition and is found working
effectively. The developed system is flexible and changes can be made easily
whenever required. Using the facilities and functionalities of .net, the website has
been developed in a neat and simple manner, thereby reducing the operator’s work.
The speed and accuracy are maintained in proper way. The user-friendly nature of
this website developed in Advanced Java is very easy to work with. The results
obtained are satisfactory from the user point of view.
The system is verified with valid as well as invalid data in each manner. The system
is run with an insight into the necessary modifications that may be required in the
future. Hence the system can be maintained successfully.
21
22. REFERENCES
1. Herbert Schildt, The Complete Reference Java 2, 5th edition, ISBN number:
978-0072224207
2. Thinking in Java, by Bruce Eckel, 3rd Ed. ISBN number: 9780131002876
3. http://my.execpc.com/java/java_tutorial.html
4.http://ieeexplore.ieee.org/search/freesrchabstract.jsp?
tp=&arnumber=885952&queryText%3Ddatabase+connectivity+on+java
%26openedRefinements%3D*%26searchField%3DSearch+All
5. http://java.sun.com/j2ee/tutorial/1_3-fcs/doc/Servlets.html
6. http://java.sun.com/j2se/1.5/pdf/generics-tutorial.pdf
22
23. INDEX.JSP
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Baby Shop</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<script language="JavaScript">
<!--
function addItem( name, price )
{
var i = 1;
for( ; getCookieValue( "item" + i ) != "" ; i++ );
document.cookie = "item" + i + "=" + name + "," + price;
document.cookie = "items=" + i;
}
function getCookieValue( name )
{
23
24. var c = document.cookie;
var begin = c.indexOf( name );
if( begin < 0 ) return( "" );
begin += name.length + 1;
var end = c.indexOf( ";", begin );
if( end == -1 ) end = c.length;
return( c.slice( begin, end ) );
}
// -->
</script>
<body onload="slideShow(0)">
<div>
<a href="#"><img src="images/logo.gif" width="237" height="123" class="float"
alt="setalpm" /></a>
<div class="inner_copy"><a href="http://www.greatdirectories.org/">web directories</a>
<a href="http://www.bestfreetemplates.info/">free CSS templates</a></div>
<div class="topnav">
<span><strong>Welcome</strong> <a href="login.jsp">Log
in</a> | <a href="register.jsp">Register</a></span>
</div>
<%
session.setAttribute("emailid","");
session.setAttribute("item","");
session.setAttribute("total","");
%>
<ul id="menu">
24
43. ITEMACTION.JSP
<%@page session="true" contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<jsp:useBean id="data" class="edow.loginbean"/>
<jsp:setProperty name="data" property="*"/>
<script language="JavaScript">
<!--
function addItem( name, price )
{
var i = 1;
for( ; getCookieValue( "item" + i ) != "" ; i++ );
document.cookie = "item" + i + "=" + name + "," + price;
document.cookie = "items=" + i;
}
function getCookieValue( name )
{
var c = document.cookie;
var begin = c.indexOf( name );
if( begin < 0 ) return( "" );
begin += name.length + 1;
var end = c.indexOf( ";", begin );
if( end == -1 ) end = c.length;
return( c.slice( begin, end ) );
43
52. VIEWCART.JSP
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>View Cart</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="style3.css" />
<script language="JavaScript">
<!--
function getCookieValue( name )
{
var c = document.cookie;
var begin = c.indexOf( name );
if( begin < 0 ) return( "" );
begin += name.length + 1;
var end = c.indexOf( ";", begin );
if( end == -1 ) end = c.length;
return( c.slice( begin, end ) );
}
52
53. function removeItem( name )
{
document.cookie = name + "=;";
document.location = document.location;
}
function getItemName( item )
{
var c = getCookieValue( item );
if( c )
{
return( c.split( "," )[0] );
}
else return( "" );
}
function getItemPrice( item )
{
var c = getCookieValue( item );
if( c )
{
return( c.split( "," )[1] );
}
53
56. PURCHASE.JSP
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Store Checkout</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="style3.css" />
<script language="JavaScript">
<!--
var total = 0;
function getCookieValue( name )
{
var c = document.cookie;
var begin = c.indexOf( name );
if( begin < 0 ) return( "" );
begin += name.length + 1;
var end = c.indexOf( ";", begin );
if( end == -1 ) end = c.length;
return( c.slice( begin, end ) );
}
function getItemName( item )
56
57. {
var c = getCookieValue( item );
if( c )
{
return( c.split( "," )[0] );
}
else return( "" );
}
function getItemPrice( item )
{
var c = getCookieValue( item );
if( c )
{
return( c.split( "," )[1] );
}
else return( "" );
}
function fixTotal( n )
{
n *= 100;
var good = parseInt( n );
while( good < n ) good += 1;
return( good / 100 );
}
// -->
</script>
57
58. </head>
<body onload="slideShow(0)">
<div>
<a href="#"><img src="images/logo.gif" width="237" height="123" class="float"
alt="setalpm" /></a>
<div class="topnav">
<span><strong>Welcome</strong> | <a href="index.jsp">Home</a></span>
</div>
<b><font size="10" color=#FF0080>BABY STORE </font></b>
<br>
<font size="6" color=#408080>for all your paraphernalia needs</font><br><br>
<br>
<font size="4" color=#408080>Your Total Bill </font><br><br>
</div>
<form>
<table width="100%" border="2">
<script language="JavaScript">
<!--
for( i = 1 ; i <= parseInt( getCookieValue( "items" ) ) ; i++ )
{
if( getItemName( "item" + i ) != "" &&
getItemPrice( "item" + i ) != undefined )
{
document.write( "<tr><td>" );
document.write( getItemName( "item" + i ) + "</td><td>" );
document.write( getItemPrice( "item" + i ) );
document.write( "</td></tr>" );
58
65. DETAILS.JSP
<%@page session="true" contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<%
int s1=Integer.parseInt(session.getAttribute("item").toString());
if(s1==0){
%>
<script language="JavaScript">
<!--
var total = 0;
function getCookieValue( name )
{
var c = document.cookie;
var begin = c.indexOf( name );
if( begin < 0 ) return( "" );
begin += name.length + 1;
var end = c.indexOf( ";", begin );
if( end == -1 ) end = c.length;
return( c.slice( begin, end ) );
}
65
66. function getItemName( item )
{
var c = getCookieValue( item );
if( c )
{
return( c.split( "," )[0] );
}
else return( "" );
}
function getItemPrice( item )
{
var c = getCookieValue( item );
if( c )
{
return( c.split( "," )[1] );
}
else return( "" );
}
function fixTotal( n )
{
n *= 100;
var good = parseInt( n );
while( good < n ) good += 1;
return( good / 100 );
}
// -->
66
69. <br>
<p>
*Please click on review and confirm to make payement and generate your order.
</p>
</form>
<%}else{%>
<%
try {
/* Create string of connection url within specified format with machine
name, port number and database name. Here machine name id localhost and
database name is student. */
String connectionURL = "jdbc:odbc:perry";
// declare a connection by using Connection interface
Connection connection = null;
/* declare object of Statement interface that is used for executing sql
statements. */
Statement statement = null;
// declare a resultset that uses as a table for output data from tha table.
ResultSet rs = null;
// Load JBBC driver "com.mysql.jdbc.Driver"
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
/* Create a connection by using getConnection() method that takes parameters
of string type connection url, user name and password to connect to database.*/
connection = DriverManager.getConnection(connectionURL, "", "");
/* createStatement() is used for create statement object that is used for
sending sql statements to the specified database. */
69
76. Shipping Address :<%=s3%>
<br><br> <br><br>
<bottom>
Your personal details have been saved with us for future transactions<%=s2%>
</bottom>
<br><br> <br><br>
<bottom>
The order will be delivered at this address within next 48 hours
You have to pay the shipping cost that is 50$ at the time of delivery
</bottom>
</span>
</font>
</div>
</div>
<div id="footer">
<img src="images/cards.jpg" alt="" width="919" height="76" />
</div>
</body>
</html>
76