SlideShare a Scribd company logo
1 of 83
Download to read offline
A
Project Report
On
ONLINE ELECTRONIC SHOPPING
Submitted
In partial fulfillment of requirements for the degree of
Bachelor of Technology
In
Computer Science & Engineering
Submitted by
ABHISHEK SINGH CHAUHAN (1474810001)
AMIT KUMAR VERMA (1474810003)
ARNIKA GUPTA (1474810009)
KULENDRA SINGH YADAV (1474810013)
Under the supervision of
Mr. CHANDRABHAN SINGH
(HEAD OF DEPARTMENT)
Department of Computer Science & Engineering
Dr. A.P.J. Abdul Kalam Technical University, Lucknow
April 2018
i
Contents
DECLARATION .................................................................................................................................................. III
CERTIFICATE ..................................................................................................................................................... IV
ACKNOWLEDGEMENT ..................................................................................................................................... V
ABSTRACT ......................................................................................................................................................... VI
LIST OF FIGURES ............................................................................................................................................. VII
LIST OF SNAPSHOTS ..................................................................................................................................... VIII
LIST OF ABBREVIATIONS .............................................................................................................................. IX
CHAPTER 1 (INTRODUCTION) ...................................................................................................................... 1
CHAPTER 2 ( PROJECT OVERVIEW).......................................................................................................... 2
CHAPTER 3 (SYSTEM STUDY) ....................................................................................................................... 3
3.1 EXISTING SYSTEM ............................................................................................................................................. 3
3.2 DRAWBACKS IN THE EXISTING SYSTEMS............................................................................................................ 3
CHAPTER 4 (SYSTEM ANALYSIS)................................................................................................................. 4
4.1 PURPOSE............................................................................................................................................................ 4
4.2 SCOPE................................................................................................................................................................ 4
4.3 NEED FOR THE PROPOSED SYSTEM:.................................................................................................................... 4
4.4 FEASIBILITY STUDY:.......................................................................................................................................... 5
4.4.1 Technical Feasibility:........................................................................................................................... 5
4.4.2 Financial Feasibility:............................................................................................................................ 5
4.4.3 Operational Feasibility:........................................................................................................................ 6
CHAPTER 5 (SOFTWARE REQUIREMENTS SPECIFICATION)............................................................. 7
5.1 PERFORMANCE REQUIREMENTS: ....................................................................................................................... 7
5.2 NON-FUNCTIONAL REQUIREMENTS:.................................................................................................................. 7
5.3 VARIOUS OTHER NON-FUNCTIONAL REQUIREMENTS ARE:................................................................................. 8
5.4 HARDWARE INTERFACE:.................................................................................................................................... 8
CHAPTER 6 (TECHNOLOGICAL BACKGROUND).................................................................................... 9
6.1 THE TOOLS USED TO DEVELOP THE SHOPPING CART INCLUDE:........................................................................... 9
CHAPTER 7 (SYSTEM ANALYSIS & DESIGN).......................................................................................... 10
7.1 USE CASES: ..................................................................................................................................................... 10
7.1.1 Customer Interface............................................................................................................................. 11
7.1.2 Admin Interface ................................................................................................................................. 13
7.2 SEQUENCE DIAGRAMS..................................................................................................................................... 14
7.2.1 Admin Interface ................................................................................................................................. 15
7.2.2 Customer Interface............................................................................................................................. 16
CHAPTER 8 (SYSTEM DESIGN SPECIFICATION)................................................................................... 17
8.1 ARCHITECTURAL DESIGN........................................................................................................................ 17
8.1.1 DATA FLOW DIAGRAMS:............................................................................................................. 17
8.2 DFD CONTEXT LEVEL:.................................................................................................................................... 19
8.2.1 DFD Level 1: ..................................................................................................................................... 20
8.2.2 DFD LEVEL 2:.................................................................................................................................. 21
8.3 PHYSICAL TRANSACTION: ............................................................................................................................... 22
8.4 LOGIN:............................................................................................................................................................. 23
8.5 REGISTRATION: ............................................................................................................................................... 23
8.6 INTIMATION:.................................................................................................................................................... 24
CHAPTER 9 (DATABASE DESIGN) .............................................................................................................. 25
9.1 DATABASE STRUCTURE................................................................................................................................... 25
9.2 E-R DIAGRAM ................................................................................................................................................. 30
ii
9.2.1 Connectivity and Cardinality ............................................................................................................. 30
9.2.2 E-R Notation ...................................................................................................................................... 31
9.3 E-R DIAGRAM (ONLINE SHOPPING)................................................................................................................. 32
9.4 FUNCTIONAL DIAGRAM:.................................................................................................................................. 33
CHAPTER 10 (USER INTERFACE DESIGN)............................................................................................... 34
10.1 USER INTERFACE DESIGN:............................................................................................................................. 34
CHAPTER 11 (IMPLEMENTATION TECHNOLOGIES)........................................................................... 42
11.1 BACK-END WEB DEVELOPMENT TECHNOLOGY ............................................................................................ 42
11.2 JSP ARCHITECTURE....................................................................................................................................... 43
11.3 INTEGRATING THE WEBSITE AND DATABASE ................................................................................................ 44
11.4 ONLINE ELECTRONIC SHOPPING APPLICATION.............................................................................................. 45
11.4.4 MySQL Database............................................................................................................................. 53
11.5 BACK-END WEB DEVELOPMENT TECHNOLOGY ............................................................................................ 53
11.6 NETBEANS IDE (FRAMEWORK)..................................................................................................................... 55
11.6.1 NetBeans Features............................................................................................................................ 55
11.6.2 NetBeans Uses ................................................................................................................................. 55
CHAPTER 12 (INTEGRATING THE WEB APPLICATION)..................................................................... 57
12.1 WEB BASED APPLICATION DEVELOPMENT.................................................................................................... 57
12.2 INTEGRATION OF PAYMENT GATEWAY (PAYPAL)......................................................................................... 58
CHAPTER 13 (TESTING) ................................................................................................................................ 60
13.1 UNIT TESTING................................................................................................................................................ 60
13.2 INTEGRATION TESTING.................................................................................................................................. 61
13.3 Validation Testing ........................................................................................................................................ 61
CHAPTER 14 (SOFTWARE QUALITY ASSURANCE PLAN)................................................................... 62
CONCLUSION................................................................................................................................................... 71
FUTURE SCOPE OF PROJECT ..................................................................................................................... 72
BIBLIOGRAPHY............................................................................................................................................... 73
iii
DECLARATION
I hereby declare that this submission is our own work and that to the best of our knowledge
and beliefs. It contains no material previously published or written by neither any person nor
material which to a substantial extent has been accepted for the award of any other degree or
diploma of the university or other institute of higher learning, except where due
acknowledgement has been made in the text.
Signature:
Name: Abhishek Chauhan
Roll No. :1474810001
Date:24/04/2018
Signature:
Name: Amit Verma
Roll No. :1474810003
Date:24/04/2018
Signature:
Name: Arnika Gupta
Roll No. :1474810009
Date:24/04/2018
Signature:
Name: Kulendra Singh Yadav
Roll No. :1474810013
Date:24/04/2018
iv
CERTIFICATE
This is to certify that Project report entitled “ONLINE ELECTRONIC SHOPPING”,
submitted by Abhishek Singh Chauhan, Amit Verma, Arnika Gupta, Kulendra Singh Yadav
for partial fulfilment of the requirement for the award of degree Bachelors of Technology in
Department of Computer Science & Engineering of Dr. A.P.J Abdul Kalam University,
Lucknow is a record of the candidates’ own work carried out by them under my supervision.
The matter embodied in this report is original and has not been submitted for the award of any
other degree.
Date: Supervisor
24/04/2018 Mr. Chandrabhan Singh
(Head of Department)
v
ACKNOWLEDGEMENT
In completing this project, we have been fortunate enough to have help, support and
encouragement from many people. I would like to acknowledge them for their cooperation.
Firstly, we would like to thank Mr. Chandrabhan Singh, HOD Department of Computer
Science & Engineering, Ansal Technical Campus, Lucknow; for guiding us through each and
every step of the process with knowledge and support. His thoughts have been a constant
source of inspiration for us.
We would also like to acknowledge the contribution of all faculty members of the department
for their kind assistance, suggestions and cooperation throughout the development of the
project.
Finally, we would like to thank our classmates for the encouragement and help during the
project.
Signature:
Name: Abhishek Chauhan
Roll No. :1474810001
Date:24/04/2018
Signature:
Name: Amit Verma
Roll No. :1474810003
Date:24/04/2018
Signature: Signature:
Name: Arnika Gupta Name: Kulendra Singh Yadav
Roll No. :1474810009 Roll No. :1474810013
Date:24/04/2018 Date:24/04/2018
vi
ABSTRACT
The business-to-consumer aspect of electronic commerce (e-commerce) is the most visible
business use of the World Wide Web. The primary goal of an e-commerce site is to sell goods
and services online.
This project deals with developing an e-commerce website ‘Online Electronic Shopping’. It
provides the user with a catalog of different mobiles available for purchase in the store. In
order to facilitate online purchase a shopping cart is provided to the user. After selection of
the items, he is forwarded to Payment Gateway process. The system is implemented using a
3-tier approach, with a backend database, a middle tier of Sun J2EE 1.4 application server
and JSP, and a web browser as the front-end client.
In order to develop an e-commerce website, a number of technologies must be studied and
understood. These include multi-tiered architecture, server and client-side scripting
techniques, implementation technologies such as JSP, programming language (such as JAVA,
JavaScript, and Bootstrap), relational databases (such as MySQL).
This is a project chosen with the objective to develop a basic website where a consumer is
provided with a shopping cart application and also to know about the technologies used to
develop such an application.
vii
LIST OF FIGURES
FIGURE 7.1: USE CASE DIAGRAM (CUSTOMER INTERFACE).................................................................................. 10
FIGURE 7.1.2: USE CASE DIAGRAM (ADMIN INTERFACE)...................................................................................... 13
FIGURE 7.2.1: SEQUENCE DIAGRAM (ADMIN INTERFACE)..................................................................................... 15
FIGURE 7.2.2: SEQUENCE DIAGRAM (USER’S INTERFACE) .................................................................................... 16
FIGURE 8.2: DFD CONTEXT LEVEL....................................................................................................................... 19
FIGURE 8.2.1: DFD LEVEL 1 ................................................................................................................................. 20
FIGURE 8.2.2: DFD LEVEL 2 ................................................................................................................................. 21
FIGURE 8.3: DFD PHYSICAL TRANSACTION .......................................................................................................... 22
FIGURE 8.4: DFD LOGIN PROCESS ........................................................................................................................ 23
FIGURE 8.5: DFD REGISTRATION PROCESS........................................................................................................... 23
FIGURE 8.6: DFD INTIMATION .............................................................................................................................. 24
FIGURE 9.3: E-R DIAGRAM ................................................................................................................................... 32
FIGURE 9.4: FUNCTIONAL DIAGRAM ..................................................................................................................... 33
FIGURE:10.3 ALL PRODUCT PAGE......................................................................................................................... 35
FIGURE:10.4 ALL SINGLE PAGE ............................................................................................................................ 36
FIGURE:10.5 VIEW CART PAGE ............................................................................................................................. 36
FIGURE:10.6 SHIPPING ADDRESS PAGE ................................................................................................................. 37
FIGURE:10.7 ONLINE PAYMENT PAGE................................................................................................................... 37
FIGURE:10.8 SEARCH PAGE................................................................................................................................... 38
FIGURE:10.9 LOGIN PAGE ..................................................................................................................................... 38
FIGURE:10.10 SIGNUP PAGE.................................................................................................................................. 39
FIGURE:10.11 ADMIN LOGIN PAGE ....................................................................................................................... 39
FIGURE:10.12 INSERT PRODUCT DETAIL PAGE ..................................................................................................... 40
FIGURE:10.13 VIEW PRODUCT PAGE..................................................................................................................... 40
FIGURE:10.14 ORDER VIEW PAGE......................................................................................................................... 41
FIGURE:11.1 BACK END DEVELOPMENT & FRAMEWORK ..................................................................................... 42
FIGURE:11.2 JSP ARCHITECTURE.......................................................................................................................... 43
viii
LIST OF SNAPSHOTS
SNAPSHOT 9.1: CART TABLE ................................................................................................................................. 25
SNAPSHOT 9.2: PRODUCT DETAIL TABLE............................................................................................................... 26
SNAPSHOT 9.3: REGISTRATION TABLE................................................................................................................... 26
SNAPSHOT 9.4: ORDER TABLE ............................................................................................................................... 27
SNAPSHOT 9.5: FINAL PRODUCT DETAIL TABLE..................................................................................................... 27
SNAPSHOT 9.6: FEATURE TABLE.......................................................................................................................... 28
SNAPSHOT 9.7: CATEGORY DETAIL TABLE............................................................................................................ 28
SNAPSHOT 9.8: SHIPPING ADDRESS TABLE............................................................................................................. 29
ix
LIST OF ABBREVIATIONS
DB Database
DFD Data Flow Diagram
ER Entity-Relationship
UI User Interface Design
JSP Java Server Pages
MVC Model-View-Controller
SRS System Requirements Specification
Online Electronic Shopping
1 | P a g e
CHAPTER 1
INTRODUCTION
Online Electronic shopping is the process whereby consumers directly buy goods, services etc.
from a seller interactively in real-time without an intermediary service over the internet. Online
shopping is the process of buying goods and services from merchants who sell on the Internet.
Since the emergence of the World Wide Web, merchants have sought to sell their products to
people who surf the Internet. Shoppers can visit web stores from the comfort of their homes
and shop as they sit in front of the computer. Consumers buy a variety of items from online
stores.
In fact, people can purchase just about anything from companies that provide their products
online. Mobiles and Laptops are among the hundreds of products consumers can buy from an
online store. Many people choose to conduct shopping online because of the convenience.
For example, when a person shops at a brick-and-mortar store, she has to drive to the store,
find a parking place, and walk throughout the store until she locates the products she needs.
After finding the items she wants to purchase, she may often need to stand in long lines at the
cash register. Despite the convenience of online shopping, not everyone chooses to purchase
items and services online.
Some people like the idea of physically going to a store and experiencing the shopping process.
Online shopping doesn't permit shoppers to touch products or have any social interaction. It
also doesn't allow them to take the merchandise home the same day they buy it.
Online shopping allows you to browse through endless possibilities, and even offers
merchandise that's unavailable in stores. If you're searching for a nice product that may not be
distributed locally, you're sure to find what you're looking for on the internet. What's even more
useful is the ability to compare items, similar or not, online. You can search through multiple
stores at the same time, comparing material quality, sizes and pricing simultaneously.
Say 'goodbye' to the days when you stood in line waiting, and waiting, and waiting some more
for a store clerk to finally check out your items. Online shopping transactions occur instantly-
saving you time to get your other errands done! Additionally, unlike a store, online shopping
has friendly customer service representatives available 24 hours a day, 7 days a week to assist
you with locating, purchasing and shipping your merchandise.
Online Electronic Shopping
2 | P a g e
CHAPTER 2
PROJECT OVERVIEW
Once customer visited our webpage, at that time automatically one shopping cart will be
created, once user select an item it will be added to cart. In case user thinks the selected item
is not useful for me, then he can delete that item from shopping cart.
Suppose a customer selected some items, but in his credit or debit cart hasn’t that much balance,
then he does logout from the website, the selected items are stored at cart with specific users
with his allotted carts, after some days he bought those items then automatically items get
deleted from the cart.
Online Electronic Shopping
3 | P a g e
CHAPTER 3
SYSTEM STUDY
Information system’s projects originate from many reasons:
• To achieve greater speed in processing data,
• Better accuracy and improved consistency,
• Faster information retrieval,
• Integration of business areas,
• Reduced cost and better security.
The sources also vary project proposals originate with department managers, senior executives
and systems analysis. Sometimes the real origin is an outside source, such as a government
agency which stipulates a system’s requirements the organisation must meet. When the request
is made, the first system’s activity, the preliminary investigation, begins.
The activity has three parts:
• Request clarification,
• Feasibility study and
• Request approval.
3.1 Existing System
The existing system was an automated system. But it was found to be inefficient in meeting
the growing demands of population.
3.2 Drawbacks in the existing systems
Disadvantage of the existing system:
• Time Consuming
• Expensive
• Needed an agent
Online Electronic Shopping
4 | P a g e
CHAPTER 4
SYSTEM ANALYSIS
• This system is all about the converting the shopping system from manual to online.
• Customer can buy products online after login to the site.
• Administrator is adding product to database.
• Administrator can edit or delete the products from the database.
• After buying and making payment the products are send to customer’s address that he has
given.
4.1 Purpose
Online Electronic shopping tries to enhance access to care and improve the continuity and
efficiency of services. Depending on the specific setting and locale, case managers are
responsible for a variety of tasks, ranging from linking clients to services to actually providing
intensive shopping and delivery services themselves.
Main objective: -
• To shop while in the comfort of your own home, without having to step out of the door.
• Sell at lower rate due to less overhead.
• Provide home delivery free of cost.
• No wait to see the product, if someone else is taking that.
4.2 Scope
This product has great future scope. Online shopping Internet software developed on and for
the Windows and later versions environments and Linux OS. This project also provides
security with the use of Login-id and Password, so that any unauthorized users cannot use your
account. The only Authorized that will have proper access authority can access the software.
Online Electronic Shopping
5 | P a g e
4.3 Need for the proposed system:
The online shopping is an easy to maintain, ready to run, scalable, affordable and reliable cost
saving tool from Software Associates suited for small, medium, and large shopping complex
and shopping malls.
Features and Benefits:
• Providing security
• Low cost
• Basic computer knowledge required
• Configurable and extensible application UI design
The proposed system can be used even by the naïve users and it does not require any
educational level, experience, and technical expertise in computer field but it will be of good
use if the user has the good knowledge of how to operate a computer.
4.4 Feasibility study:
A feasibility study is a short, focused study, which aims to answer a number of questions:
• Does the system contribute to the overall objectives of the organizations?
• Can the system be implemented using current technology and within given cost and
schedule constrains?
• Can the system be integrated with systems which are already in place?
4.4.1 Technical Feasibility:
• Is the project feasibility within the limits of current technology?
• Does the technology exist at all?
• Is it available within given resource constraints (i.e., budget, schedule)?
4.4.2 Financial Feasibility:
• Is the project possible, given resource constraints?
• Are the benefits that will accrue from the new system worth the costs?
Online Electronic Shopping
6 | P a g e
• What are the savings that will result from the system, including tangible and intangible
ones?
• What are the development and operational costs?
4.4.3 Operational Feasibility:
Define the urgency of the problem and the acceptability of any solution; if the system is
developed, will it be used? Includes people-oriented and social issues: internal issues, such as
manpower problems, labour objections, manager resistance, organizational conflicts and
policies; also, external issues, including social acceptability, legal aspects and government
regulations.
Online Electronic Shopping
7 | P a g e
CHAPTER 5
SOFTWARE REQUIREMENTS SPECIFICATION
System requirements are expressed in a software requirement document. The Software
Requirements Specification (SRS) is the official statement of what is required by the system
developers. This requirement document includes the requirements definition and the
requirements specification. The software requirement document is not a design document. It
should set out what the system should do without specifying how it should be done.
The requirement set out in this document is complete and consistent.
The software specification document satisfies the following: -
• It specifies the external system behaviour.
• It specifies constraints on the implementation.
• It is easy to change.
• It serves as reference tool for system maintainers.
• It records forethought about the life cycle of the system.
• It characterizes acceptable response to undesired events.
5.1 Performance Requirements:
In order to maintain an acceptable speed at maximum number of uploads allowed from a
particular customer will be any number of users can access the system at any time. It also
connections to the servers will be based on the criteria of attributes of the user like his location,
and server will be working whole 24X 7 times.
5.2 Non-Functional Requirements:
Following Non-functional requirements will be there in the Insurance on internet:
• Secure access of confidential data (customer’s details).
• 24 X 7 availability.
• Better component design to get better performance at peak time.
• Flexible service-based architecture will be highly desirable for future extension.
Online Electronic Shopping
8 | P a g e
Non-functional requirements define system properties and constraints. It arises through user
needs, because of budget constraints or organizational policies, or due to the external factors
such as safety regulations, privacy registration and so on.
5.3 Various other Non-functional requirements are:
• Security
• Reliability
• Maintainability
• Portability
• Extensibility
• Reusability
• Application Affinity/Compatibility
• Resource Utilization
5.4 Hardware Interface:
Hardware requirements for Insurance on internet will be same for both the parties which are
follows:
• Processor: - Core i5 and above
• RAM: - 2 GB
• HD: - 50 GB
• NIC: - For each party
Online Electronic Shopping
9 | P a g e
CHAPTER 6
TECHNOLOGICAL BACKGROUND
6.1 The tools used to develop the shopping cart include:
• JAVA programming language
• Java Server Pages (JSP) server-side scripting technology
• MySQL database server
• JavaScript
• HTML
• BOOTSTRAP
Java was designed to have the look and feel of the C++ language, but it is simpler to use than
C++ and enforces an object-oriented programming model. Java can be used to create complete
applications that may run on a single computer or be distributed among servers and clients in
a network.
Java Server Pages (JSP) is a technology that helps software developers create dynamically
generated web pages based on HTML, XML, or other document types.
MySQL is a very fast, robust, relational database management system (RDBMS). A database
enables the users to efficiently store, search, sort, and retrieve data.
Alongside HTML and CSS, JavaScript is one of the three core technologies of the World Wide
Web. JavaScript enables interactive web pages and thus is an essential part of web applications.
Online Electronic Shopping
10 | P a g e
CHAPTER 7
SYSTEM ANALYSIS & DESIGN
The system was analysed and designed before implementation began.
In this section, use cases, sequence diagrams, and webpage diagrams are described in details.
7.1 Use Cases:
The following use cases outline the requirements for the online shopping.
They have been revised during the course of the project to more accurately reflect the system.
7.1.1 Customer Interface
Customer
Figure 7.1: Use Case Diagram (Customer Interface)
Online Electronic Shopping
11 | P a g e
1. Customer shops for a product
The customer initiates this action by clicking on the desired category for item to be displayed.
The page sends a message to the server requesting a listing of all products from the particular
category from the database. The action is complete when a page is returned for the customer
to view, which contains available products with product names along with their picture, price,
capacity, and an option to add the product to the shopping cart. There is an option to link to
next page, if more products are available than can fit on the page. If a given item is out of stock,
a drop-down button with a message “not available” is displayed.
2. Customer searches for item
The customer starts this action by typing a query into a text box named description to search
for description of an item. The page sends a message to the server asking for a listing of
products, whose names match the query, from the database. The action is complete when a
page is returned for the customer to view, which contains a list of the resulting products along
with their picture, price, and an option to add the product to the shopping cart. If a given
description doesn’t match with any descriptions in the database, a message indicating such is
displayed instead of the option to add to cart. The customer can also search for an item using
model number or combination of both description and model.
3. Customer adds an item to cart
The customer initiates this action by clicking on the buy button on the right side of to a
product’s listing. An item is added to the cart including the price and displayed with the total
price. If the product already exists in the customer’s cart, its quantity is increased by 1. There
is a Continue Shopping button for the customer to continuing shopping for other products.
4. Customer views cart
The customer initiates this action by clicking on the view cart button, available on any
webpage. The page sends message to the server and shows a list of all products in the
customer’s cart, along with their quantity and total price.
Online Electronic Shopping
12 | P a g e
5. Customer removes item from cart
The customer starts this action by clicking on the Remove button on the view cart page. The
web page sends a message to the server, which removes the product from the customer’s
shopping cart.
6. Customer changes quantity from cart
The customer starts this action by changing the quantity of the item and clicking on the Change
button on the view cart page. The web page sends a message to the server, which updating the
product from the customer’s shopping cart.
7. Customer checks out
The customer starts this action by click on checkout button the on the view cart page. A check
out page is displayed letting the customer to create a new account or sign in depending the
customer status. An existing customer would sign in his/her email address and password and
click sign in button. The web page is sending the message to the server. Then, the server
validated the email address and password from the database. If they are both correct, then a
shipping and billing information page is displayed letting the customer to fill out the
information. After submitting billing and shipping information, a confirmation page is
displayed showing item in the customer’s cart and billing and shipping information.
8. Customer sends order
The customer starts this action by clicking on the send order from Confirm Information page.
Once send order button is clicked, the page is sending the message to the server, which sends
emails to the customer and sale person. It also stores the customer’s cart and billing and
shipping information into the database.
Online Electronic Shopping
13 | P a g e
7.1.2 Admin Interface
Admin
Figure 7.1.2: Use case Diagram (Admin Interface)
Online Electronic Shopping
14 | P a g e
1. Admin logs in
The admin starts this action by inputting the username and password and clicking on the submit
button. The page is sent the message to the server to validate the information from the database.
After successful validation, the logged in page is returned with options for the admin to add,
modify, or delete products, or query information.
2. Admin inserts item
The admin starts this action by clicking the Input Items button from the logged in page. The
page is displayed with a form for the admin to insert item and its details. Once Insert button is
clicked, the web page sends this information to the server, which in turns stores it in the
database.
3. Admin removes item
The admin starts this action by clicking on the Remove Items button. The web page is displayed
a dropdown menu for the admin to send the item he/she wants to delete. Once, delete button is
clicked, the page is send message to the server which in turns tells the database to remove the
item
4. Admin modifies item
The admin starts this action by clicking on the Modify Items button. The web page is displayed
a list available product from the database. The admin then chooses the item he/she wants to
modify by clicking on particular item. A page is displayed letting the admin to modify all item
information, except its UPC code and model name. Once, the Modify button is clicked, the
web page sends a message to the server, which updating the information from the database.
7.2 Sequence Diagrams
The next step is to develop scenarios through sequence diagrams. The sequence diagram below
outlines the requirements for online shopping.
Online Electronic Shopping
15 | P a g e
7.2.1 Admin Interface
Login
Validate Check validity
Input Items
Add Category
Back to Form
Delete/Modify Items
Display Results Input into Table
Logout Delete / Overwrite items
Figure 7.2.1: Sequence Diagram (Admin Interface)
Front End Back End Database
Online Electronic Shopping
16 | P a g e
7.2.2 Customer Interface
Figure 7.2.2: Sequence Diagram (User’s Interface)
Front End: web browser; Back End: web server; DB: database server
Online Electronic Shopping
17 | P a g e
CHAPTER 8
SYSTEM DESIGN SPECIFICATION
8.1 ARCHITECTURAL DESIGN
8.1.1 DATA FLOW DIAGRAMS:
Data flow diagrams (DFD) was first developed by LARRY CONSTANTINE as way
representing system requirements in a graphical form; this lead to modular design.
A DFD describes what data flow (logical) rather than how they are processed, so it does not
depend on hardware, software, data structure or file organization. It is also known as ‘bubble
chart’.
A Data Flow Diagrams is a structured analysis and design tool that can be used for flowcharting
in place of, or in association with, information-oriented and process-oriented systems
flowcharts. A DFD is a network that describes the flow of data and the processes that change,
or transform, data throughout a system. This network is constructed by using a set of symbols
that do not imply a physical implementation. It has the purpose of clarifying system
requirements and identifying major transformations that will become programs in system
design. So, it is the starting point of the design phase that functionality decomposes the
requirement specifications down to the lowest level of detail. 20 The symbols used to prepare
DFD do not imply a physical implementation, a DFD can be considered to an abstract of the
logic of an information-oriented or a process-oriented system flow-chart. For these reasons
DFDs are often referred to as logical data flow diagrams. The four basic symbols used to
construct data flow diagrams are shown below:
A rectangle represents a data source or destination.
A directed line represents the flow of data that is data stream.
Online Electronic Shopping
18 | P a g e
An enclosed figure, usually a circle or an oval bubble represent
a process that transforms data streams.
An open-ended rectangle represents data storage.
Online Electronic Shopping
19 | P a g e
8.2 DFD Context Level:
Figure 8.2: DFD Context Level
The System is recognized as a complete system “Cart System. Admin, Users, Shipping Agent
are the main actors for this system.
Online Electronic Shopping
20 | P a g e
8.2.1 DFD Level 1:
Figure 8.2.1: DFD Level 1
User can Log-in, add, remove items to cart, register, pay. Admin can have privileged login,
they can change, modify catalogue, maintain user data. After adding items to cart they can
make order. The orders are stored in order database. The orders are processed and items from
the warehouse are delivered to customer by shipping agent.
Online Electronic Shopping
21 | P a g e
8.2.2 DFD LEVEL 2:
Figure 8.2.2: DFD Level 2
Customer/User can browse the catalogue and can add items to their cart for ordering. Moreover,
Customer can remove items from their cart. and after adding items to their cart they can
checkout and move to Ordering. For Order a customer need to be log-in.
Online Electronic Shopping
22 | P a g e
8.3 Physical Transaction:
Figure 8.3: DFD Physical Transaction
At the time of delivery, A shipping Agent which will take the items from warehouse along with
the bill and deliver the item to customer. Customer will pay the respective bill and the bill will
be stored in transaction database. For keeping record of cash transaction, we have a transaction
database which will store bill amount and bill id.
Online Electronic Shopping
23 | P a g e
8.4 Login:
Figure 8.4: DFD Login Process
User enter their login-id along with password. If the entered data is valid combination, then
home page will be displayed otherwise a message intimating user about them in-appropriate
login details.
8.5 Registration:
Figure 8.5: DFD Registration Process
Online Electronic Shopping
24 | P a g e
8.6 Intimation:
Figure 8.6: DFD Intimation
After placing Order Customer will be intimated by order confirmation mail and sending a SMS
containing order details and delivery time. Profile database will be used to get email-id and
mobile number of customer.
Online Electronic Shopping
25 | P a g e
CHAPTER 9
DATABASE DESIGN
9.1 Database Structure
In this project, MySQL is used as the backend database. MySQL is an open source database
management system. Here we are including the details of each details.
1. Database (Cart)
SNAPSHOT:9.1 Cart table
Online Electronic Shopping
26 | P a g e
2. Database (Product detail)
SNAPSHOT:9.1 Product detail table
3. Database (Registration)
SNAPSHOT:9.3 Registration table
Online Electronic Shopping
27 | P a g e
4. Database (Order)
SNAPSHOT:9.4 Order table
5. Database (Final Product detail)
SNAPSHOT:9.5 Final product detail table
Online Electronic Shopping
28 | P a g e
6. Database (Feature)
SNAPSHOT:9.6 Feature table
7. Database (Category detail)
SNAPSHOT:9.7 Category detail table
Online Electronic Shopping
29 | P a g e
8. Database (shipping address)
SNAPSHOT:9.8 Shipping address table
Online Electronic Shopping
30 | P a g e
9.2 E-R Diagram
The Entity-Relationship (ER) model was originally proposed by Peter in 1976 [Chen76] as a
way to unify the network and relational database views. Simply stated the ER model is a
conceptual data model that views the real world as entities and relationships. A basic
component of the model is the Entity-Relationship diagram which is used to visually represents
data objects. Since Chen wrote his paper the model has been extended and today it is commonly
used for database design for the database designer, the utility of the ER model is:
• it maps well to the relational model. The constructs used in the ER model can easily be
transformed into relational tables.
• it is simple and easy to understand with a minimum of training. Therefore, the model
can be used by the database designer to communicate the design to the end user.
• In addition, the model can be used as a design plan by the database developer to
implement a data model in a specific database management software.
9.2.1 Connectivity and Cardinality
The basic types of connectivity for relations are: one-to-one, one-to-many, and many-
to-many. A one-to-one (1:1) relationship is when at most one instance of entity A is
associated with one instance of entity B. For example, "employees in the company are
each assigned their own office. For each employee, there exists a unique office and for
each office there exists a unique employee.
A one-to-many (1: N) relationships is when for one instance of entity A, there are zero,
one, or many instances of entity B, but for one instance of entity B, there is only one
instance of entity A. An example of a 1: N relationships is a department has many
employees each employee is assigned to one department.
A many-to-many (M: N) relationship, sometimes called non-specific, is when for one
instance of entity A, there are zero, one, or many instances of entity B and for one
instance of entity B there are zero, one, or many instances of entity A. The connectivity
of a relationship describes the mapping of associated
Online Electronic Shopping
31 | P a g e
9.2.2 E-R Notation
There is no standard for representing data objects in ER diagrams. Each modelling
methodology uses its own notation. The original notation used by Chen is widely used
in academics’ texts and journals but rarely seen in either CASE tools or publications
by non-academics. Today, there are a number of notations used, among the more
common are Bachman, crow's foot, and IDEFIX.
All notational styles represent entities as rectangular boxes and relationships as lines
connecting boxes. Each style uses a special set of symbols to represent the cardinality
of a connection. The notation used in this document is from Martin. The symbols used
for the basic ER constructs are:
• entities are represented by labelled rectangles. The label is the name of the
entity. Entity names should be singular nouns.
• relationships are represented by a solid line connecting two entities. The name
of the relationship is written above the line. Relationship names should be verbs
• attributes, when included, are listed inside the entity rectangle. Attributes
which are identifiers are underlined. Attribute names should be singular nouns.
• cardinality of many is represented by a line ending in a crow's foot. If the
crow's foot is omitted, the cardinality is one.
• existence is represented by placing a circle or a perpendicular bar on the line.
Mandatory existence is shown by the bar (looks like a 1) next to the entity for
an instance is required. Optional existence is shown by placing a circle next to
the entity that is optional.
Online Electronic Shopping
32 | P a g e
9.3 E-R Diagram (Online Shopping)
Figure 9.3: E-R Diagram
Online Electronic Shopping
33 | P a g e
9.4 Functional Diagram:
Figure 9.4: Functional Diagram
Online Electronic Shopping
34 | P a g e
CHAPTER 10
USER INTERFACE DESIGN
Before implementing the actual design of the project, a few user interface designs were
constructed to visualize the user interaction with the system as they browse for mobiles, create
a shopping cart and purchase mobiles. The user interface design will closely follow our
Functional Decomposition Diagram show the initial designs of the web pages.
10.1 User Interface Design:
In NetBeans, we have designed this interface in the view folder of NetBeans framework.
This view controlled by CI Controller. We are using bootstrap in the theme design.
Fig. No. 10.1 Index Page
Online Electronic Shopping
35 | P a g e
Figure:10.2 Product Page
Figure:10.3 All Product Page
Online Electronic Shopping
36 | P a g e
Figure:10.4 All Single Page
Figure:10.5 View Cart Page
Online Electronic Shopping
37 | P a g e
Figure:10.6 Shipping Address Page
Figure:10.7 Online Payment Page
Online Electronic Shopping
38 | P a g e
Figure:10.8 Search Page
Figure:10.9 Login Page
Online Electronic Shopping
39 | P a g e
Figure:10.10 Signup Page
Figure:10.11 Admin Login Page
Online Electronic Shopping
40 | P a g e
Figure:10.12 Insert Product Detail Page
Figure:10.13 View Product Page
Online Electronic Shopping
41 | P a g e
Figure:10.14 Order View Page
Online Electronic Shopping
42 | P a g e
CHAPTER 11
IMPLEMENTATION TECHNOLOGIES
11.1 Back-End Web Development Technology
While there are numerous technologies for building web applications that serve dynamic
content, the one that has really caught the attention of the development community is Java
Server Pages (JSP). And not without ample reason either. JSP not only enjoys cross-platform
and cross-Web-server support, but effectively melds the power of server-side Java technology
with the WYSIWYG features of static HTML pages.
JSP pages typically comprise of:
• Static HTML/XML components.
• Special JSP tags
Figure 11.1: Back End Development & Framework
Optionally, snippets of code written in the Java programming language called “script lets”
Consequently, you can create and maintain JSP pages by conventional HTML/XML tools. It
Online Electronic Shopping
43 | P a g e
is important to note that the JSP specification is a standard extension defined on top of the
Servlet API. Thus, it leverages all of your experience with servlets. There are significant
differences between JSP and servlet technology. Unlike servlets, which is a programmatic
technology requiring significant developer expertise, JSP appeals to a much wider audience.
It can be used not only by developers, but also by page designers, who can now play a more
direct role in the development life cycle. Another advantage of JSP is the inherent separation
of presentation from content facilitated by the technology, due its reliance upon reusable
component technologies like the JavaBeans component architecture and Enterprise JavaBeans
technology. This course provides you with an in-depth introduction to this versatile
technology, and uses the Tomcat JSP 1.1 Reference Implementation from the Apache group
for running the example programs.
11.2 JSP Architecture
The purpose of JSP is to provide a declarative, presentation-centric method of developing
servlets. As noted before, the JSP specification itself is defined as a standard extension on top
the Servlet API. Consequently, it should not be too surprisingly that under the covers, servlets
and JSP pages have a lot in common. Typically, JSP pages are subject to a translation phase
and a request processing phase. The translation phase is carried out only once, unless the JSP
page changes, in which case it is repeated. Assuming there were no syntax errors within the
page, the result is a JSP page implementation class file that implements the Servlet interface,
as shown below.
Figure:11.1 JSP Architecture
Online Electronic Shopping
44 | P a g e
11.3 Integrating the Website and Database
Customers ordering from an e-commerce website need to be able to get information about a
vendor’s products and services, ask questions, select items they wish to purchase, and submit
payment information. Vendors need to be able to track customer inquiries and preferences and
process their orders. So, a well-Organized database is essential for the development and
maintenance of an e-commerce site.
In a static Web page, content is determined at the time when the page is created. As users
access a static page, the page always displays the same information. Example of a static Web
page is the page displaying company information. In a dynamic Web page, content varies
based on user input and data received from external sources. We use the term “data-based Web
pages” to refer to dynamic Web pages deriving some or all of their content from data files or
databases.
A data-based Web page is requested when a user clicks a hyperlink or the submit button on a
Web page form. If the request comes from clicking a hyperlink, the link specifies either a Web
server program or a Web page that calls a Web server program.
In some cases, the program performs a static query, such as “Display all items from the
Inventory”. Although this query requires no user input, the results vary depending on when
the query is made. If the request is generated when the user clicks a form submit button, instead
of a hyperlink, the Web server program typically uses the form inputs to create a query. For
example, the user might select five mobiles to be purchased and then submit the input to the
Web server program. The Web server program then services the order, generating a dynamic
Web page response to confirm the transaction. In either case, the Web server is responsible for
formatting the query results by adding HTML tags. The Web server program then sends the
program’s output back to the client’s browser as a Web page.
Online Electronic Shopping
45 | P a g e
11.4 Online Electronic Shopping Application
The objective of this application is to provide the user an online website where they can buy
mobiles from the comfort of their home. A shopping cart is used for the purpose. The user can
select the desired mobiles, place them in the shopping cart and purchase them using a Credit
Card. The user’s order will be shipped according to the type of shipping selected at the time
of placing the order.
Website consists of the following web pages:
1. Home.jsp
2. Product.jsp
3. Cart.jsp
4. Filter.jsp
5. Filter1.jsp
6. Filter2.jsp
7. Login.jps
8. Registration.jsp
9. Admin.jsp
10. Adminlogin.jsp
11. Insert_feature.jsp
12. Update_feature.jsp
13. Headrr.jsp
14. Footer.jsp
15. Mobile.jsp
16. Viewcart.jsp
17. Address.jsp
18. Single.jsp
19. Show.jsp
20. About.jsp
21. Mail.jsp
Online Electronic Shopping
46 | P a g e
1) Viewcart.jsp
<%@page import="java.sql.*" %>
<%@page import="javax.sql.*" %>
<%@page import="java.sql.Connection"%>
<%@include file="header.jsp" %>
<%
// PreparedStatement ps= "";
String email=(String)session.getAttribute("uid");
int total = 0,number=0;
try
{
if (email != null)
{
Class.forName("com.mysql.jdbc.Driver");
Connection
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/purchase","ro
ot","amit@123");
PreparedStatement ps2 = con.prepareStatement("select * from cart1 where
email=?");
ps2.setString(1,email);
ResultSet rs2 = ps2.executeQuery();
%>
<div class="col-md-6">
<table class="table">
<thead style="width: 60px">
<tr>
<th scope="col">Image</th>
<th scope="col">Modal</th>
<th scope="col">Price</th>
Online Electronic Shopping
47 | P a g e
<th scope="col">Remove</th>
<th scope="col">Quantity</th>
</tr>
</thead>
</table>
<%
while (rs2.next())
{
%>
<form>
<% String m = request.getParameter("msg");
if (m != null) {
%>
<h1><%=m%></h1>
<%}%>
<table class="table">
<tbody style="width: 60px">
<tr>
<th scope="row">
<img src="images/<%=rs2.getString(6)%>" height="50" /></th>
<td><%=rs2.getString(4)%>
</td>
<td><%=rs2.getString(5)%></td>
<td><a
href="cartProductDeleteDemo.jsp?id=<%=rs2.getString(1)%> &&
email=<%=session.getAttribute("uid")%>">Delete Product</a></td>
<td><%=rs2.getString(7)%></td>
</tr>
<%
Online Electronic Shopping
48 | P a g e
String productprice=rs2.getString(8); //output= value of
productid=7 is stored in variable productid from product table
total+=Integer.parseInt(productprice);
number+=1;
%>
<!--<input type="submit" name="cart" value="Add To Cart">-->
</form>
</div>
<% } %>
</tbody>
</table>
</div> </div>
<div class="col-sm-6" style="padding-top: 60px; padding-left: 10%">
<div class="card">
<div class="card-body">
<p style="font-size: 16px">
<%
out.print("Number Of Items = " + " " + number + "<br>" +
"" + "<br> ");
out.print("Total Amount = " + "&#8377; " +total + " <br>
<br> ");
//response.sendRedirect("orderProduct.jsp");
%>
</p>
<div class="row">
<div class="col-md-3">
<a class="btn btn-primary" href="paymentmode.jsp?total &&
number && email=<%=session.getAttribute("uid")%>">Buy Now</a>
</div>
<div class="col-md-4">
<a class="btn btn-primary" href="mobile.jsp"><span>Continue
Shopping</span></a>
Online Electronic Shopping
49 | P a g e
</div>
</div>
</div>
</div>
</div>
<!-- <div style="width: 100% ; height: 400px">
</div>-->
<%
}
else
{
%>
<script>alert("You are not logged in");
window.location.href = "login.jsp";
</script>
<a href="login.jsp">Login</a>
<%}
}
catch (Exception e)
{
out.print(e);
}
%>
Online Electronic Shopping
50 | P a g e
2) Filter.jsp
<%@page import="java.sql.*" %>
<%@page import="javax.sql.*" %>
<%@page import="java.sql.Connection"%>
<%@ include file="header.jsp" %>
<div class="agile_ecommerce_tab_left mobiles_grid">
<%
try {
Class.forName("com.mysql.jdbc.Driver");
Connection
conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/purchase","r
oot","amit@123");
PreparedStatement ps1=conn.prepareStatement("SELECT * FROM
productdetail WHERE price BETWEEN 8000 AND 15000 UNION SELECT *
FROM productdetail WHERE Price > 8000 AND Price < 15000");
// ps1.setString(1,fname);
ResultSet rs=ps1.executeQuery();
while(rs.next())
{
%>
<div class="col-md-4 agileinfo_new_products_grid
agileinfo_new_products_grid_mobiles">
<div class="w3ls_mobiles_grid_right_grid4">
<div>
<img src="images/<%=rs.getString(6)%>" height="220"
width="220"></img>
</div>
Online Electronic Shopping
51 | P a g e
<h5><a
href="single.jsp?link=<%=rs.getString(1)%>"><%=rs.getString(2)%><%=rs.ge
tString(3)%></a></h5>
<div class="simpleCart_shelfItem">
<p><span></span><i
class="item_price">&#8377;<%=rs.getString(4)%> </i></p>
<form action="cartInsert.jsp" method="get">
<input type="hidden" name="product_id"
value="<%=rs.getString(1)%>" />
<input type="hidden" name="model"
value="<%=rs.getString(3)%>" />
<input type="hidden" name="price"
value="<%=rs.getString(4)%>" />
<input type="hidden" name="images"
value="<%=rs.getString(6)%>" />
<button type="submit" class="w3ls-cart">Add to cart</button>
</form>
</div>
</div>
</div>
<%} }
catch(Exception e)
{
out.println(e);
}
%>
<%@ include file="footer.jsp" %>
Online Electronic Shopping
52 | P a g e
3) Delete.jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ include file="header.jsp" %>
<%
String link = request.getParameter("link");
try
{
Class.forName("com.mysql.jdbc.Driver");
Connection con =
DriverManager.getConnection("jdbc:mysql://localhost:3306/purchase","root","a
mit@123");
Statement st= con.createStatement();
PreparedStatement ps = con.prepareStatement("delete from
productdetail where product_id='"+link+"'");
ps.executeUpdate();
con.close();
ps.close();
}
catch(Exception ex)
{
out.println(ex.getMessage());
}
%>
<h1>Record Deleted...</h1><br>
<center><a href="admin.jsp">Go Back</a></center>
Online Electronic Shopping
53 | P a g e
11.4.4 MySQL Database
In this project, MySQL is used as the backend database. MySQL is an open source database
management system. The features of MySQL are given below:
• MySQL is a relational database management system. A relational database stores
information in different tables, rather than in one giant table. These tables can be
referenced to each other, to access and maintain data easily.
• MySQL is open source database system. The database software can be used and
modify by anyone according to their needs.
• It is fast, reliable and easy to use. To improve the performance, MySQL is
multithreaded database engine. A multithreaded application performs many tasks at the
same time as if multiple instances of that application were running simultaneously.
In being multithreaded MySQL has many advantages. A separate thread handles each
incoming connection with an extra thread that is always running to manage the connections.
Multiple clients can perform read operations simultaneously, but while writing, only hold up
another client that needs access to the data being updated. Even though the threads share the
same process space, they execute individually and because of this separation, multiprocessor
machines can spread the thread across many CPUs as long as the host operating system
supports multiple CPUs. Multithreading is the key feature to support MySQL’s performance
design goals. It is the core feature around which MySQL is built.
11.5 Back-End Web Development Technology
A front-end web development framework is simply a collection of production ready
HTML/CSS/JavaScript components that we can use in our designs. There are many frameworks out
there but some of them stand out from the crowd. For your facilitation below you will find outlined
some of the most powerful and popular frameworks available today. Bear in mind that these are not
just CSS grids or so, but instead full-featured front-end development frameworks.
Bootstrap is definitely the most popular and widely used framework, nowadays. It’s a beautiful,
intuitive and powerful web design kit for creating cross browser, consistent and good-looking
interfaces. It offers many of the popular UI components with a plain-yet-elegant style, a grid
system and JavaScript plugins for common scenarios.
Online Electronic Shopping
54 | P a g e
It is built with LESS and consists of four main parts:
• Scaffolding – global styles, responsive 12-column grids and layouts. Bear in mind that
Bootstrap doesn’t include responsive features by default. If your design needs to be
responsive you have to enable this functionality manually.
• Base CSS – this includes fundamental HTML elements like tables, forms, buttons,
and images, styled and enhanced with extensible classes.
• Components – collection of reusable components like dropdowns, button groups,
navigation controls (tabs, pills, lists, breadcrumbs, pagination), thumbnails, progress
bars, media objects, and more.
• JavaScript – jQuery plugins which bring the above components to life, plus transitions,
modals, tool tips, popovers, scrollspy (for automatically updating nav targets based on
scroll position), carousel, typeahead (a fast and fully-featured autocomplete library),
affix navigation, and more.
Bootstrap is already powerful enough to empower any web interface. But in order to make
more use of it and making the development process easier, you can find plenty of tools and
resources that complement it. Some of them are listed below:
• jQuery UI Bootstrap – an awesome resource for jQuery and Bootstrap fans that
combines the power of both. It brings nicely the slickness of Bootstrap to jQuery UI
widgets.
• jQuery Mobile Bootstrap Theme – similar to the jQuery UI theme above, this is a theme
built for jQuery Mobile. It is a handy resource if you have a web front-end built with
Bootstrap and want to offer a similar look for mobile.
• Fuel UX – this extends Bootstrap with additional lightweight JavaScript controls. It’s
easy to install, customize, update, and optimize.
• StyleBootstrap.info – Bootstrap has its own customizer but StyleBootstrap is a more
detailed one with color pickers and the ability to style each component differently
• Bootswatch – a nice set of free themes for Bootstrap.
• Bootsnipp – a good collection of design elements and HTML snippets for Bootstrap.
It offers also form and button builders.
Online Electronic Shopping
55 | P a g e
• LayoutIt – drag and drop interface builder based on the elements and components of
Bootstrap. It helps you to compose your design visually by placing and arranging
different elements into your layout via drag and drop and then allows you to edit their
properties. You get the base code and then expand it. Simple and easy.
11.6 NetBeans IDE (Framework)
NetBeans IDE is a free, open source, integrated development environment (IDE) that enables
you to develop desktop, mobile and web applications. The IDE supports application
development in various languages, including Java, HTML5, PHP and C++. The IDE provides
integrated support for the complete development cycle, from project creation through
debugging, profiling and deployment. The IDE runs on Windows, Linux, Mac OS X, and other
UNIX-based systems.
The IDE provides comprehensive support for JDK 7 technologies and the most recent Java
enhancements. It is the first IDE that provides support for JDK 7, Java EE 7, and JavaFX 2.
The IDE fully supports Java EE using the latest standards for Java, XML, Web services, and
SQL and fully supports the Glassfish Server, the reference implementation of Java EE.
11.6.1 NetBeans Features
Some of the important features of NetBeans are listed below −
• Best Support for Latest Java Technologies
• Fast & Smart Code Editing
• Easy & Efficient Project Management
• Rapid User Interface Development
• Write Bug Free Code
Concepts
• Front-end development
• Web application project structure
• Data modeling
• Database connectivity
• Object-relational mapping
Online Electronic Shopping
56 | P a g e
• Session management
• Transactional business logic
• Client and server-side validation
• Localization
• Web application security
• Design patterns, including Model-View-Controller (MVC) and Session Facade
Technologies
• HTML, CSS, and JavaScript technologies
• Servlet and Java Server Pages (JSP) technologies
• Enterprise JavaBeans (EJB) technology
• Java Persistence API (JPA)
• The Java Server Pages Standard Tag Library (JSTL)
• Java Database Connectivity (JDBC)
Development Tools
• NetBeans IDE
• Glassfish, a Java EE application server
• MySQL, a relational database management server (RDBMS)
• MySQL Workbench, a visual database design tool
11.6.2 NetBeans Uses
Firstly, the term IDE stands for integrated development environment. The purpose of an IDE
has traditionally been to maximize a developer's productivity by providing tools and support
such as:
• a source code editor
• a compiler and build automation tools
• a window system for viewing projects and project artefacts
• integration with other commonly-used services
Online Electronic Shopping
57 | P a g e
CHAPTER 12
INTEGRATING THE WEB APPLICATION
Customers ordering from an e-commerce website need to be able to get information about a
vendor’s products and services, select items they wish to purchase, and submit payment
information. Vendors need to be able to track customer inquiries and preferences and process
their orders. So, a well-organized database is essential for the development and maintenance
of an e-commerce site.
In a static Web page, content is determined at the time when the page is created. As users access a
static page, the page always displays the same information. Example of a static Web page is the
page displaying company information. In a dynamic Web page, content varies based on user input
and data received from external sources. We use the term “data-based Web pages” to refer to
dynamic Web pages deriving some or all of their content from data files or databases.
A data-based Web page is requested when a user clicks a hyperlink or the submit button on a
Web page form. If the request comes from clicking a hyperlink, the link specifies either a Web
server program or a Web page that calls a Web server program. In some cases, the program
performs a static query, such as “Display all items from the Inventory”. Although this query
requires no user input, the results vary depending on when the query is made. If the request is
generated when the user clicks forms submit button, instead of a hyperlink, the Web server
program typically uses the form inputs to create a query. For example, the user might select
five mobiles to be purchased and then submit the input to the Web server program. The Web
server program then services the order, generating a dynamic Web page response to confirm
the transaction. In either case, the Web server is responsible for formatting the query results by
adding HTML tags. The Web server program then sends the program’s output back to the
client’s browser as a Web page.
12.1 Web Based Application Development
The Web is built on the Hypertext Transfer Protocol. HTTP is a client/server request/reply
protocol that is stateless. That is, the protocol does not make any association between one
transaction and another; e.g.: time since the last transaction, type or client involved in the last
transaction, what data was exchanged between the client and the server. As far as HTTP is
concerned, each transaction is a discrete event. But this is not what we want in a shopping cart
application because we need to preserve the user’s shopping selection as they proceed with
their purchase, in addition it is useful to have the access to their past purchase history and
personal preferences.
Online Electronic Shopping
58 | P a g e
Carrying information from one page to another can be achieved by several ways, such as
Cookies, Session variables, Post variables, etc.
A cookie is a small file that has a maximum age, a domain and path of applicability, and a
security specification. Any time a server sends a response to a client, it may include one or
more Set-Cookie headers. When a client receives a Set-cookie header, it stores the content of
the header and the cookie, for later use. In our application, every time the client selects an item
to put in the shopping cart, the server can send a Set Cookie whose content is the ID of the
item, and whose domain and path of applicability are the URL of the order/payment page.
Then, when the user goes to order and pay, the client will send the Cookie headers for each of
the selected items. Upon receiving this request, the server can parse the supplied cookies and
charge the user appropriately for the selected items. Cookies may also be used to identify the
users.
However, cookies are very insecure to use since they are transmitted as plain text and the server
has no control over how cookies are stored in at the client’s side. Another approach is based
on a notion of session ID. These notions provide means for the server to track the requests of
a client through a “session”, but unlike cookies, which are stored on the client, Session
variables are stored on the Server. A session starts when a user logs in and ends when they log
off from the website.
The Session object is used to store information about or change settings for a user session.
Variables stored in the Session object hold information about one single user and are available
to all pages in one application. Common information stored in session variables are name, id,
and preferences. The server creates a new Session object for each new user and destroys the
Session object when the session expires.
12.2 Integration of Payment Gateway (PayPal)
PayPal Holdings, Inc. is an American company operating a worldwide online payments system
that supports online money transfers and serves as an electronic alternative to traditional paper
methods like checks and money orders.
In this NetBeans application, we’ll display some products from the database along with the
Buy button. Clicking on Buy button, the buyer would be redirected to the PayPal site. After
completion of payment, the buyer will come back to the website. Using PayPal IPN (Instant
Payment Notification) service, we will check the payment status and store the transaction
details in the database.
Online Electronic Shopping
59 | P a g e
PayPal payment gateway in NetBeans, create a Sandbox test account for testing PayPal
transaction. We have the Business account and Personal account from your Sandbox account.
Controller has three methods, success (), cancel (), and ipn (). success () method responsible
for displaying the transaction data on payment success. cancel () method is requested on
payment cancel by the buyer. ipn() method gets the transaction data by PayPal IPN and insert
the transaction data into the database.
Online Electronic Shopping
60 | P a g e
CHAPTER 13
TESTING
Software Testing is an empirical investigation conducted to provide stakeholders with
information about the quality of the product or service under test, with respect to the context
in which it is intended to operate. Software Testing also provides an objective, independent
view of the software to allow the business to appreciate and understand the risks at
implementation of the software. Test techniques include, but are not limited to, the process of
executing a program or application with the intent of finding software bugs. It can also be
stated as the process of validating and verifying that a software program/application/product
meets the business and technical requirements that guided its design and development, so that
it works as expected and can be implemented with the same characteristics.
Software Testing, depending on the testing method employed, can be implemented at any time
in the development process, however the most test effort is employed after the requirements
have been defined and coding process has been completed.
13.1 Unit Testing
The primary goal of unit testing is to take the smallest piece of testable software in the
application, isolate it from the remainder of the code, and determine whether it behaves exactly
as you expect. Each unit is tested separately before integrating them into modules to test the
interfaces between modules. Unit testing has proven its value in that a large percentage of
defects are identified during its use.
Unit testing is a software verification and validation method where the programmer gains
confidence that individual units of source code are fit for use. A unit is the smallest testable part of
an application. In procedural programming a unit may be an individual program, function,
procedure, etc., while in object-oriented programming, the smallest unit is a class, which may
belong to a base/super class, abstract class or derived/child class.
Ideally, each test case is independent from the others: substitutes like method stubs, mock
objects, fakes and test harnesses can be used to assist testing a module in isolation. Unit tests
are typically written and run by software developers to ensure that code meets its design and
behaves as intended. Its implementation can vary from being very manual (pencil and paper)
to being formalized as part of build automation.
Online Electronic Shopping
61 | P a g e
13.2 Integration Testing
Integration testing, also known as integration and testing (I&T) is a software development
process which program unit are combined and tested as groups in multiple ways. In this context,
a unit is defined as the smallest testable part of an application. Integration testing can expose
problems with the interfaces among program components before trouble occurs in
real-world program execution. Integration testing is a component of Extreme Programming
(XP), a pragmatic method of software development that takes a meticulous approach to
building a product by means of continual testing and revision.
There are two major ways of carrying out an integration test, called the bottom-up method and the
top-down method. Bottom-up integration testing begins with unit testing, followed by tests of
progressively higher-level combinations of units called modules or builds. In top-down integration
testing, the highest-level modules are tested first and progressively lower-level modules are tested
after that. In a comprehensive software development environment, bottom-up testing is usually
done first, followed by top-down testing.
13.3 Validation Testing
At the validation level, testing focuses on user visible actions and user recognizable output
from the system. Validations testing is said to be successful when software functions in a
manner that can be reasonably expected by the customer. Two types of validation testing
• Alpha testing is simulated or actual operational testing by potential users/customers or
an independent test team at the developers' site. Alpha testing is often employed for
off-the-shelf software as a form of internal acceptance testing, before the software goes
to beta testing.
• Beta testing comes after alpha testing. Versions of the software, known as beta version,
are released to a limited audience outside of the programming team. The software is
released to groups of people so that further testing can ensure the product has few faults
or bugs. Sometimes, beta versions are made available to the open public to increase the
feedback field to a maximal number of future users.
• Grey box testing is the combination of black box and white box testing. Intention of
this testing is to find out defects related to bad design or bad implementation of the
system.it is used for web application.
Online Electronic Shopping
62 | P a g e
CHAPTER 14
SOFTWARE QUALITY ASSURANCE PLAN
Each development and maintenance project should have a Software Quality Assurance Plan
that specifies its goals, the SQA tasks to be performed, the standards against which the
development work is to be measured, and the procedures and organizational structure.
The IEEE Standards for the Software Quality Assurance Plans states that the plan should
contain the following sections:
• Purpose Reference documents
• Management Documentation
• Standards, practices and conventions
• Reviews and Audits
• Configuration Management
• Problem reporting and corrective action
• Tools, techniques and methodologies
• Code Control
• Media Control
• Supplier Control
• Records collection, maintenance and retention.
1. Purpose, Scope and Overview:
The purpose of this Software Quality Assurance (SQA) Plan is to establish the goals, processes,
and responsibilities required to implement effective quality assurance functions for the
ONLINE SHOPPING.
The ONLINE SHOPPING Software Quality Assurance plan provides the framework necessary
to ensure a consistent approach to software quality assurance throughout the project life cycle.
Online Electronic Shopping
63 | P a g e
This plan establishes the SQA activities performed throughout the life cycle of the ONLINE
SHOPPING. Specifically, this SQA Plan will show that the SQA function is in place for this
project. It will show that the SQA group has a reporting channel to senior management that is
independent of the project manager, the project’s software engineering group, and software
related groups that include Software Configuration Management (SCM), System and Software
Test, and Logistics.
The goal of the SQA program is to verify that all software and documentation to be delivered
meet all technical requirements.
2. Reference documents:
Software Quality Assurance, Principles and Practice: Nina S Godbole.
3. Management:
An IEEE standard lays down three aspects that should be covered in the Software Quality
Assurance Plan:
Organization:
The organization section includes the roles of the team members, their hierarchy etc. It is
important that the head of the Software Quality Assurance (SQA) function in the organization
has the adequate authority to be able to perform independent verification that the processes are
adhered to.
The following describes the functional groups that influence and control software quality.
a). Program Management/Line Management (Sponsor) is responsible for:
the following items: Identifying an individual or group independent from the Project to audit
and report on the project’s SQA function.
Identifying the quality factors to be implemented in the system and software.
Online Electronic Shopping
64 | P a g e
b). Project Management is responsible for:
Resolving and following-up on any quality issues raised by SQA.
Identifying, developing and maintaining planning documents Such as the Program
Management Plan.
c). System Engineering is responsible for:
Implementing the engineering practices, processes, and procedures as defined in
program/project planning documents.
d). Software Design/Development is responsible for:
Identifying, implementing, and evaluating the quality factors to be implemented in the
software.
e). Software Test is responsible for:
Verifying, Implementing the software test practices, processes, and procedures as defined in
program/project planning documents.
f). System Test is responsible for:
Verifying the quality factors are implemented in the system (software and hardware).
g). Logistics is responsible for:
Reviewing and commenting on the SQA Plan.
Implementing the quality program in accord ONLINE SHOPPING assurance with this SQA
plan.
Online Electronic Shopping
65 | P a g e
h). Software Configuration Management (SCM) is responsible for:
Implementing the SCM practices, processes, and procedures as defined in reference and other
program/project planning documents.
i). Independent Verification and Validation (IV& V) is responsible for:
Implementing the practices, processes, and procedures as defined for IV&V in program
/project planning documents.
j). Systems Engineering Process Office (SEPO) is responsible for:
Maintaining the SQA Process.
Ensuring SQA training availability.
Providing assistance in software process engineering and software process improvement.
a) Tasks:
An SQA task is performed in relationship to what software development activities are taking
place. One or more SQA tasks can be performed concurrently until a task is completed.
The following are the tasks of SQA plan:
• Evaluate System Requirements Analysis Process
• Evaluate System Design Process
• Evaluate Software Requirements Analysis Process
• Evaluate Software Design Process
• Evaluate Software Tools
• Evaluate Software Implementation and Unit Testing Process
• Evaluate End-item delivery Process
Online Electronic Shopping
66 | P a g e
• Evaluate Configuration Management Process
b) Responsibilities: The project manager and design/development teams have primary
responsibility for the quality controls applied during the development of the software project.
The quality manager will:
Define the responsibilities of quality personnel in the form of quality assurance procedures
applicable to the project.
• Agree to the quality plan with the project manager.
• Approve the plan of the audits for the project which are to be carried out by quality
personnel.
• Resolve any disagreement between the project manager and quality personnel on
matters relating to quality.
• Review the activities performed by project personnel to ensure that the requirements
of the quality plan and quality procedures are being satisfied.
Quality personnel will:
• Carry out planned internal audits of the project to assess compliance with quality
objectives.
• Agree on corrective action with the project manager for any discrepancies, non-
conformities found and ensure that corrective action is taken. Evaluate defect trends
and take appropriate action.
4. Documentation:
The basic purpose of the documentation section of the Software Quality Assurance Plan is to
describe the documentation to be produced and how it is to be reviewed. The documentation
section normally includes the following:
• Software Requirements Specification (SRS)
Online Electronic Shopping
67 | P a g e
• Software Design Description
• Software Verification Plan
• Software Verification report
• Reference to Software Standards (ISO, CMM, IEEE etc) and procedures mentioned
and defined as in the Quality Manual and Quality Management System
• User guides, operators and programmers manual
• Configuration Management Plan
• Software Quality Objectives.
5. Standards, practices and conventions:
To verify the delivery of a fully conforming, high-quality product, every individual assigned
to the project will participate in quality assurance. This section describes the procedures used
by SQA to verify that the quality assurance provisions of this SQA Plan and applicable
standards, practices, conventions, and metrics are met.
The following measurements will be made and used to determine the cost and schedule status
of the SQA activities:
a. SQA milestone dates (planned)
b. SQA milestone dates (completed)
c. SQA work scheduled (planned)
d. SQA work completed (actual)
e. SQA effort expended (planned)
f. SQA effort expended (actual
g. SQA funds expended (planned)
Online Electronic Shopping
68 | P a g e
6. Reviews and Audits:
The review and audits sections of Software Quality Assurance Plan will state which technical
and managerial reviews will be undertaken and how they will be carried out. The ANSI
standard suggests that the following would be a minimum set of reviews:
• Software Requirements Specification Review: This review is held to approve the
document defining the software requirements specifications and it aims to check the
adequacy of the requirements.
• Primary Design Review: The purpose of this review is to approve formally, the
software top-level design document.
• Critical Design Review: The purpose of this review is to approve the software
detailed design document as a basis for further development work.
• Software Verification Review: The purpose of this review is to approve the test plan.
It is the evaluation of the adequacy and completeness of the methods described.
• Functional Audit: This is held to verify that all the requirements in the software
requirements specification have been met.
• Physical Audit: This is held to verify that the software and its documentation are
internally consistent prior to delivery to the user.
• In-Process Audit: In-Process audits of a sample design are held to verify the
consistency of the design.
7. Configuration Management:
This Configuration Management section of the Software Quality Assurance Plan covers
configuration identification, configuration control, configuration status accounting, and
configuration auditing.
8. Problem reporting and corrective action:
This section of the Software Quality Assurance plan describes the system, which ensures that
software problems are documented and resolved. It should be a closed-loop system. All the
problems should be promptly reported at appropriate level, acted upon and resolved. Each
problem should be analysed to determine its significance and causes and classified by category
and each problem must have severity level and a priority number.
Online Electronic Shopping
69 | P a g e
For each problem, some corrective action and a target completion date should be identified.
The appropriate level of management should be made aware of the problems and adverse
trends. The corrective action taken will be evaluated to ensure that it solved the problem
without introducing any new problems. Management should monitor the status of all
unresolved problems.
9. Tools, techniques and methodologies:
Tools - SQA software tools include, but are not limited to, operating system utilities, debugging
aids, documentation aids, checklists, structuring pre-processors, file comparators, structure
analysers, code analysers, standards auditors, simulators, execution analysers, performance
monitors, statistical analysis packages, software development folder/files, software traceability
matrices, test drivers, test case generators, static or dynamic test tools, and information
engineering CASE tools.
Techniques - Techniques include review of the use of standards, software inspections,
requirements tracing, requirements and design verification, reliability measurements and
assessments, and rigorous or formal logic analysis.
Methodologies - Methodologies are an integrated set of the above tools and techniques. The
methodologies should be well documented for accomplishing the task or activity and provide
a description of the process to be used.
10. Code Control:
Code control includes the items listed below:
• Identifying, labelling, and cataloguing the software to be controlled
• Identifying the physical location of the software under control
• Identifying the location, maintenance, and use of backup copies
• Distributing copies of the code
Online Electronic Shopping
70 | P a g e
• Identifying the documentation that is affected by a
• Establishing a new version
• Regulating user access to the code.
11. Media Control:
The Media Control section of the Software Quality Assurance Plan will describe how the media
are to be protected from unauthorized access or damage. Security threats to a software project
come from the following environmental factors:
• Fire Damage
• Water Damage
• Energy Variations
• Structural Damage
• Pollution
• Unauthorized Intrusion
• Viruses and Worms
• Misuse of Software, Data and Services.
12. Supplier Control:
Prior to any purchase of software to support the development effort, SQA and project members
will define and provide complete requirements to the supplier/vendor. The Software Tool
Evaluation Process will be followed. Part of the evaluation process will require the supplier or
vendor to describe their technical support, handling of user questions and problems, and
software product upgrades.
13. Records collection, maintenance and retention:
SQA activities are documented by records and reports that provide a history of product quality
throughout the software life cycle. Measurement data collected will be reviewed for trends and
process improvement.
All SQA records will be collected and maintained in the SDL or archival storage for the life
cycle of the product.
Online Electronic Shopping
71 | P a g e
CHAPTER 15
CONCLUSION
The project entitled “Online Electronic Shopping” is developed using JSP as front end and
MYSQL database in back end to computerize the process of online buying and selling of
mobiles in a showroom. This project covers only the basic features required.
However, a lot of features are already incorporated in this project. The main beneficiaries are
both customers as well as ADMIN who consume more time while dealing with mobiles.
Moreover, extra features can be identified and incorporated in the future In order to
accommodate additional features it will take longer time and effort to understand the
requirement and converting it into computerized system.
Online Electronic Shopping
72 | P a g e
CHAPTER 16
FUTURE SCOPE OF PROJECT
I will fix bugs if they are found. More features will be added into this application.
• Product Review
• Product Rating
• More Payment Gateway
The project made here is just to ensure that this product could be valid in today real challenging
world. Here all the facilities are made and tested. Currently the system works for limited
number of administrators to work. We implement vendor dashboard in this, so that every
product seller can add their products by direct login to the dashboard and add, delete and
modify the products. In near future, it will be extended for many types of insurance policies so
that efficiency can be improved.
Online Electronic Shopping
73 | P a g e
CHAPTER 17
BIBLIOGRAPHY
WEBSITE:
1. NetBeans IDE 8.2 (https://netbeans.org/.com)
2. The Java EE 5 Tutorial ( https://docs.oracle.com/javaee/5/tutorial/doc/)
1. Object-relational impedance mismatch (http://en.wikipedia.org/wiki/Object-
Relational_impedance_mismatch )
2. Bootstrap Theme (https://getbootstrap.com/)
3. Bootstrap module (https:// codepen.io/)
4. http://www.agilemodeling.com/artifacts/dataFlowDiagram.htm for definition of Data
Flow Diagram.
5. http://www.informatik.uni-bremen.de/uniform/gdpa_d/methods/m-fctd.htm for
definition of Functional Decomposition.
BOOKS:
1. JSP 2.0: The Complete Reference, Second Edition | By Phillip Hanna.
2. High Performance MySQL: Optimization, Backups, Replication, and More, by Baron
Schwartz, Peter Zaitsev, Vadim Tkachenko, Jeremy Zawodny, Arjen Lentz, Derek J.
Balling.
3. MySQL: The Complete Reference by Vikram Vaswani
4. Laufer, K. A hike through post-EJB J2EE Web application architecture. Part II.
Computing in Science & Engineering. Volume 8, Issue 2, March-April 2006 Page(s):79
– 87
5. Chris Richardson. Untangling enterprise Java. Queue. Volume 4, Issue 5 (June 2006).
Component Technologies. Pages:36 – 44. 2006. ISSN: 1542-7730

More Related Content

What's hot

Software Requirement Specification Of Hotel Management System
Software Requirement Specification Of Hotel Management SystemSoftware Requirement Specification Of Hotel Management System
Software Requirement Specification Of Hotel Management SystemUttam Singh Chaudhary
 
Documentation of railway reservation system
Documentation of railway reservation systemDocumentation of railway reservation system
Documentation of railway reservation systemSandip Murari
 
Online shopping report-6 month project
Online shopping report-6 month projectOnline shopping report-6 month project
Online shopping report-6 month projectGinne yoffe
 
VTU final year project report
VTU final year project reportVTU final year project report
VTU final year project reportathiathi3
 
e-commerce web development project report (Bookz report)
e-commerce web development project report (Bookz report)e-commerce web development project report (Bookz report)
e-commerce web development project report (Bookz report)Mudasir Ahmad Bhat
 
online-shopping-documentation-srs for TYBSCIT sem 6
 online-shopping-documentation-srs for TYBSCIT sem 6 online-shopping-documentation-srs for TYBSCIT sem 6
online-shopping-documentation-srs for TYBSCIT sem 6YogeshDhamke2
 
Hostel management system Software Engineering SRS
Hostel management system Software Engineering SRSHostel management system Software Engineering SRS
Hostel management system Software Engineering SRSFahad Chishti
 
e-commerce web site project
e-commerce web site projecte-commerce web site project
e-commerce web site projectMahmudul Hasan
 
Local Service Search Engine Management System LSSEMS
Local Service Search Engine Management System LSSEMSLocal Service Search Engine Management System LSSEMS
Local Service Search Engine Management System LSSEMSYogeshIJTSRD
 
Web based online shopping system Presentation slide
Web based online shopping system Presentation  slideWeb based online shopping system Presentation  slide
Web based online shopping system Presentation slideRakibul Hasan Pranto
 
E-commerce documentation
E-commerce documentationE-commerce documentation
E-commerce documentationSohel Parvez
 
Final Year Project of Online Food Ordering System
Final Year Project of Online Food Ordering SystemFinal Year Project of Online Food Ordering System
Final Year Project of Online Food Ordering SystemSidraShehbaz
 
College Management System project
College Management System projectCollege Management System project
College Management System projectManish Kushwaha
 
Harsh Mathur Final Year Project Report on Restaurant Billing System
Harsh  Mathur Final Year Project Report on Restaurant Billing SystemHarsh  Mathur Final Year Project Report on Restaurant Billing System
Harsh Mathur Final Year Project Report on Restaurant Billing SystemHarsh Mathur
 
Banking Management System Project documentation
Banking Management System Project documentationBanking Management System Project documentation
Banking Management System Project documentationChaudhry Sajid
 
BSc CSIT Final Year Project Report on Hamro Krishi - Nepal
BSc CSIT Final Year Project Report on Hamro Krishi - NepalBSc CSIT Final Year Project Report on Hamro Krishi - Nepal
BSc CSIT Final Year Project Report on Hamro Krishi - NepalSirish Paudel
 
Minor project Report for "Quiz Application"
Minor project Report for "Quiz Application"Minor project Report for "Quiz Application"
Minor project Report for "Quiz Application"Harsh Verma
 
Online railway reservation system
Online railway reservation systemOnline railway reservation system
Online railway reservation systemPIYUSH Dubey
 

What's hot (20)

Software Requirement Specification Of Hotel Management System
Software Requirement Specification Of Hotel Management SystemSoftware Requirement Specification Of Hotel Management System
Software Requirement Specification Of Hotel Management System
 
Documentation of railway reservation system
Documentation of railway reservation systemDocumentation of railway reservation system
Documentation of railway reservation system
 
Online shopping report-6 month project
Online shopping report-6 month projectOnline shopping report-6 month project
Online shopping report-6 month project
 
VTU final year project report
VTU final year project reportVTU final year project report
VTU final year project report
 
e-commerce web development project report (Bookz report)
e-commerce web development project report (Bookz report)e-commerce web development project report (Bookz report)
e-commerce web development project report (Bookz report)
 
online-shopping-documentation-srs for TYBSCIT sem 6
 online-shopping-documentation-srs for TYBSCIT sem 6 online-shopping-documentation-srs for TYBSCIT sem 6
online-shopping-documentation-srs for TYBSCIT sem 6
 
Hostel management system Software Engineering SRS
Hostel management system Software Engineering SRSHostel management system Software Engineering SRS
Hostel management system Software Engineering SRS
 
e-commerce web site project
e-commerce web site projecte-commerce web site project
e-commerce web site project
 
Local Service Search Engine Management System LSSEMS
Local Service Search Engine Management System LSSEMSLocal Service Search Engine Management System LSSEMS
Local Service Search Engine Management System LSSEMS
 
Web based online shopping system Presentation slide
Web based online shopping system Presentation  slideWeb based online shopping system Presentation  slide
Web based online shopping system Presentation slide
 
E-commerce documentation
E-commerce documentationE-commerce documentation
E-commerce documentation
 
Final Year Project of Online Food Ordering System
Final Year Project of Online Food Ordering SystemFinal Year Project of Online Food Ordering System
Final Year Project of Online Food Ordering System
 
College Management System project
College Management System projectCollege Management System project
College Management System project
 
Online shopping
Online shoppingOnline shopping
Online shopping
 
Harsh Mathur Final Year Project Report on Restaurant Billing System
Harsh  Mathur Final Year Project Report on Restaurant Billing SystemHarsh  Mathur Final Year Project Report on Restaurant Billing System
Harsh Mathur Final Year Project Report on Restaurant Billing System
 
E farming
E farmingE farming
E farming
 
Banking Management System Project documentation
Banking Management System Project documentationBanking Management System Project documentation
Banking Management System Project documentation
 
BSc CSIT Final Year Project Report on Hamro Krishi - Nepal
BSc CSIT Final Year Project Report on Hamro Krishi - NepalBSc CSIT Final Year Project Report on Hamro Krishi - Nepal
BSc CSIT Final Year Project Report on Hamro Krishi - Nepal
 
Minor project Report for "Quiz Application"
Minor project Report for "Quiz Application"Minor project Report for "Quiz Application"
Minor project Report for "Quiz Application"
 
Online railway reservation system
Online railway reservation systemOnline railway reservation system
Online railway reservation system
 

Similar to Online Electronic Shopping Project Report Final Year

Thesis report 16 bit RISC processor
Thesis report 16 bit RISC processorThesis report 16 bit RISC processor
Thesis report 16 bit RISC processoranuruddhsharma1
 
Project final report
Project final reportProject final report
Project final reportALIN BABU
 
Project report on Eye tracking interpretation system
Project report on Eye tracking interpretation systemProject report on Eye tracking interpretation system
Project report on Eye tracking interpretation systemkurkute1994
 
General Maintenance Standards V0.6
General Maintenance Standards V0.6General Maintenance Standards V0.6
General Maintenance Standards V0.6Bart Den Tijn
 
Bidirectional Visitor Counter for efficient electricity usage.
Bidirectional Visitor Counter for efficient electricity usage.Bidirectional Visitor Counter for efficient electricity usage.
Bidirectional Visitor Counter for efficient electricity usage.NandaVardhanThupalli
 
Project Report Distance measurement system
Project Report Distance measurement systemProject Report Distance measurement system
Project Report Distance measurement systemkurkute1994
 
Steganography final report
Steganography final reportSteganography final report
Steganography final reportABHIJEET KHIRE
 
Thesis report on eye tracking based driver fatigue hardeep singh pec universi...
Thesis report on eye tracking based driver fatigue hardeep singh pec universi...Thesis report on eye tracking based driver fatigue hardeep singh pec universi...
Thesis report on eye tracking based driver fatigue hardeep singh pec universi...HardeepSingh Dhillon
 
Final thesis report on eye tracking based driver fatigue hardeep singh pec un...
Final thesis report on eye tracking based driver fatigue hardeep singh pec un...Final thesis report on eye tracking based driver fatigue hardeep singh pec un...
Final thesis report on eye tracking based driver fatigue hardeep singh pec un...HardeepSingh Dhillon
 
REPORT IBM (1)
REPORT IBM (1)REPORT IBM (1)
REPORT IBM (1)Hamza Khan
 
Bike sharing android application
Bike sharing android applicationBike sharing android application
Bike sharing android applicationSuraj Sawant
 
final report (parking project).pdf
final report (parking project).pdffinal report (parking project).pdf
final report (parking project).pdfgamefacegamer
 
BE Project Final Report on IVRS
BE Project Final Report on IVRSBE Project Final Report on IVRS
BE Project Final Report on IVRSAbhishek Nadkarni
 
Smart Street System
Smart Street SystemSmart Street System
Smart Street SystemLibin Thomas
 
Low Power Context Aware Hierarchical System Design
Low Power Context Aware Hierarchical System DesignLow Power Context Aware Hierarchical System Design
Low Power Context Aware Hierarchical System DesignHoopeer Hoopeer
 
LPG Booking System [ bookmylpg.com ] Report
LPG Booking System [ bookmylpg.com ] ReportLPG Booking System [ bookmylpg.com ] Report
LPG Booking System [ bookmylpg.com ] ReportNandu B Rajan
 

Similar to Online Electronic Shopping Project Report Final Year (20)

Thesis report 16 bit RISC processor
Thesis report 16 bit RISC processorThesis report 16 bit RISC processor
Thesis report 16 bit RISC processor
 
Project final report
Project final reportProject final report
Project final report
 
Project report on Eye tracking interpretation system
Project report on Eye tracking interpretation systemProject report on Eye tracking interpretation system
Project report on Eye tracking interpretation system
 
General Maintenance Standards V0.6
General Maintenance Standards V0.6General Maintenance Standards V0.6
General Maintenance Standards V0.6
 
Bidirectional Visitor Counter for efficient electricity usage.
Bidirectional Visitor Counter for efficient electricity usage.Bidirectional Visitor Counter for efficient electricity usage.
Bidirectional Visitor Counter for efficient electricity usage.
 
Tilak's Report
Tilak's ReportTilak's Report
Tilak's Report
 
Project Report Distance measurement system
Project Report Distance measurement systemProject Report Distance measurement system
Project Report Distance measurement system
 
Plc report
Plc report Plc report
Plc report
 
Steganography final report
Steganography final reportSteganography final report
Steganography final report
 
plasma cutting.pdf
plasma cutting.pdfplasma cutting.pdf
plasma cutting.pdf
 
Thesis report on eye tracking based driver fatigue hardeep singh pec universi...
Thesis report on eye tracking based driver fatigue hardeep singh pec universi...Thesis report on eye tracking based driver fatigue hardeep singh pec universi...
Thesis report on eye tracking based driver fatigue hardeep singh pec universi...
 
Final thesis report on eye tracking based driver fatigue hardeep singh pec un...
Final thesis report on eye tracking based driver fatigue hardeep singh pec un...Final thesis report on eye tracking based driver fatigue hardeep singh pec un...
Final thesis report on eye tracking based driver fatigue hardeep singh pec un...
 
REPORT IBM (1)
REPORT IBM (1)REPORT IBM (1)
REPORT IBM (1)
 
Bike sharing android application
Bike sharing android applicationBike sharing android application
Bike sharing android application
 
final report (parking project).pdf
final report (parking project).pdffinal report (parking project).pdf
final report (parking project).pdf
 
BE Project Final Report on IVRS
BE Project Final Report on IVRSBE Project Final Report on IVRS
BE Project Final Report on IVRS
 
Smart Street System
Smart Street SystemSmart Street System
Smart Street System
 
Low Power Context Aware Hierarchical System Design
Low Power Context Aware Hierarchical System DesignLow Power Context Aware Hierarchical System Design
Low Power Context Aware Hierarchical System Design
 
Thesis small
Thesis smallThesis small
Thesis small
 
LPG Booking System [ bookmylpg.com ] Report
LPG Booking System [ bookmylpg.com ] ReportLPG Booking System [ bookmylpg.com ] Report
LPG Booking System [ bookmylpg.com ] Report
 

Recently uploaded

Jaipur ❤CALL GIRL 0000000000❤CALL GIRLS IN Jaipur ESCORT SERVICE❤CALL GIRL IN...
Jaipur ❤CALL GIRL 0000000000❤CALL GIRLS IN Jaipur ESCORT SERVICE❤CALL GIRL IN...Jaipur ❤CALL GIRL 0000000000❤CALL GIRLS IN Jaipur ESCORT SERVICE❤CALL GIRL IN...
Jaipur ❤CALL GIRL 0000000000❤CALL GIRLS IN Jaipur ESCORT SERVICE❤CALL GIRL IN...jabtakhaidam7
 
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...Arindam Chakraborty, Ph.D., P.E. (CA, TX)
 
Design For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the startDesign For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the startQuintin Balsdon
 
Digital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptxDigital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptxpritamlangde
 
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...drmkjayanthikannan
 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptDineshKumar4165
 
DC MACHINE-Motoring and generation, Armature circuit equation
DC MACHINE-Motoring and generation, Armature circuit equationDC MACHINE-Motoring and generation, Armature circuit equation
DC MACHINE-Motoring and generation, Armature circuit equationBhangaleSonal
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfJiananWang21
 
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...Amil baba
 
Introduction to Data Visualization,Matplotlib.pdf
Introduction to Data Visualization,Matplotlib.pdfIntroduction to Data Visualization,Matplotlib.pdf
Introduction to Data Visualization,Matplotlib.pdfsumitt6_25730773
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXssuser89054b
 
Employee leave management system project.
Employee leave management system project.Employee leave management system project.
Employee leave management system project.Kamal Acharya
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdfKamal Acharya
 
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARHAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARKOUSTAV SARKAR
 
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...Call Girls Mumbai
 
Double Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torqueDouble Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torqueBhangaleSonal
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptxJIT KUMAR GUPTA
 
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxA CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxmaisarahman1
 

Recently uploaded (20)

FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced LoadsFEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
 
Jaipur ❤CALL GIRL 0000000000❤CALL GIRLS IN Jaipur ESCORT SERVICE❤CALL GIRL IN...
Jaipur ❤CALL GIRL 0000000000❤CALL GIRLS IN Jaipur ESCORT SERVICE❤CALL GIRL IN...Jaipur ❤CALL GIRL 0000000000❤CALL GIRLS IN Jaipur ESCORT SERVICE❤CALL GIRL IN...
Jaipur ❤CALL GIRL 0000000000❤CALL GIRLS IN Jaipur ESCORT SERVICE❤CALL GIRL IN...
 
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
 
Design For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the startDesign For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the start
 
Digital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptxDigital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptx
 
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.ppt
 
DC MACHINE-Motoring and generation, Armature circuit equation
DC MACHINE-Motoring and generation, Armature circuit equationDC MACHINE-Motoring and generation, Armature circuit equation
DC MACHINE-Motoring and generation, Armature circuit equation
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdf
 
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
 
Introduction to Data Visualization,Matplotlib.pdf
Introduction to Data Visualization,Matplotlib.pdfIntroduction to Data Visualization,Matplotlib.pdf
Introduction to Data Visualization,Matplotlib.pdf
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 
Employee leave management system project.
Employee leave management system project.Employee leave management system project.
Employee leave management system project.
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
 
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARHAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
 
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
Bhubaneswar🌹Call Girls Bhubaneswar ❤Komal 9777949614 💟 Full Trusted CALL GIRL...
 
Double Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torqueDouble Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torque
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
 
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxA CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
 

Online Electronic Shopping Project Report Final Year

  • 1. A Project Report On ONLINE ELECTRONIC SHOPPING Submitted In partial fulfillment of requirements for the degree of Bachelor of Technology In Computer Science & Engineering Submitted by ABHISHEK SINGH CHAUHAN (1474810001) AMIT KUMAR VERMA (1474810003) ARNIKA GUPTA (1474810009) KULENDRA SINGH YADAV (1474810013) Under the supervision of Mr. CHANDRABHAN SINGH (HEAD OF DEPARTMENT) Department of Computer Science & Engineering Dr. A.P.J. Abdul Kalam Technical University, Lucknow April 2018
  • 2. i Contents DECLARATION .................................................................................................................................................. III CERTIFICATE ..................................................................................................................................................... IV ACKNOWLEDGEMENT ..................................................................................................................................... V ABSTRACT ......................................................................................................................................................... VI LIST OF FIGURES ............................................................................................................................................. VII LIST OF SNAPSHOTS ..................................................................................................................................... VIII LIST OF ABBREVIATIONS .............................................................................................................................. IX CHAPTER 1 (INTRODUCTION) ...................................................................................................................... 1 CHAPTER 2 ( PROJECT OVERVIEW).......................................................................................................... 2 CHAPTER 3 (SYSTEM STUDY) ....................................................................................................................... 3 3.1 EXISTING SYSTEM ............................................................................................................................................. 3 3.2 DRAWBACKS IN THE EXISTING SYSTEMS............................................................................................................ 3 CHAPTER 4 (SYSTEM ANALYSIS)................................................................................................................. 4 4.1 PURPOSE............................................................................................................................................................ 4 4.2 SCOPE................................................................................................................................................................ 4 4.3 NEED FOR THE PROPOSED SYSTEM:.................................................................................................................... 4 4.4 FEASIBILITY STUDY:.......................................................................................................................................... 5 4.4.1 Technical Feasibility:........................................................................................................................... 5 4.4.2 Financial Feasibility:............................................................................................................................ 5 4.4.3 Operational Feasibility:........................................................................................................................ 6 CHAPTER 5 (SOFTWARE REQUIREMENTS SPECIFICATION)............................................................. 7 5.1 PERFORMANCE REQUIREMENTS: ....................................................................................................................... 7 5.2 NON-FUNCTIONAL REQUIREMENTS:.................................................................................................................. 7 5.3 VARIOUS OTHER NON-FUNCTIONAL REQUIREMENTS ARE:................................................................................. 8 5.4 HARDWARE INTERFACE:.................................................................................................................................... 8 CHAPTER 6 (TECHNOLOGICAL BACKGROUND).................................................................................... 9 6.1 THE TOOLS USED TO DEVELOP THE SHOPPING CART INCLUDE:........................................................................... 9 CHAPTER 7 (SYSTEM ANALYSIS & DESIGN).......................................................................................... 10 7.1 USE CASES: ..................................................................................................................................................... 10 7.1.1 Customer Interface............................................................................................................................. 11 7.1.2 Admin Interface ................................................................................................................................. 13 7.2 SEQUENCE DIAGRAMS..................................................................................................................................... 14 7.2.1 Admin Interface ................................................................................................................................. 15 7.2.2 Customer Interface............................................................................................................................. 16 CHAPTER 8 (SYSTEM DESIGN SPECIFICATION)................................................................................... 17 8.1 ARCHITECTURAL DESIGN........................................................................................................................ 17 8.1.1 DATA FLOW DIAGRAMS:............................................................................................................. 17 8.2 DFD CONTEXT LEVEL:.................................................................................................................................... 19 8.2.1 DFD Level 1: ..................................................................................................................................... 20 8.2.2 DFD LEVEL 2:.................................................................................................................................. 21 8.3 PHYSICAL TRANSACTION: ............................................................................................................................... 22 8.4 LOGIN:............................................................................................................................................................. 23 8.5 REGISTRATION: ............................................................................................................................................... 23 8.6 INTIMATION:.................................................................................................................................................... 24 CHAPTER 9 (DATABASE DESIGN) .............................................................................................................. 25 9.1 DATABASE STRUCTURE................................................................................................................................... 25 9.2 E-R DIAGRAM ................................................................................................................................................. 30
  • 3. ii 9.2.1 Connectivity and Cardinality ............................................................................................................. 30 9.2.2 E-R Notation ...................................................................................................................................... 31 9.3 E-R DIAGRAM (ONLINE SHOPPING)................................................................................................................. 32 9.4 FUNCTIONAL DIAGRAM:.................................................................................................................................. 33 CHAPTER 10 (USER INTERFACE DESIGN)............................................................................................... 34 10.1 USER INTERFACE DESIGN:............................................................................................................................. 34 CHAPTER 11 (IMPLEMENTATION TECHNOLOGIES)........................................................................... 42 11.1 BACK-END WEB DEVELOPMENT TECHNOLOGY ............................................................................................ 42 11.2 JSP ARCHITECTURE....................................................................................................................................... 43 11.3 INTEGRATING THE WEBSITE AND DATABASE ................................................................................................ 44 11.4 ONLINE ELECTRONIC SHOPPING APPLICATION.............................................................................................. 45 11.4.4 MySQL Database............................................................................................................................. 53 11.5 BACK-END WEB DEVELOPMENT TECHNOLOGY ............................................................................................ 53 11.6 NETBEANS IDE (FRAMEWORK)..................................................................................................................... 55 11.6.1 NetBeans Features............................................................................................................................ 55 11.6.2 NetBeans Uses ................................................................................................................................. 55 CHAPTER 12 (INTEGRATING THE WEB APPLICATION)..................................................................... 57 12.1 WEB BASED APPLICATION DEVELOPMENT.................................................................................................... 57 12.2 INTEGRATION OF PAYMENT GATEWAY (PAYPAL)......................................................................................... 58 CHAPTER 13 (TESTING) ................................................................................................................................ 60 13.1 UNIT TESTING................................................................................................................................................ 60 13.2 INTEGRATION TESTING.................................................................................................................................. 61 13.3 Validation Testing ........................................................................................................................................ 61 CHAPTER 14 (SOFTWARE QUALITY ASSURANCE PLAN)................................................................... 62 CONCLUSION................................................................................................................................................... 71 FUTURE SCOPE OF PROJECT ..................................................................................................................... 72 BIBLIOGRAPHY............................................................................................................................................... 73
  • 4. iii DECLARATION I hereby declare that this submission is our own work and that to the best of our knowledge and beliefs. It contains no material previously published or written by neither any person nor material which to a substantial extent has been accepted for the award of any other degree or diploma of the university or other institute of higher learning, except where due acknowledgement has been made in the text. Signature: Name: Abhishek Chauhan Roll No. :1474810001 Date:24/04/2018 Signature: Name: Amit Verma Roll No. :1474810003 Date:24/04/2018 Signature: Name: Arnika Gupta Roll No. :1474810009 Date:24/04/2018 Signature: Name: Kulendra Singh Yadav Roll No. :1474810013 Date:24/04/2018
  • 5. iv CERTIFICATE This is to certify that Project report entitled “ONLINE ELECTRONIC SHOPPING”, submitted by Abhishek Singh Chauhan, Amit Verma, Arnika Gupta, Kulendra Singh Yadav for partial fulfilment of the requirement for the award of degree Bachelors of Technology in Department of Computer Science & Engineering of Dr. A.P.J Abdul Kalam University, Lucknow is a record of the candidates’ own work carried out by them under my supervision. The matter embodied in this report is original and has not been submitted for the award of any other degree. Date: Supervisor 24/04/2018 Mr. Chandrabhan Singh (Head of Department)
  • 6. v ACKNOWLEDGEMENT In completing this project, we have been fortunate enough to have help, support and encouragement from many people. I would like to acknowledge them for their cooperation. Firstly, we would like to thank Mr. Chandrabhan Singh, HOD Department of Computer Science & Engineering, Ansal Technical Campus, Lucknow; for guiding us through each and every step of the process with knowledge and support. His thoughts have been a constant source of inspiration for us. We would also like to acknowledge the contribution of all faculty members of the department for their kind assistance, suggestions and cooperation throughout the development of the project. Finally, we would like to thank our classmates for the encouragement and help during the project. Signature: Name: Abhishek Chauhan Roll No. :1474810001 Date:24/04/2018 Signature: Name: Amit Verma Roll No. :1474810003 Date:24/04/2018 Signature: Signature: Name: Arnika Gupta Name: Kulendra Singh Yadav Roll No. :1474810009 Roll No. :1474810013 Date:24/04/2018 Date:24/04/2018
  • 7. vi ABSTRACT The business-to-consumer aspect of electronic commerce (e-commerce) is the most visible business use of the World Wide Web. The primary goal of an e-commerce site is to sell goods and services online. This project deals with developing an e-commerce website ‘Online Electronic Shopping’. It provides the user with a catalog of different mobiles available for purchase in the store. In order to facilitate online purchase a shopping cart is provided to the user. After selection of the items, he is forwarded to Payment Gateway process. The system is implemented using a 3-tier approach, with a backend database, a middle tier of Sun J2EE 1.4 application server and JSP, and a web browser as the front-end client. In order to develop an e-commerce website, a number of technologies must be studied and understood. These include multi-tiered architecture, server and client-side scripting techniques, implementation technologies such as JSP, programming language (such as JAVA, JavaScript, and Bootstrap), relational databases (such as MySQL). This is a project chosen with the objective to develop a basic website where a consumer is provided with a shopping cart application and also to know about the technologies used to develop such an application.
  • 8. vii LIST OF FIGURES FIGURE 7.1: USE CASE DIAGRAM (CUSTOMER INTERFACE).................................................................................. 10 FIGURE 7.1.2: USE CASE DIAGRAM (ADMIN INTERFACE)...................................................................................... 13 FIGURE 7.2.1: SEQUENCE DIAGRAM (ADMIN INTERFACE)..................................................................................... 15 FIGURE 7.2.2: SEQUENCE DIAGRAM (USER’S INTERFACE) .................................................................................... 16 FIGURE 8.2: DFD CONTEXT LEVEL....................................................................................................................... 19 FIGURE 8.2.1: DFD LEVEL 1 ................................................................................................................................. 20 FIGURE 8.2.2: DFD LEVEL 2 ................................................................................................................................. 21 FIGURE 8.3: DFD PHYSICAL TRANSACTION .......................................................................................................... 22 FIGURE 8.4: DFD LOGIN PROCESS ........................................................................................................................ 23 FIGURE 8.5: DFD REGISTRATION PROCESS........................................................................................................... 23 FIGURE 8.6: DFD INTIMATION .............................................................................................................................. 24 FIGURE 9.3: E-R DIAGRAM ................................................................................................................................... 32 FIGURE 9.4: FUNCTIONAL DIAGRAM ..................................................................................................................... 33 FIGURE:10.3 ALL PRODUCT PAGE......................................................................................................................... 35 FIGURE:10.4 ALL SINGLE PAGE ............................................................................................................................ 36 FIGURE:10.5 VIEW CART PAGE ............................................................................................................................. 36 FIGURE:10.6 SHIPPING ADDRESS PAGE ................................................................................................................. 37 FIGURE:10.7 ONLINE PAYMENT PAGE................................................................................................................... 37 FIGURE:10.8 SEARCH PAGE................................................................................................................................... 38 FIGURE:10.9 LOGIN PAGE ..................................................................................................................................... 38 FIGURE:10.10 SIGNUP PAGE.................................................................................................................................. 39 FIGURE:10.11 ADMIN LOGIN PAGE ....................................................................................................................... 39 FIGURE:10.12 INSERT PRODUCT DETAIL PAGE ..................................................................................................... 40 FIGURE:10.13 VIEW PRODUCT PAGE..................................................................................................................... 40 FIGURE:10.14 ORDER VIEW PAGE......................................................................................................................... 41 FIGURE:11.1 BACK END DEVELOPMENT & FRAMEWORK ..................................................................................... 42 FIGURE:11.2 JSP ARCHITECTURE.......................................................................................................................... 43
  • 9. viii LIST OF SNAPSHOTS SNAPSHOT 9.1: CART TABLE ................................................................................................................................. 25 SNAPSHOT 9.2: PRODUCT DETAIL TABLE............................................................................................................... 26 SNAPSHOT 9.3: REGISTRATION TABLE................................................................................................................... 26 SNAPSHOT 9.4: ORDER TABLE ............................................................................................................................... 27 SNAPSHOT 9.5: FINAL PRODUCT DETAIL TABLE..................................................................................................... 27 SNAPSHOT 9.6: FEATURE TABLE.......................................................................................................................... 28 SNAPSHOT 9.7: CATEGORY DETAIL TABLE............................................................................................................ 28 SNAPSHOT 9.8: SHIPPING ADDRESS TABLE............................................................................................................. 29
  • 10. ix LIST OF ABBREVIATIONS DB Database DFD Data Flow Diagram ER Entity-Relationship UI User Interface Design JSP Java Server Pages MVC Model-View-Controller SRS System Requirements Specification
  • 11. Online Electronic Shopping 1 | P a g e CHAPTER 1 INTRODUCTION Online Electronic shopping is the process whereby consumers directly buy goods, services etc. from a seller interactively in real-time without an intermediary service over the internet. Online shopping is the process of buying goods and services from merchants who sell on the Internet. Since the emergence of the World Wide Web, merchants have sought to sell their products to people who surf the Internet. Shoppers can visit web stores from the comfort of their homes and shop as they sit in front of the computer. Consumers buy a variety of items from online stores. In fact, people can purchase just about anything from companies that provide their products online. Mobiles and Laptops are among the hundreds of products consumers can buy from an online store. Many people choose to conduct shopping online because of the convenience. For example, when a person shops at a brick-and-mortar store, she has to drive to the store, find a parking place, and walk throughout the store until she locates the products she needs. After finding the items she wants to purchase, she may often need to stand in long lines at the cash register. Despite the convenience of online shopping, not everyone chooses to purchase items and services online. Some people like the idea of physically going to a store and experiencing the shopping process. Online shopping doesn't permit shoppers to touch products or have any social interaction. It also doesn't allow them to take the merchandise home the same day they buy it. Online shopping allows you to browse through endless possibilities, and even offers merchandise that's unavailable in stores. If you're searching for a nice product that may not be distributed locally, you're sure to find what you're looking for on the internet. What's even more useful is the ability to compare items, similar or not, online. You can search through multiple stores at the same time, comparing material quality, sizes and pricing simultaneously. Say 'goodbye' to the days when you stood in line waiting, and waiting, and waiting some more for a store clerk to finally check out your items. Online shopping transactions occur instantly- saving you time to get your other errands done! Additionally, unlike a store, online shopping has friendly customer service representatives available 24 hours a day, 7 days a week to assist you with locating, purchasing and shipping your merchandise.
  • 12. Online Electronic Shopping 2 | P a g e CHAPTER 2 PROJECT OVERVIEW Once customer visited our webpage, at that time automatically one shopping cart will be created, once user select an item it will be added to cart. In case user thinks the selected item is not useful for me, then he can delete that item from shopping cart. Suppose a customer selected some items, but in his credit or debit cart hasn’t that much balance, then he does logout from the website, the selected items are stored at cart with specific users with his allotted carts, after some days he bought those items then automatically items get deleted from the cart.
  • 13. Online Electronic Shopping 3 | P a g e CHAPTER 3 SYSTEM STUDY Information system’s projects originate from many reasons: • To achieve greater speed in processing data, • Better accuracy and improved consistency, • Faster information retrieval, • Integration of business areas, • Reduced cost and better security. The sources also vary project proposals originate with department managers, senior executives and systems analysis. Sometimes the real origin is an outside source, such as a government agency which stipulates a system’s requirements the organisation must meet. When the request is made, the first system’s activity, the preliminary investigation, begins. The activity has three parts: • Request clarification, • Feasibility study and • Request approval. 3.1 Existing System The existing system was an automated system. But it was found to be inefficient in meeting the growing demands of population. 3.2 Drawbacks in the existing systems Disadvantage of the existing system: • Time Consuming • Expensive • Needed an agent
  • 14. Online Electronic Shopping 4 | P a g e CHAPTER 4 SYSTEM ANALYSIS • This system is all about the converting the shopping system from manual to online. • Customer can buy products online after login to the site. • Administrator is adding product to database. • Administrator can edit or delete the products from the database. • After buying and making payment the products are send to customer’s address that he has given. 4.1 Purpose Online Electronic shopping tries to enhance access to care and improve the continuity and efficiency of services. Depending on the specific setting and locale, case managers are responsible for a variety of tasks, ranging from linking clients to services to actually providing intensive shopping and delivery services themselves. Main objective: - • To shop while in the comfort of your own home, without having to step out of the door. • Sell at lower rate due to less overhead. • Provide home delivery free of cost. • No wait to see the product, if someone else is taking that. 4.2 Scope This product has great future scope. Online shopping Internet software developed on and for the Windows and later versions environments and Linux OS. This project also provides security with the use of Login-id and Password, so that any unauthorized users cannot use your account. The only Authorized that will have proper access authority can access the software.
  • 15. Online Electronic Shopping 5 | P a g e 4.3 Need for the proposed system: The online shopping is an easy to maintain, ready to run, scalable, affordable and reliable cost saving tool from Software Associates suited for small, medium, and large shopping complex and shopping malls. Features and Benefits: • Providing security • Low cost • Basic computer knowledge required • Configurable and extensible application UI design The proposed system can be used even by the naïve users and it does not require any educational level, experience, and technical expertise in computer field but it will be of good use if the user has the good knowledge of how to operate a computer. 4.4 Feasibility study: A feasibility study is a short, focused study, which aims to answer a number of questions: • Does the system contribute to the overall objectives of the organizations? • Can the system be implemented using current technology and within given cost and schedule constrains? • Can the system be integrated with systems which are already in place? 4.4.1 Technical Feasibility: • Is the project feasibility within the limits of current technology? • Does the technology exist at all? • Is it available within given resource constraints (i.e., budget, schedule)? 4.4.2 Financial Feasibility: • Is the project possible, given resource constraints? • Are the benefits that will accrue from the new system worth the costs?
  • 16. Online Electronic Shopping 6 | P a g e • What are the savings that will result from the system, including tangible and intangible ones? • What are the development and operational costs? 4.4.3 Operational Feasibility: Define the urgency of the problem and the acceptability of any solution; if the system is developed, will it be used? Includes people-oriented and social issues: internal issues, such as manpower problems, labour objections, manager resistance, organizational conflicts and policies; also, external issues, including social acceptability, legal aspects and government regulations.
  • 17. Online Electronic Shopping 7 | P a g e CHAPTER 5 SOFTWARE REQUIREMENTS SPECIFICATION System requirements are expressed in a software requirement document. The Software Requirements Specification (SRS) is the official statement of what is required by the system developers. This requirement document includes the requirements definition and the requirements specification. The software requirement document is not a design document. It should set out what the system should do without specifying how it should be done. The requirement set out in this document is complete and consistent. The software specification document satisfies the following: - • It specifies the external system behaviour. • It specifies constraints on the implementation. • It is easy to change. • It serves as reference tool for system maintainers. • It records forethought about the life cycle of the system. • It characterizes acceptable response to undesired events. 5.1 Performance Requirements: In order to maintain an acceptable speed at maximum number of uploads allowed from a particular customer will be any number of users can access the system at any time. It also connections to the servers will be based on the criteria of attributes of the user like his location, and server will be working whole 24X 7 times. 5.2 Non-Functional Requirements: Following Non-functional requirements will be there in the Insurance on internet: • Secure access of confidential data (customer’s details). • 24 X 7 availability. • Better component design to get better performance at peak time. • Flexible service-based architecture will be highly desirable for future extension.
  • 18. Online Electronic Shopping 8 | P a g e Non-functional requirements define system properties and constraints. It arises through user needs, because of budget constraints or organizational policies, or due to the external factors such as safety regulations, privacy registration and so on. 5.3 Various other Non-functional requirements are: • Security • Reliability • Maintainability • Portability • Extensibility • Reusability • Application Affinity/Compatibility • Resource Utilization 5.4 Hardware Interface: Hardware requirements for Insurance on internet will be same for both the parties which are follows: • Processor: - Core i5 and above • RAM: - 2 GB • HD: - 50 GB • NIC: - For each party
  • 19. Online Electronic Shopping 9 | P a g e CHAPTER 6 TECHNOLOGICAL BACKGROUND 6.1 The tools used to develop the shopping cart include: • JAVA programming language • Java Server Pages (JSP) server-side scripting technology • MySQL database server • JavaScript • HTML • BOOTSTRAP Java was designed to have the look and feel of the C++ language, but it is simpler to use than C++ and enforces an object-oriented programming model. Java can be used to create complete applications that may run on a single computer or be distributed among servers and clients in a network. Java Server Pages (JSP) is a technology that helps software developers create dynamically generated web pages based on HTML, XML, or other document types. MySQL is a very fast, robust, relational database management system (RDBMS). A database enables the users to efficiently store, search, sort, and retrieve data. Alongside HTML and CSS, JavaScript is one of the three core technologies of the World Wide Web. JavaScript enables interactive web pages and thus is an essential part of web applications.
  • 20. Online Electronic Shopping 10 | P a g e CHAPTER 7 SYSTEM ANALYSIS & DESIGN The system was analysed and designed before implementation began. In this section, use cases, sequence diagrams, and webpage diagrams are described in details. 7.1 Use Cases: The following use cases outline the requirements for the online shopping. They have been revised during the course of the project to more accurately reflect the system. 7.1.1 Customer Interface Customer Figure 7.1: Use Case Diagram (Customer Interface)
  • 21. Online Electronic Shopping 11 | P a g e 1. Customer shops for a product The customer initiates this action by clicking on the desired category for item to be displayed. The page sends a message to the server requesting a listing of all products from the particular category from the database. The action is complete when a page is returned for the customer to view, which contains available products with product names along with their picture, price, capacity, and an option to add the product to the shopping cart. There is an option to link to next page, if more products are available than can fit on the page. If a given item is out of stock, a drop-down button with a message “not available” is displayed. 2. Customer searches for item The customer starts this action by typing a query into a text box named description to search for description of an item. The page sends a message to the server asking for a listing of products, whose names match the query, from the database. The action is complete when a page is returned for the customer to view, which contains a list of the resulting products along with their picture, price, and an option to add the product to the shopping cart. If a given description doesn’t match with any descriptions in the database, a message indicating such is displayed instead of the option to add to cart. The customer can also search for an item using model number or combination of both description and model. 3. Customer adds an item to cart The customer initiates this action by clicking on the buy button on the right side of to a product’s listing. An item is added to the cart including the price and displayed with the total price. If the product already exists in the customer’s cart, its quantity is increased by 1. There is a Continue Shopping button for the customer to continuing shopping for other products. 4. Customer views cart The customer initiates this action by clicking on the view cart button, available on any webpage. The page sends message to the server and shows a list of all products in the customer’s cart, along with their quantity and total price.
  • 22. Online Electronic Shopping 12 | P a g e 5. Customer removes item from cart The customer starts this action by clicking on the Remove button on the view cart page. The web page sends a message to the server, which removes the product from the customer’s shopping cart. 6. Customer changes quantity from cart The customer starts this action by changing the quantity of the item and clicking on the Change button on the view cart page. The web page sends a message to the server, which updating the product from the customer’s shopping cart. 7. Customer checks out The customer starts this action by click on checkout button the on the view cart page. A check out page is displayed letting the customer to create a new account or sign in depending the customer status. An existing customer would sign in his/her email address and password and click sign in button. The web page is sending the message to the server. Then, the server validated the email address and password from the database. If they are both correct, then a shipping and billing information page is displayed letting the customer to fill out the information. After submitting billing and shipping information, a confirmation page is displayed showing item in the customer’s cart and billing and shipping information. 8. Customer sends order The customer starts this action by clicking on the send order from Confirm Information page. Once send order button is clicked, the page is sending the message to the server, which sends emails to the customer and sale person. It also stores the customer’s cart and billing and shipping information into the database.
  • 23. Online Electronic Shopping 13 | P a g e 7.1.2 Admin Interface Admin Figure 7.1.2: Use case Diagram (Admin Interface)
  • 24. Online Electronic Shopping 14 | P a g e 1. Admin logs in The admin starts this action by inputting the username and password and clicking on the submit button. The page is sent the message to the server to validate the information from the database. After successful validation, the logged in page is returned with options for the admin to add, modify, or delete products, or query information. 2. Admin inserts item The admin starts this action by clicking the Input Items button from the logged in page. The page is displayed with a form for the admin to insert item and its details. Once Insert button is clicked, the web page sends this information to the server, which in turns stores it in the database. 3. Admin removes item The admin starts this action by clicking on the Remove Items button. The web page is displayed a dropdown menu for the admin to send the item he/she wants to delete. Once, delete button is clicked, the page is send message to the server which in turns tells the database to remove the item 4. Admin modifies item The admin starts this action by clicking on the Modify Items button. The web page is displayed a list available product from the database. The admin then chooses the item he/she wants to modify by clicking on particular item. A page is displayed letting the admin to modify all item information, except its UPC code and model name. Once, the Modify button is clicked, the web page sends a message to the server, which updating the information from the database. 7.2 Sequence Diagrams The next step is to develop scenarios through sequence diagrams. The sequence diagram below outlines the requirements for online shopping.
  • 25. Online Electronic Shopping 15 | P a g e 7.2.1 Admin Interface Login Validate Check validity Input Items Add Category Back to Form Delete/Modify Items Display Results Input into Table Logout Delete / Overwrite items Figure 7.2.1: Sequence Diagram (Admin Interface) Front End Back End Database
  • 26. Online Electronic Shopping 16 | P a g e 7.2.2 Customer Interface Figure 7.2.2: Sequence Diagram (User’s Interface) Front End: web browser; Back End: web server; DB: database server
  • 27. Online Electronic Shopping 17 | P a g e CHAPTER 8 SYSTEM DESIGN SPECIFICATION 8.1 ARCHITECTURAL DESIGN 8.1.1 DATA FLOW DIAGRAMS: Data flow diagrams (DFD) was first developed by LARRY CONSTANTINE as way representing system requirements in a graphical form; this lead to modular design. A DFD describes what data flow (logical) rather than how they are processed, so it does not depend on hardware, software, data structure or file organization. It is also known as ‘bubble chart’. A Data Flow Diagrams is a structured analysis and design tool that can be used for flowcharting in place of, or in association with, information-oriented and process-oriented systems flowcharts. A DFD is a network that describes the flow of data and the processes that change, or transform, data throughout a system. This network is constructed by using a set of symbols that do not imply a physical implementation. It has the purpose of clarifying system requirements and identifying major transformations that will become programs in system design. So, it is the starting point of the design phase that functionality decomposes the requirement specifications down to the lowest level of detail. 20 The symbols used to prepare DFD do not imply a physical implementation, a DFD can be considered to an abstract of the logic of an information-oriented or a process-oriented system flow-chart. For these reasons DFDs are often referred to as logical data flow diagrams. The four basic symbols used to construct data flow diagrams are shown below: A rectangle represents a data source or destination. A directed line represents the flow of data that is data stream.
  • 28. Online Electronic Shopping 18 | P a g e An enclosed figure, usually a circle or an oval bubble represent a process that transforms data streams. An open-ended rectangle represents data storage.
  • 29. Online Electronic Shopping 19 | P a g e 8.2 DFD Context Level: Figure 8.2: DFD Context Level The System is recognized as a complete system “Cart System. Admin, Users, Shipping Agent are the main actors for this system.
  • 30. Online Electronic Shopping 20 | P a g e 8.2.1 DFD Level 1: Figure 8.2.1: DFD Level 1 User can Log-in, add, remove items to cart, register, pay. Admin can have privileged login, they can change, modify catalogue, maintain user data. After adding items to cart they can make order. The orders are stored in order database. The orders are processed and items from the warehouse are delivered to customer by shipping agent.
  • 31. Online Electronic Shopping 21 | P a g e 8.2.2 DFD LEVEL 2: Figure 8.2.2: DFD Level 2 Customer/User can browse the catalogue and can add items to their cart for ordering. Moreover, Customer can remove items from their cart. and after adding items to their cart they can checkout and move to Ordering. For Order a customer need to be log-in.
  • 32. Online Electronic Shopping 22 | P a g e 8.3 Physical Transaction: Figure 8.3: DFD Physical Transaction At the time of delivery, A shipping Agent which will take the items from warehouse along with the bill and deliver the item to customer. Customer will pay the respective bill and the bill will be stored in transaction database. For keeping record of cash transaction, we have a transaction database which will store bill amount and bill id.
  • 33. Online Electronic Shopping 23 | P a g e 8.4 Login: Figure 8.4: DFD Login Process User enter their login-id along with password. If the entered data is valid combination, then home page will be displayed otherwise a message intimating user about them in-appropriate login details. 8.5 Registration: Figure 8.5: DFD Registration Process
  • 34. Online Electronic Shopping 24 | P a g e 8.6 Intimation: Figure 8.6: DFD Intimation After placing Order Customer will be intimated by order confirmation mail and sending a SMS containing order details and delivery time. Profile database will be used to get email-id and mobile number of customer.
  • 35. Online Electronic Shopping 25 | P a g e CHAPTER 9 DATABASE DESIGN 9.1 Database Structure In this project, MySQL is used as the backend database. MySQL is an open source database management system. Here we are including the details of each details. 1. Database (Cart) SNAPSHOT:9.1 Cart table
  • 36. Online Electronic Shopping 26 | P a g e 2. Database (Product detail) SNAPSHOT:9.1 Product detail table 3. Database (Registration) SNAPSHOT:9.3 Registration table
  • 37. Online Electronic Shopping 27 | P a g e 4. Database (Order) SNAPSHOT:9.4 Order table 5. Database (Final Product detail) SNAPSHOT:9.5 Final product detail table
  • 38. Online Electronic Shopping 28 | P a g e 6. Database (Feature) SNAPSHOT:9.6 Feature table 7. Database (Category detail) SNAPSHOT:9.7 Category detail table
  • 39. Online Electronic Shopping 29 | P a g e 8. Database (shipping address) SNAPSHOT:9.8 Shipping address table
  • 40. Online Electronic Shopping 30 | P a g e 9.2 E-R Diagram The Entity-Relationship (ER) model was originally proposed by Peter in 1976 [Chen76] as a way to unify the network and relational database views. Simply stated the ER model is a conceptual data model that views the real world as entities and relationships. A basic component of the model is the Entity-Relationship diagram which is used to visually represents data objects. Since Chen wrote his paper the model has been extended and today it is commonly used for database design for the database designer, the utility of the ER model is: • it maps well to the relational model. The constructs used in the ER model can easily be transformed into relational tables. • it is simple and easy to understand with a minimum of training. Therefore, the model can be used by the database designer to communicate the design to the end user. • In addition, the model can be used as a design plan by the database developer to implement a data model in a specific database management software. 9.2.1 Connectivity and Cardinality The basic types of connectivity for relations are: one-to-one, one-to-many, and many- to-many. A one-to-one (1:1) relationship is when at most one instance of entity A is associated with one instance of entity B. For example, "employees in the company are each assigned their own office. For each employee, there exists a unique office and for each office there exists a unique employee. A one-to-many (1: N) relationships is when for one instance of entity A, there are zero, one, or many instances of entity B, but for one instance of entity B, there is only one instance of entity A. An example of a 1: N relationships is a department has many employees each employee is assigned to one department. A many-to-many (M: N) relationship, sometimes called non-specific, is when for one instance of entity A, there are zero, one, or many instances of entity B and for one instance of entity B there are zero, one, or many instances of entity A. The connectivity of a relationship describes the mapping of associated
  • 41. Online Electronic Shopping 31 | P a g e 9.2.2 E-R Notation There is no standard for representing data objects in ER diagrams. Each modelling methodology uses its own notation. The original notation used by Chen is widely used in academics’ texts and journals but rarely seen in either CASE tools or publications by non-academics. Today, there are a number of notations used, among the more common are Bachman, crow's foot, and IDEFIX. All notational styles represent entities as rectangular boxes and relationships as lines connecting boxes. Each style uses a special set of symbols to represent the cardinality of a connection. The notation used in this document is from Martin. The symbols used for the basic ER constructs are: • entities are represented by labelled rectangles. The label is the name of the entity. Entity names should be singular nouns. • relationships are represented by a solid line connecting two entities. The name of the relationship is written above the line. Relationship names should be verbs • attributes, when included, are listed inside the entity rectangle. Attributes which are identifiers are underlined. Attribute names should be singular nouns. • cardinality of many is represented by a line ending in a crow's foot. If the crow's foot is omitted, the cardinality is one. • existence is represented by placing a circle or a perpendicular bar on the line. Mandatory existence is shown by the bar (looks like a 1) next to the entity for an instance is required. Optional existence is shown by placing a circle next to the entity that is optional.
  • 42. Online Electronic Shopping 32 | P a g e 9.3 E-R Diagram (Online Shopping) Figure 9.3: E-R Diagram
  • 43. Online Electronic Shopping 33 | P a g e 9.4 Functional Diagram: Figure 9.4: Functional Diagram
  • 44. Online Electronic Shopping 34 | P a g e CHAPTER 10 USER INTERFACE DESIGN Before implementing the actual design of the project, a few user interface designs were constructed to visualize the user interaction with the system as they browse for mobiles, create a shopping cart and purchase mobiles. The user interface design will closely follow our Functional Decomposition Diagram show the initial designs of the web pages. 10.1 User Interface Design: In NetBeans, we have designed this interface in the view folder of NetBeans framework. This view controlled by CI Controller. We are using bootstrap in the theme design. Fig. No. 10.1 Index Page
  • 45. Online Electronic Shopping 35 | P a g e Figure:10.2 Product Page Figure:10.3 All Product Page
  • 46. Online Electronic Shopping 36 | P a g e Figure:10.4 All Single Page Figure:10.5 View Cart Page
  • 47. Online Electronic Shopping 37 | P a g e Figure:10.6 Shipping Address Page Figure:10.7 Online Payment Page
  • 48. Online Electronic Shopping 38 | P a g e Figure:10.8 Search Page Figure:10.9 Login Page
  • 49. Online Electronic Shopping 39 | P a g e Figure:10.10 Signup Page Figure:10.11 Admin Login Page
  • 50. Online Electronic Shopping 40 | P a g e Figure:10.12 Insert Product Detail Page Figure:10.13 View Product Page
  • 51. Online Electronic Shopping 41 | P a g e Figure:10.14 Order View Page
  • 52. Online Electronic Shopping 42 | P a g e CHAPTER 11 IMPLEMENTATION TECHNOLOGIES 11.1 Back-End Web Development Technology While there are numerous technologies for building web applications that serve dynamic content, the one that has really caught the attention of the development community is Java Server Pages (JSP). And not without ample reason either. JSP not only enjoys cross-platform and cross-Web-server support, but effectively melds the power of server-side Java technology with the WYSIWYG features of static HTML pages. JSP pages typically comprise of: • Static HTML/XML components. • Special JSP tags Figure 11.1: Back End Development & Framework Optionally, snippets of code written in the Java programming language called “script lets” Consequently, you can create and maintain JSP pages by conventional HTML/XML tools. It
  • 53. Online Electronic Shopping 43 | P a g e is important to note that the JSP specification is a standard extension defined on top of the Servlet API. Thus, it leverages all of your experience with servlets. There are significant differences between JSP and servlet technology. Unlike servlets, which is a programmatic technology requiring significant developer expertise, JSP appeals to a much wider audience. It can be used not only by developers, but also by page designers, who can now play a more direct role in the development life cycle. Another advantage of JSP is the inherent separation of presentation from content facilitated by the technology, due its reliance upon reusable component technologies like the JavaBeans component architecture and Enterprise JavaBeans technology. This course provides you with an in-depth introduction to this versatile technology, and uses the Tomcat JSP 1.1 Reference Implementation from the Apache group for running the example programs. 11.2 JSP Architecture The purpose of JSP is to provide a declarative, presentation-centric method of developing servlets. As noted before, the JSP specification itself is defined as a standard extension on top the Servlet API. Consequently, it should not be too surprisingly that under the covers, servlets and JSP pages have a lot in common. Typically, JSP pages are subject to a translation phase and a request processing phase. The translation phase is carried out only once, unless the JSP page changes, in which case it is repeated. Assuming there were no syntax errors within the page, the result is a JSP page implementation class file that implements the Servlet interface, as shown below. Figure:11.1 JSP Architecture
  • 54. Online Electronic Shopping 44 | P a g e 11.3 Integrating the Website and Database Customers ordering from an e-commerce website need to be able to get information about a vendor’s products and services, ask questions, select items they wish to purchase, and submit payment information. Vendors need to be able to track customer inquiries and preferences and process their orders. So, a well-Organized database is essential for the development and maintenance of an e-commerce site. In a static Web page, content is determined at the time when the page is created. As users access a static page, the page always displays the same information. Example of a static Web page is the page displaying company information. In a dynamic Web page, content varies based on user input and data received from external sources. We use the term “data-based Web pages” to refer to dynamic Web pages deriving some or all of their content from data files or databases. A data-based Web page is requested when a user clicks a hyperlink or the submit button on a Web page form. If the request comes from clicking a hyperlink, the link specifies either a Web server program or a Web page that calls a Web server program. In some cases, the program performs a static query, such as “Display all items from the Inventory”. Although this query requires no user input, the results vary depending on when the query is made. If the request is generated when the user clicks a form submit button, instead of a hyperlink, the Web server program typically uses the form inputs to create a query. For example, the user might select five mobiles to be purchased and then submit the input to the Web server program. The Web server program then services the order, generating a dynamic Web page response to confirm the transaction. In either case, the Web server is responsible for formatting the query results by adding HTML tags. The Web server program then sends the program’s output back to the client’s browser as a Web page.
  • 55. Online Electronic Shopping 45 | P a g e 11.4 Online Electronic Shopping Application The objective of this application is to provide the user an online website where they can buy mobiles from the comfort of their home. A shopping cart is used for the purpose. The user can select the desired mobiles, place them in the shopping cart and purchase them using a Credit Card. The user’s order will be shipped according to the type of shipping selected at the time of placing the order. Website consists of the following web pages: 1. Home.jsp 2. Product.jsp 3. Cart.jsp 4. Filter.jsp 5. Filter1.jsp 6. Filter2.jsp 7. Login.jps 8. Registration.jsp 9. Admin.jsp 10. Adminlogin.jsp 11. Insert_feature.jsp 12. Update_feature.jsp 13. Headrr.jsp 14. Footer.jsp 15. Mobile.jsp 16. Viewcart.jsp 17. Address.jsp 18. Single.jsp 19. Show.jsp 20. About.jsp 21. Mail.jsp
  • 56. Online Electronic Shopping 46 | P a g e 1) Viewcart.jsp <%@page import="java.sql.*" %> <%@page import="javax.sql.*" %> <%@page import="java.sql.Connection"%> <%@include file="header.jsp" %> <% // PreparedStatement ps= ""; String email=(String)session.getAttribute("uid"); int total = 0,number=0; try { if (email != null) { Class.forName("com.mysql.jdbc.Driver"); Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/purchase","ro ot","amit@123"); PreparedStatement ps2 = con.prepareStatement("select * from cart1 where email=?"); ps2.setString(1,email); ResultSet rs2 = ps2.executeQuery(); %> <div class="col-md-6"> <table class="table"> <thead style="width: 60px"> <tr> <th scope="col">Image</th> <th scope="col">Modal</th> <th scope="col">Price</th>
  • 57. Online Electronic Shopping 47 | P a g e <th scope="col">Remove</th> <th scope="col">Quantity</th> </tr> </thead> </table> <% while (rs2.next()) { %> <form> <% String m = request.getParameter("msg"); if (m != null) { %> <h1><%=m%></h1> <%}%> <table class="table"> <tbody style="width: 60px"> <tr> <th scope="row"> <img src="images/<%=rs2.getString(6)%>" height="50" /></th> <td><%=rs2.getString(4)%> </td> <td><%=rs2.getString(5)%></td> <td><a href="cartProductDeleteDemo.jsp?id=<%=rs2.getString(1)%> && email=<%=session.getAttribute("uid")%>">Delete Product</a></td> <td><%=rs2.getString(7)%></td> </tr> <%
  • 58. Online Electronic Shopping 48 | P a g e String productprice=rs2.getString(8); //output= value of productid=7 is stored in variable productid from product table total+=Integer.parseInt(productprice); number+=1; %> <!--<input type="submit" name="cart" value="Add To Cart">--> </form> </div> <% } %> </tbody> </table> </div> </div> <div class="col-sm-6" style="padding-top: 60px; padding-left: 10%"> <div class="card"> <div class="card-body"> <p style="font-size: 16px"> <% out.print("Number Of Items = " + " " + number + "<br>" + "" + "<br> "); out.print("Total Amount = " + "&#8377; " +total + " <br> <br> "); //response.sendRedirect("orderProduct.jsp"); %> </p> <div class="row"> <div class="col-md-3"> <a class="btn btn-primary" href="paymentmode.jsp?total && number && email=<%=session.getAttribute("uid")%>">Buy Now</a> </div> <div class="col-md-4"> <a class="btn btn-primary" href="mobile.jsp"><span>Continue Shopping</span></a>
  • 59. Online Electronic Shopping 49 | P a g e </div> </div> </div> </div> </div> <!-- <div style="width: 100% ; height: 400px"> </div>--> <% } else { %> <script>alert("You are not logged in"); window.location.href = "login.jsp"; </script> <a href="login.jsp">Login</a> <%} } catch (Exception e) { out.print(e); } %>
  • 60. Online Electronic Shopping 50 | P a g e 2) Filter.jsp <%@page import="java.sql.*" %> <%@page import="javax.sql.*" %> <%@page import="java.sql.Connection"%> <%@ include file="header.jsp" %> <div class="agile_ecommerce_tab_left mobiles_grid"> <% try { Class.forName("com.mysql.jdbc.Driver"); Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/purchase","r oot","amit@123"); PreparedStatement ps1=conn.prepareStatement("SELECT * FROM productdetail WHERE price BETWEEN 8000 AND 15000 UNION SELECT * FROM productdetail WHERE Price > 8000 AND Price < 15000"); // ps1.setString(1,fname); ResultSet rs=ps1.executeQuery(); while(rs.next()) { %> <div class="col-md-4 agileinfo_new_products_grid agileinfo_new_products_grid_mobiles"> <div class="w3ls_mobiles_grid_right_grid4"> <div> <img src="images/<%=rs.getString(6)%>" height="220" width="220"></img> </div>
  • 61. Online Electronic Shopping 51 | P a g e <h5><a href="single.jsp?link=<%=rs.getString(1)%>"><%=rs.getString(2)%><%=rs.ge tString(3)%></a></h5> <div class="simpleCart_shelfItem"> <p><span></span><i class="item_price">&#8377;<%=rs.getString(4)%> </i></p> <form action="cartInsert.jsp" method="get"> <input type="hidden" name="product_id" value="<%=rs.getString(1)%>" /> <input type="hidden" name="model" value="<%=rs.getString(3)%>" /> <input type="hidden" name="price" value="<%=rs.getString(4)%>" /> <input type="hidden" name="images" value="<%=rs.getString(6)%>" /> <button type="submit" class="w3ls-cart">Add to cart</button> </form> </div> </div> </div> <%} } catch(Exception e) { out.println(e); } %> <%@ include file="footer.jsp" %>
  • 62. Online Electronic Shopping 52 | P a g e 3) Delete.jsp <%@page contentType="text/html" pageEncoding="UTF-8"%> <%@ page import="java.sql.*" %> <%@ page import="java.io.*" %> <%@ include file="header.jsp" %> <% String link = request.getParameter("link"); try { Class.forName("com.mysql.jdbc.Driver"); Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/purchase","root","a mit@123"); Statement st= con.createStatement(); PreparedStatement ps = con.prepareStatement("delete from productdetail where product_id='"+link+"'"); ps.executeUpdate(); con.close(); ps.close(); } catch(Exception ex) { out.println(ex.getMessage()); } %> <h1>Record Deleted...</h1><br> <center><a href="admin.jsp">Go Back</a></center>
  • 63. Online Electronic Shopping 53 | P a g e 11.4.4 MySQL Database In this project, MySQL is used as the backend database. MySQL is an open source database management system. The features of MySQL are given below: • MySQL is a relational database management system. A relational database stores information in different tables, rather than in one giant table. These tables can be referenced to each other, to access and maintain data easily. • MySQL is open source database system. The database software can be used and modify by anyone according to their needs. • It is fast, reliable and easy to use. To improve the performance, MySQL is multithreaded database engine. A multithreaded application performs many tasks at the same time as if multiple instances of that application were running simultaneously. In being multithreaded MySQL has many advantages. A separate thread handles each incoming connection with an extra thread that is always running to manage the connections. Multiple clients can perform read operations simultaneously, but while writing, only hold up another client that needs access to the data being updated. Even though the threads share the same process space, they execute individually and because of this separation, multiprocessor machines can spread the thread across many CPUs as long as the host operating system supports multiple CPUs. Multithreading is the key feature to support MySQL’s performance design goals. It is the core feature around which MySQL is built. 11.5 Back-End Web Development Technology A front-end web development framework is simply a collection of production ready HTML/CSS/JavaScript components that we can use in our designs. There are many frameworks out there but some of them stand out from the crowd. For your facilitation below you will find outlined some of the most powerful and popular frameworks available today. Bear in mind that these are not just CSS grids or so, but instead full-featured front-end development frameworks. Bootstrap is definitely the most popular and widely used framework, nowadays. It’s a beautiful, intuitive and powerful web design kit for creating cross browser, consistent and good-looking interfaces. It offers many of the popular UI components with a plain-yet-elegant style, a grid system and JavaScript plugins for common scenarios.
  • 64. Online Electronic Shopping 54 | P a g e It is built with LESS and consists of four main parts: • Scaffolding – global styles, responsive 12-column grids and layouts. Bear in mind that Bootstrap doesn’t include responsive features by default. If your design needs to be responsive you have to enable this functionality manually. • Base CSS – this includes fundamental HTML elements like tables, forms, buttons, and images, styled and enhanced with extensible classes. • Components – collection of reusable components like dropdowns, button groups, navigation controls (tabs, pills, lists, breadcrumbs, pagination), thumbnails, progress bars, media objects, and more. • JavaScript – jQuery plugins which bring the above components to life, plus transitions, modals, tool tips, popovers, scrollspy (for automatically updating nav targets based on scroll position), carousel, typeahead (a fast and fully-featured autocomplete library), affix navigation, and more. Bootstrap is already powerful enough to empower any web interface. But in order to make more use of it and making the development process easier, you can find plenty of tools and resources that complement it. Some of them are listed below: • jQuery UI Bootstrap – an awesome resource for jQuery and Bootstrap fans that combines the power of both. It brings nicely the slickness of Bootstrap to jQuery UI widgets. • jQuery Mobile Bootstrap Theme – similar to the jQuery UI theme above, this is a theme built for jQuery Mobile. It is a handy resource if you have a web front-end built with Bootstrap and want to offer a similar look for mobile. • Fuel UX – this extends Bootstrap with additional lightweight JavaScript controls. It’s easy to install, customize, update, and optimize. • StyleBootstrap.info – Bootstrap has its own customizer but StyleBootstrap is a more detailed one with color pickers and the ability to style each component differently • Bootswatch – a nice set of free themes for Bootstrap. • Bootsnipp – a good collection of design elements and HTML snippets for Bootstrap. It offers also form and button builders.
  • 65. Online Electronic Shopping 55 | P a g e • LayoutIt – drag and drop interface builder based on the elements and components of Bootstrap. It helps you to compose your design visually by placing and arranging different elements into your layout via drag and drop and then allows you to edit their properties. You get the base code and then expand it. Simple and easy. 11.6 NetBeans IDE (Framework) NetBeans IDE is a free, open source, integrated development environment (IDE) that enables you to develop desktop, mobile and web applications. The IDE supports application development in various languages, including Java, HTML5, PHP and C++. The IDE provides integrated support for the complete development cycle, from project creation through debugging, profiling and deployment. The IDE runs on Windows, Linux, Mac OS X, and other UNIX-based systems. The IDE provides comprehensive support for JDK 7 technologies and the most recent Java enhancements. It is the first IDE that provides support for JDK 7, Java EE 7, and JavaFX 2. The IDE fully supports Java EE using the latest standards for Java, XML, Web services, and SQL and fully supports the Glassfish Server, the reference implementation of Java EE. 11.6.1 NetBeans Features Some of the important features of NetBeans are listed below − • Best Support for Latest Java Technologies • Fast & Smart Code Editing • Easy & Efficient Project Management • Rapid User Interface Development • Write Bug Free Code Concepts • Front-end development • Web application project structure • Data modeling • Database connectivity • Object-relational mapping
  • 66. Online Electronic Shopping 56 | P a g e • Session management • Transactional business logic • Client and server-side validation • Localization • Web application security • Design patterns, including Model-View-Controller (MVC) and Session Facade Technologies • HTML, CSS, and JavaScript technologies • Servlet and Java Server Pages (JSP) technologies • Enterprise JavaBeans (EJB) technology • Java Persistence API (JPA) • The Java Server Pages Standard Tag Library (JSTL) • Java Database Connectivity (JDBC) Development Tools • NetBeans IDE • Glassfish, a Java EE application server • MySQL, a relational database management server (RDBMS) • MySQL Workbench, a visual database design tool 11.6.2 NetBeans Uses Firstly, the term IDE stands for integrated development environment. The purpose of an IDE has traditionally been to maximize a developer's productivity by providing tools and support such as: • a source code editor • a compiler and build automation tools • a window system for viewing projects and project artefacts • integration with other commonly-used services
  • 67. Online Electronic Shopping 57 | P a g e CHAPTER 12 INTEGRATING THE WEB APPLICATION Customers ordering from an e-commerce website need to be able to get information about a vendor’s products and services, select items they wish to purchase, and submit payment information. Vendors need to be able to track customer inquiries and preferences and process their orders. So, a well-organized database is essential for the development and maintenance of an e-commerce site. In a static Web page, content is determined at the time when the page is created. As users access a static page, the page always displays the same information. Example of a static Web page is the page displaying company information. In a dynamic Web page, content varies based on user input and data received from external sources. We use the term “data-based Web pages” to refer to dynamic Web pages deriving some or all of their content from data files or databases. A data-based Web page is requested when a user clicks a hyperlink or the submit button on a Web page form. If the request comes from clicking a hyperlink, the link specifies either a Web server program or a Web page that calls a Web server program. In some cases, the program performs a static query, such as “Display all items from the Inventory”. Although this query requires no user input, the results vary depending on when the query is made. If the request is generated when the user clicks forms submit button, instead of a hyperlink, the Web server program typically uses the form inputs to create a query. For example, the user might select five mobiles to be purchased and then submit the input to the Web server program. The Web server program then services the order, generating a dynamic Web page response to confirm the transaction. In either case, the Web server is responsible for formatting the query results by adding HTML tags. The Web server program then sends the program’s output back to the client’s browser as a Web page. 12.1 Web Based Application Development The Web is built on the Hypertext Transfer Protocol. HTTP is a client/server request/reply protocol that is stateless. That is, the protocol does not make any association between one transaction and another; e.g.: time since the last transaction, type or client involved in the last transaction, what data was exchanged between the client and the server. As far as HTTP is concerned, each transaction is a discrete event. But this is not what we want in a shopping cart application because we need to preserve the user’s shopping selection as they proceed with their purchase, in addition it is useful to have the access to their past purchase history and personal preferences.
  • 68. Online Electronic Shopping 58 | P a g e Carrying information from one page to another can be achieved by several ways, such as Cookies, Session variables, Post variables, etc. A cookie is a small file that has a maximum age, a domain and path of applicability, and a security specification. Any time a server sends a response to a client, it may include one or more Set-Cookie headers. When a client receives a Set-cookie header, it stores the content of the header and the cookie, for later use. In our application, every time the client selects an item to put in the shopping cart, the server can send a Set Cookie whose content is the ID of the item, and whose domain and path of applicability are the URL of the order/payment page. Then, when the user goes to order and pay, the client will send the Cookie headers for each of the selected items. Upon receiving this request, the server can parse the supplied cookies and charge the user appropriately for the selected items. Cookies may also be used to identify the users. However, cookies are very insecure to use since they are transmitted as plain text and the server has no control over how cookies are stored in at the client’s side. Another approach is based on a notion of session ID. These notions provide means for the server to track the requests of a client through a “session”, but unlike cookies, which are stored on the client, Session variables are stored on the Server. A session starts when a user logs in and ends when they log off from the website. The Session object is used to store information about or change settings for a user session. Variables stored in the Session object hold information about one single user and are available to all pages in one application. Common information stored in session variables are name, id, and preferences. The server creates a new Session object for each new user and destroys the Session object when the session expires. 12.2 Integration of Payment Gateway (PayPal) PayPal Holdings, Inc. is an American company operating a worldwide online payments system that supports online money transfers and serves as an electronic alternative to traditional paper methods like checks and money orders. In this NetBeans application, we’ll display some products from the database along with the Buy button. Clicking on Buy button, the buyer would be redirected to the PayPal site. After completion of payment, the buyer will come back to the website. Using PayPal IPN (Instant Payment Notification) service, we will check the payment status and store the transaction details in the database.
  • 69. Online Electronic Shopping 59 | P a g e PayPal payment gateway in NetBeans, create a Sandbox test account for testing PayPal transaction. We have the Business account and Personal account from your Sandbox account. Controller has three methods, success (), cancel (), and ipn (). success () method responsible for displaying the transaction data on payment success. cancel () method is requested on payment cancel by the buyer. ipn() method gets the transaction data by PayPal IPN and insert the transaction data into the database.
  • 70. Online Electronic Shopping 60 | P a g e CHAPTER 13 TESTING Software Testing is an empirical investigation conducted to provide stakeholders with information about the quality of the product or service under test, with respect to the context in which it is intended to operate. Software Testing also provides an objective, independent view of the software to allow the business to appreciate and understand the risks at implementation of the software. Test techniques include, but are not limited to, the process of executing a program or application with the intent of finding software bugs. It can also be stated as the process of validating and verifying that a software program/application/product meets the business and technical requirements that guided its design and development, so that it works as expected and can be implemented with the same characteristics. Software Testing, depending on the testing method employed, can be implemented at any time in the development process, however the most test effort is employed after the requirements have been defined and coding process has been completed. 13.1 Unit Testing The primary goal of unit testing is to take the smallest piece of testable software in the application, isolate it from the remainder of the code, and determine whether it behaves exactly as you expect. Each unit is tested separately before integrating them into modules to test the interfaces between modules. Unit testing has proven its value in that a large percentage of defects are identified during its use. Unit testing is a software verification and validation method where the programmer gains confidence that individual units of source code are fit for use. A unit is the smallest testable part of an application. In procedural programming a unit may be an individual program, function, procedure, etc., while in object-oriented programming, the smallest unit is a class, which may belong to a base/super class, abstract class or derived/child class. Ideally, each test case is independent from the others: substitutes like method stubs, mock objects, fakes and test harnesses can be used to assist testing a module in isolation. Unit tests are typically written and run by software developers to ensure that code meets its design and behaves as intended. Its implementation can vary from being very manual (pencil and paper) to being formalized as part of build automation.
  • 71. Online Electronic Shopping 61 | P a g e 13.2 Integration Testing Integration testing, also known as integration and testing (I&T) is a software development process which program unit are combined and tested as groups in multiple ways. In this context, a unit is defined as the smallest testable part of an application. Integration testing can expose problems with the interfaces among program components before trouble occurs in real-world program execution. Integration testing is a component of Extreme Programming (XP), a pragmatic method of software development that takes a meticulous approach to building a product by means of continual testing and revision. There are two major ways of carrying out an integration test, called the bottom-up method and the top-down method. Bottom-up integration testing begins with unit testing, followed by tests of progressively higher-level combinations of units called modules or builds. In top-down integration testing, the highest-level modules are tested first and progressively lower-level modules are tested after that. In a comprehensive software development environment, bottom-up testing is usually done first, followed by top-down testing. 13.3 Validation Testing At the validation level, testing focuses on user visible actions and user recognizable output from the system. Validations testing is said to be successful when software functions in a manner that can be reasonably expected by the customer. Two types of validation testing • Alpha testing is simulated or actual operational testing by potential users/customers or an independent test team at the developers' site. Alpha testing is often employed for off-the-shelf software as a form of internal acceptance testing, before the software goes to beta testing. • Beta testing comes after alpha testing. Versions of the software, known as beta version, are released to a limited audience outside of the programming team. The software is released to groups of people so that further testing can ensure the product has few faults or bugs. Sometimes, beta versions are made available to the open public to increase the feedback field to a maximal number of future users. • Grey box testing is the combination of black box and white box testing. Intention of this testing is to find out defects related to bad design or bad implementation of the system.it is used for web application.
  • 72. Online Electronic Shopping 62 | P a g e CHAPTER 14 SOFTWARE QUALITY ASSURANCE PLAN Each development and maintenance project should have a Software Quality Assurance Plan that specifies its goals, the SQA tasks to be performed, the standards against which the development work is to be measured, and the procedures and organizational structure. The IEEE Standards for the Software Quality Assurance Plans states that the plan should contain the following sections: • Purpose Reference documents • Management Documentation • Standards, practices and conventions • Reviews and Audits • Configuration Management • Problem reporting and corrective action • Tools, techniques and methodologies • Code Control • Media Control • Supplier Control • Records collection, maintenance and retention. 1. Purpose, Scope and Overview: The purpose of this Software Quality Assurance (SQA) Plan is to establish the goals, processes, and responsibilities required to implement effective quality assurance functions for the ONLINE SHOPPING. The ONLINE SHOPPING Software Quality Assurance plan provides the framework necessary to ensure a consistent approach to software quality assurance throughout the project life cycle.
  • 73. Online Electronic Shopping 63 | P a g e This plan establishes the SQA activities performed throughout the life cycle of the ONLINE SHOPPING. Specifically, this SQA Plan will show that the SQA function is in place for this project. It will show that the SQA group has a reporting channel to senior management that is independent of the project manager, the project’s software engineering group, and software related groups that include Software Configuration Management (SCM), System and Software Test, and Logistics. The goal of the SQA program is to verify that all software and documentation to be delivered meet all technical requirements. 2. Reference documents: Software Quality Assurance, Principles and Practice: Nina S Godbole. 3. Management: An IEEE standard lays down three aspects that should be covered in the Software Quality Assurance Plan: Organization: The organization section includes the roles of the team members, their hierarchy etc. It is important that the head of the Software Quality Assurance (SQA) function in the organization has the adequate authority to be able to perform independent verification that the processes are adhered to. The following describes the functional groups that influence and control software quality. a). Program Management/Line Management (Sponsor) is responsible for: the following items: Identifying an individual or group independent from the Project to audit and report on the project’s SQA function. Identifying the quality factors to be implemented in the system and software.
  • 74. Online Electronic Shopping 64 | P a g e b). Project Management is responsible for: Resolving and following-up on any quality issues raised by SQA. Identifying, developing and maintaining planning documents Such as the Program Management Plan. c). System Engineering is responsible for: Implementing the engineering practices, processes, and procedures as defined in program/project planning documents. d). Software Design/Development is responsible for: Identifying, implementing, and evaluating the quality factors to be implemented in the software. e). Software Test is responsible for: Verifying, Implementing the software test practices, processes, and procedures as defined in program/project planning documents. f). System Test is responsible for: Verifying the quality factors are implemented in the system (software and hardware). g). Logistics is responsible for: Reviewing and commenting on the SQA Plan. Implementing the quality program in accord ONLINE SHOPPING assurance with this SQA plan.
  • 75. Online Electronic Shopping 65 | P a g e h). Software Configuration Management (SCM) is responsible for: Implementing the SCM practices, processes, and procedures as defined in reference and other program/project planning documents. i). Independent Verification and Validation (IV& V) is responsible for: Implementing the practices, processes, and procedures as defined for IV&V in program /project planning documents. j). Systems Engineering Process Office (SEPO) is responsible for: Maintaining the SQA Process. Ensuring SQA training availability. Providing assistance in software process engineering and software process improvement. a) Tasks: An SQA task is performed in relationship to what software development activities are taking place. One or more SQA tasks can be performed concurrently until a task is completed. The following are the tasks of SQA plan: • Evaluate System Requirements Analysis Process • Evaluate System Design Process • Evaluate Software Requirements Analysis Process • Evaluate Software Design Process • Evaluate Software Tools • Evaluate Software Implementation and Unit Testing Process • Evaluate End-item delivery Process
  • 76. Online Electronic Shopping 66 | P a g e • Evaluate Configuration Management Process b) Responsibilities: The project manager and design/development teams have primary responsibility for the quality controls applied during the development of the software project. The quality manager will: Define the responsibilities of quality personnel in the form of quality assurance procedures applicable to the project. • Agree to the quality plan with the project manager. • Approve the plan of the audits for the project which are to be carried out by quality personnel. • Resolve any disagreement between the project manager and quality personnel on matters relating to quality. • Review the activities performed by project personnel to ensure that the requirements of the quality plan and quality procedures are being satisfied. Quality personnel will: • Carry out planned internal audits of the project to assess compliance with quality objectives. • Agree on corrective action with the project manager for any discrepancies, non- conformities found and ensure that corrective action is taken. Evaluate defect trends and take appropriate action. 4. Documentation: The basic purpose of the documentation section of the Software Quality Assurance Plan is to describe the documentation to be produced and how it is to be reviewed. The documentation section normally includes the following: • Software Requirements Specification (SRS)
  • 77. Online Electronic Shopping 67 | P a g e • Software Design Description • Software Verification Plan • Software Verification report • Reference to Software Standards (ISO, CMM, IEEE etc) and procedures mentioned and defined as in the Quality Manual and Quality Management System • User guides, operators and programmers manual • Configuration Management Plan • Software Quality Objectives. 5. Standards, practices and conventions: To verify the delivery of a fully conforming, high-quality product, every individual assigned to the project will participate in quality assurance. This section describes the procedures used by SQA to verify that the quality assurance provisions of this SQA Plan and applicable standards, practices, conventions, and metrics are met. The following measurements will be made and used to determine the cost and schedule status of the SQA activities: a. SQA milestone dates (planned) b. SQA milestone dates (completed) c. SQA work scheduled (planned) d. SQA work completed (actual) e. SQA effort expended (planned) f. SQA effort expended (actual g. SQA funds expended (planned)
  • 78. Online Electronic Shopping 68 | P a g e 6. Reviews and Audits: The review and audits sections of Software Quality Assurance Plan will state which technical and managerial reviews will be undertaken and how they will be carried out. The ANSI standard suggests that the following would be a minimum set of reviews: • Software Requirements Specification Review: This review is held to approve the document defining the software requirements specifications and it aims to check the adequacy of the requirements. • Primary Design Review: The purpose of this review is to approve formally, the software top-level design document. • Critical Design Review: The purpose of this review is to approve the software detailed design document as a basis for further development work. • Software Verification Review: The purpose of this review is to approve the test plan. It is the evaluation of the adequacy and completeness of the methods described. • Functional Audit: This is held to verify that all the requirements in the software requirements specification have been met. • Physical Audit: This is held to verify that the software and its documentation are internally consistent prior to delivery to the user. • In-Process Audit: In-Process audits of a sample design are held to verify the consistency of the design. 7. Configuration Management: This Configuration Management section of the Software Quality Assurance Plan covers configuration identification, configuration control, configuration status accounting, and configuration auditing. 8. Problem reporting and corrective action: This section of the Software Quality Assurance plan describes the system, which ensures that software problems are documented and resolved. It should be a closed-loop system. All the problems should be promptly reported at appropriate level, acted upon and resolved. Each problem should be analysed to determine its significance and causes and classified by category and each problem must have severity level and a priority number.
  • 79. Online Electronic Shopping 69 | P a g e For each problem, some corrective action and a target completion date should be identified. The appropriate level of management should be made aware of the problems and adverse trends. The corrective action taken will be evaluated to ensure that it solved the problem without introducing any new problems. Management should monitor the status of all unresolved problems. 9. Tools, techniques and methodologies: Tools - SQA software tools include, but are not limited to, operating system utilities, debugging aids, documentation aids, checklists, structuring pre-processors, file comparators, structure analysers, code analysers, standards auditors, simulators, execution analysers, performance monitors, statistical analysis packages, software development folder/files, software traceability matrices, test drivers, test case generators, static or dynamic test tools, and information engineering CASE tools. Techniques - Techniques include review of the use of standards, software inspections, requirements tracing, requirements and design verification, reliability measurements and assessments, and rigorous or formal logic analysis. Methodologies - Methodologies are an integrated set of the above tools and techniques. The methodologies should be well documented for accomplishing the task or activity and provide a description of the process to be used. 10. Code Control: Code control includes the items listed below: • Identifying, labelling, and cataloguing the software to be controlled • Identifying the physical location of the software under control • Identifying the location, maintenance, and use of backup copies • Distributing copies of the code
  • 80. Online Electronic Shopping 70 | P a g e • Identifying the documentation that is affected by a • Establishing a new version • Regulating user access to the code. 11. Media Control: The Media Control section of the Software Quality Assurance Plan will describe how the media are to be protected from unauthorized access or damage. Security threats to a software project come from the following environmental factors: • Fire Damage • Water Damage • Energy Variations • Structural Damage • Pollution • Unauthorized Intrusion • Viruses and Worms • Misuse of Software, Data and Services. 12. Supplier Control: Prior to any purchase of software to support the development effort, SQA and project members will define and provide complete requirements to the supplier/vendor. The Software Tool Evaluation Process will be followed. Part of the evaluation process will require the supplier or vendor to describe their technical support, handling of user questions and problems, and software product upgrades. 13. Records collection, maintenance and retention: SQA activities are documented by records and reports that provide a history of product quality throughout the software life cycle. Measurement data collected will be reviewed for trends and process improvement. All SQA records will be collected and maintained in the SDL or archival storage for the life cycle of the product.
  • 81. Online Electronic Shopping 71 | P a g e CHAPTER 15 CONCLUSION The project entitled “Online Electronic Shopping” is developed using JSP as front end and MYSQL database in back end to computerize the process of online buying and selling of mobiles in a showroom. This project covers only the basic features required. However, a lot of features are already incorporated in this project. The main beneficiaries are both customers as well as ADMIN who consume more time while dealing with mobiles. Moreover, extra features can be identified and incorporated in the future In order to accommodate additional features it will take longer time and effort to understand the requirement and converting it into computerized system.
  • 82. Online Electronic Shopping 72 | P a g e CHAPTER 16 FUTURE SCOPE OF PROJECT I will fix bugs if they are found. More features will be added into this application. • Product Review • Product Rating • More Payment Gateway The project made here is just to ensure that this product could be valid in today real challenging world. Here all the facilities are made and tested. Currently the system works for limited number of administrators to work. We implement vendor dashboard in this, so that every product seller can add their products by direct login to the dashboard and add, delete and modify the products. In near future, it will be extended for many types of insurance policies so that efficiency can be improved.
  • 83. Online Electronic Shopping 73 | P a g e CHAPTER 17 BIBLIOGRAPHY WEBSITE: 1. NetBeans IDE 8.2 (https://netbeans.org/.com) 2. The Java EE 5 Tutorial ( https://docs.oracle.com/javaee/5/tutorial/doc/) 1. Object-relational impedance mismatch (http://en.wikipedia.org/wiki/Object- Relational_impedance_mismatch ) 2. Bootstrap Theme (https://getbootstrap.com/) 3. Bootstrap module (https:// codepen.io/) 4. http://www.agilemodeling.com/artifacts/dataFlowDiagram.htm for definition of Data Flow Diagram. 5. http://www.informatik.uni-bremen.de/uniform/gdpa_d/methods/m-fctd.htm for definition of Functional Decomposition. BOOKS: 1. JSP 2.0: The Complete Reference, Second Edition | By Phillip Hanna. 2. High Performance MySQL: Optimization, Backups, Replication, and More, by Baron Schwartz, Peter Zaitsev, Vadim Tkachenko, Jeremy Zawodny, Arjen Lentz, Derek J. Balling. 3. MySQL: The Complete Reference by Vikram Vaswani 4. Laufer, K. A hike through post-EJB J2EE Web application architecture. Part II. Computing in Science & Engineering. Volume 8, Issue 2, March-April 2006 Page(s):79 – 87 5. Chris Richardson. Untangling enterprise Java. Queue. Volume 4, Issue 5 (June 2006). Component Technologies. Pages:36 – 44. 2006. ISSN: 1542-7730