SlideShare a Scribd company logo
1 of 46
1
CONTENT
PAGE
(i) Certificate 2
(ii) Company certificate
(iii) Acknowledgement 3
1. Company Profile 4-6
2. Software/Hardware Configuration 7
3. List of Tables 8
4. Introduction 9
5. ProjectDetails 10-11
6. Language Details 12-20
7. System Design:
Module Flow Chart 21
8. DevelopmentLife cycle:
Introduction 22-24
Feasibility Study 24-26
9. Desigining 27-30
10.Testing: 30-35
Testing Methods 31-32
11.Tables Used 36-39
12.Snapshots 40-43
13.Future Scope ofthe Project 44
14.Conclusion 45
15.References 46
16.Website References 47
2
CERTIFICATE
This is to certify that MR. MOHIT KAUL (1811341) is a bonafide student of Bachelor of
Technology in Computer Engineering being run by Haryana Engineering College, Jagadhri of
Batch 2011-2015 has delivered a presentation with Seminar Report entitled
“ONLINE BOOKSHOP” in presence of the undersigned.
We wish her all Success in his life.
(Faculty Signature)
Date ………………. Er. NavdeepKumar
(Associate Professor)
3
ACKNOWLEDGEMENT
I bow my head to almighty god who gave us strength and wisdom due to which we have been
able to express our views and research. A work of this nature can never be done by any person
alone. This project is an acknowledgement to the intensity, drive and technical competence of
many individuals who have contributed to it. No endeavour can successfully accomplish without
any active participation, sincere assistance and encouraging inspiration of others. Cooperation,
support, advice and guidance of many people who have brought this dissertation in this present
shape.
The special thanks go to my helpful supervisor Mr MukeshJamwal(java trainer, Grapess
Solutions Pvt Ltd. Yamuna Nagar). The supervision and support that he gave truly help the
progression and smoothness of the progression of the internship program. The cooperation is
much indeed appreciated.
My grateful thanks also go to my team members. We work together to provide success
environment to the project. A big contribution and hardwork from the team during 45 days is
very great indeed. All projects during the program would be nothing without the enthusiasm of
the team. Besides this, the internship program makes me realise the importance of working
together as a team and as a new experience in working environment which challenges us every
minute.
My sincere thanks go to our respected HOD for support. I would like to thank all the staff of the
institute who provided the best of their knowledge and give us newer and better ideas, whenever
required and requested for.
I offer appreciation to my parents and all our friends for their ever willing cooperation and moral
support.
MOHIT KAUL
1811341
CSE-4th yr.
4
COMPANY PROFILE
GRAPESS SOLUTIONS (P) Ltd.
An ISO 9001: 2008 Certified Company
#3, Block No. 533, First Floor, Opp. Kumar Mall,, Kumar Mall Rd, Model Town, Sarojini
Colony, Yamuna Nagar, Haryana 135106
Grapess Solutions has started in March,2010 with a vision to provide every solution of IT. We
have started with IT education & training and software solution
In Web Design & Development:
Grapess Solutions provides professional website design, development and maintenance services.
Our experienced web designers and developers carry out various website projects from brochure
sites to multi-functional web portals. Grapess Solutions has a large team of resources and the
required business and technical expertise to develop websites of any complexity. We provide
complete front-end and back-end development based on the latest technologies and industry
trends.
What you can expect with every website design project:
 Great, fast loading, modern design.
 Private, in progress viewing during design and development.
 Content management system to easily edit your website.
 Basic search engine optimization to help you rank better.
 Site map to help visitors find what they are looking for.
 User friendly/Search engine friendly navigation menu.
 Email/information request forms to allow visitor feedback and inquiries.
 Upload to your website host when going live.
 Manual submission to Google, Yahoo, and Bing.
 Free minor changes for two weeks following launch of new site
5
Vision / Mission:-
 Our Vision
Our vision is to be the leader in Infrastructure Products, Services and creating value
for our customers to earn their Lifetime loyalty.
 OurMission
Every team member at Grapess Solutions will strive to provide Cost effective, Best
Quality Products and Services to our customers through adherence to and with
continuous improvements in Standards, Systems and Processes.
Our Software DevelopmentServices include:
1. Windows Software Development
2. Web Application Development
3. Software Products
4. Software Rebranding
Website Designing
Professional website designing and website development services, web application development,
ecommerce website development, web design India, offshore website design, SEO services,
offshore engineering services and web design services.
Our services are backed by a professional work portfolio and glowing reviews. We have been
providing best-in-class web site design, web development, search engine optimization & website
maintenance services to Indian & offshore businesses since 2002. Our website design services
will get you the results that you always wanted. Our websites are clean, clear and customized to
your needs! Your website is an online resume for yourbusiness. Why wouldn’t you want to
appear your very best? At Grapess, we provide professional website designing and create custom
logos at affordable prices.
6
SOFTWARE/HARDWARE CONFIGURATION
Software
The following are the software required for the project:
 Microsoft Windows7/8
 Jdk
 Apache Tomcat
 MySQL
Hardware
The following are the hardware required for the project:
 PC with Dual Core 1.3 or Higher Processor
 512 MB RAM or Higher
 Minimum 20 GB hard disk space.
For this software there are following alternatives:-
Front End : J2EE
Back End : MySQL
Editor : Eclipse
Doc Tool : MS-Word
7
LIST OF TABLES
1) Table 1: LoginInfo
2) Table 2: BookCategory
3) Table 3: BookSubCategory
4) Table 4: PublicationInfo
5) Table 5: BookInfo
6) Table 6: BookStock
7) Table 7: BookPhoto
8) Table 8: CartInfo
9) Table 9: CartItems
10) Table 10: OrderInfo
11) Table 11: OrderDetails
8
INTRODUCTION
This project deals with developing an e-commerce website for Online Book Shop. It provides the
user with a catalogue of different books available for purchase in the store. In order to facilitate
online purchase a shopping cart is provided to the user.
In order to 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, JAVA script,
and HTML), relational databases (such as MySQL, Access).
This is a project 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.
An Online Book shop is a virtual store on the internet where customers can browse the catalogue
and select books of interest. The selected books may be collected in a shopping cart. At checkout
time, the items in the shopping cart will be presented as in order. At that time, more information
will be needed to complete the transaction. Usually, the customer will be asked to fill a billing
address, a shipping option, and payment information such as credit card number.
9
PROJECT DETAILS
There are two views of this Online Bookshop:
1) ADMINISTRATOR VIEW:The administrator controls the all online bookshop
activities. The admin also has a username & password through which he enters in the admin
view.It has the following :
 Add or Delete a Category: The admin can add or delete a category according to the
needs of the website or the users.
 Add or Delete a Book: Admin can add or delete a book from the catalogue.
 Add or Delete a user: Admin can delete a user whenever he though to do so.
 Logout:In the login page admin will move the login page.
2) USER VIEW:It contains following:
 Login: The user can login using the username and password it has registered with.
After login, the user can buy books from the catalogue.
 Registration: A new user has to register first until then he cannot purchase the books.
The project has following functionalities:
1) A Home page with product catalogue: This is the page where the user will be navigated
after a successful login. It will display all the book categories and will have a search option
for the required book. It also includes some special sections like special books etc.
2) Search: A search is a keyword option provided to the user using a textbox. The keyword to
be entered should be the book title.
10
3) All Products:It contains all the products of the website.
4) Register with us: It is used for registering new users to the website. The users have to enter
their details to get them registered.
5) About Us:It gives the details of the website and the developers.
6) Contact: It consists the contact details of the owners.
7) Login: The registered users login to the website using their username and password.
8) Shopping Cart: The user can manage their shopping cart which will include all the books to
be selected. The user can edit, update and delete his shopping cart. A final shopping cart
summary is displayed which includes all the items the user selected and the final cost.
9) Choose A Category: In this the user can choose the category from which user has to select
the books of the category of the choice.
10) Administrator: The admin will be provided with special functionality likely
 Add or Delete a book category.
 Add or Delete a member.
 Manage member orders.
11
LANGUAGE DETAILS
Java
Java is a blend of the best elements of its rich heritage languages combined with the innovative
concepts required by its unique mission. Although Java has become inseparably linked with the
online environment of the Internet, it is important to remember that Java is first and foremost a
programming language. Much of the character of Java is inherited from C and C++. From C,
Java derives its syntax. Many of Java’s object oriented features were influenced by C++.
James Gosling, Patrick Naughton, Chris Warth, Ed Frank and Mike Sheridan developed Java at
Sun Microsystems, Inc. in 1991. This Language was initially called “Oak” but was renamed
“Java” in 1995.
The original impetus for Java was the need for a platform independent language that could be
used to create software to be embedded in various consumer electronics devices such as remote
controls. But, with the emergence of the World Wide Web, Java was propelled to the forefront of
computer language design, because the web too, demanded portable programs.
Principles
There were five primary goals in the creation of the Java language:
1. It should be "simple, object-oriented and familiar".
2. It should be "robust and secure".
3. It should be "architecture-neutral and portable".
4. It should execute with "high performance".
5. It should be "interpreted, threaded, and dynamic".
6. Java™ has significant advantages over other languages and environments that make it
suitable for just about any programming task. The advantages of Java are as follows:
 Java is easy to learn.
 Java was designed to be easy to use and is therefore easy to write, compile, debug, and
learn than other programming languages.
12
 Java is object-oriented.
 This allows you to create modular programs and reusable code.
 Java is platform-independent.
One of the most significant advantages of Java is its ability to move easily from one computer
system to another. The ability to run the same program on many different systems is crucial to
World Wide Web software, and Java succeeds at this by being platform-independent at both the
source and binary levels. Because of Java's robustness, ease of use, cross-platform capabilities
and security features, it has become a language of choice for providing worldwide Internet
solutions.
JRE (Java Runtime Environment)
The Java Runtime Environment (JRE) provides the libraries, the Java Virtual Machine, and other
components to run applets and applications written in the Java programming language. In
addition, two key deployment technologies are part of the JRE: Java Plug-in, which enables
applets to run in popular browsers; and Java Web Start, which deploys standalone applications
over a network. This is the official Java Download from Sun Microsystems.
JDK (Java Development Kit)
The Java Development Kit (JDK) is a Sun Microsystems product aimed at Java developers.
Since the introduction of Java, it has been by far the most widely used Java SDK. On 17
November 2006, Sun announced that it would be released under the GNU General Public
License (GPL), thus making it free software. This happened in large part on 8 May 2007[3]; Sun
contributed the source code to the Open JDK.
The JDK has as its primary components a collection of programming tools, including:
Java – the loader for Java applications. This tool is an interpreter and can interpret the class files
generated by the Javac compiler. Now a single launcher is used for both development and
13
deployment. The old deployment launcher, JRE, no longer comes with Sun JDK, and instead it
has been replaced by this new java loader.
Javac– the compiler, which converts source code into Java byte code.
Applet viewer– this tool can be used to run and debug Java applets without a web browser
The Java Buzzwords
The key feature responsible for the development of Java is:
Simple
Java was design to be easy for the professional programmers to learn and use efficiently. If one
already understand the basic concepts of OOP, learning Java will be ever easier.
Robust
The multi plat formed environment of the Web places extraordinary demands on a program,
because the program must execute reliably in a verity of systems.
Multithreaded
Java was design to meet the real world requirements of creating interactive, networked programs.
To accomplish this, Java supports multithreaded programming, which allows us to write
programs that do many things simultaneously.
Distributed
Java is design for the distributed environment of the Internet, because it handles the TCP/IP
protocols.
14
The brief discussion of APIs
AWT
It stands for Abstract Window Toolkit. Since all applets run in a window, it is necessary to
include AWT, which supports window-based applet programs. Applets are event-driven. An
applet waits until an event occurs. The AWT notifies the applet about an event by calling an
event handler that had been provided by the applet. Once this happens, the applet must take
appropriate actions and then quickly return control to the AWT. The architecture of an applet is
not as easy to understand as that of a console-based program, Java’s AWT makes it as simple as
possible.
Awt.Event:
Applets are event-driven programs. Thus, event handle is at the core of successful applet
programming. Most events to which user’s applet will respond are generated by the user. These
events are passed to user’s applet in variety of ways, with the specific method depending upon
the actual event. There are several types of events. The most commonly handled events are those
generated by the mouse, the keyboard, and various controls, such as push button. Events are
supported by the java.awt.event package.
Exception Handling-
An exception is an abnormal condition that arises in a code sequence at run time. In other words,
an exception is a run-time error. In computer languages that do not support exception handling,
errors must be checked and handled manually—typically through the use of error codes, and so
on. This approach is as cumbersome as it is troublesome. Java’s exception handling avoids these
problems and, in the process, brings run-time error management into the object-oriented world.
A Java exception is an object that describes an exceptional condition that has occurred in a piece
of code. When an exceptional condition arises, an object representing that exception is created
and thrown in the method that caused the error. That method may choose to handle the
exception itself, or pass it on. Either way, at some point, the exception is caught and processed.
Exceptions can be generated by the Java run-time system, or they can be manually generated by
15
the user’s code. Exceptions thrown by Java relate to fundamental errors that violate the rules of
the Java language or the constraints of the Java execution environment. Manually generated
exceptions are typically used to report some error condition to the caller of a method.
Swing
Swing is a set of classes that provides more powerful and flexible components than are possible
with the AWT. In addition to the familiar components, such as buttons, check boxes, and labels,
Swing supplies several exciting additions, including tabbed panes, scroll panes, trees, and tables.
Even familiar components such as buttons have more capabilities in Swing. For example, a
button may have both an image and a text string associated with it. Also the image can be
changed as the state of the button changes. Unlike AWT components, Swing components are not
implemented by platform-specific code. Instead, they are written entirely in Java and, therefore,
are platform independent. The Swing-related classes are contained in javax.swing. Some of the
classes used are JApplet, JLabel, JButton, JScrollPane, JTextArea, JTextField, JMenuBar,
JMenu, JFrame. JApplet and JFrame provides a method getContentPane() which returns a
reference to their associated content pane. So to get a reference to the JApplet’s container where
user will add their GUI objects.
Container appletContainer = getContentPane ();
This statement can be in the instance variable initialization list, where user declare and
instantiate the GUI objects. Then, subsequent adds or sets of layout managers in the constructor
or in init() would be on this appletContainer. For example,
AppletContainer.add(nameLabel);
JApplet
Fundamental to Swing is the JApplet class, which extends Applet. Applets that use Swing must
be subclasses of JApplet. JApplet is rich with functionality that is not found in Applet.
16
JLabelSwing labels are instances of JLabel class, which extends JComponent. It can display
text and / or an icon. This class is used for putting a label on an applet, like a label used is “Enter
your name”.
JTextField
It allows user to edit one line of the text. Like a text field of 20 characters long is created with the
label “Enter your name” to enter the name of the user.
JButton
JButton class provides the functionality of a push button. JButton allows an icon, a string, or
both to be associated with push button.
JTextArea
It allows user to edit in an area specified in terms of rows and columns.
JScrollPane
Scroll panes are implemented in Swing by the JScrollPane, which extends JComponent. A scroll
pane is a component that presents a rectangular area in which a component may be viewed.
Horizontal and / or vertical scroll bars may be provided if necessary.
JFrame
The JFrame implements frames in Swings. Frame encapsulates a “window”. It is the subclass of
a window and has a titlebar, menubar, borders and resizing corners.
JMenuBar and JMenu
A menu bar displays a list of top-level menu choices. JMenuBar and JMenu implement it.
17
JavaServer Pages (JSP)
This technology enables you to mix regular, staticHTML with dynamically generated content
from servlets. You simplywrite the regular HTML in the normal manner, using familiarWeb-
page-building tools. You then enclose the code for the dynamicparts in special tags, most of
which start with <% and end with %>. Forexample, here is a section of a JSP page that results in
“Thanks for ordering Core Web Programming” for a URL of http://host/OrderConfirmation.
jsp?title=Core+Web+Programming:
Thanks for ordering <I><%= request.getParameter("title") %></I>
Separating the static HTML from the dynamic content provides a numberof benefits over
servlets alone, and the approach used in JavaServer Pages offers several advantages over
competing technologies such as ASP, PHP, orColdFusion. That JSP is widely supported
and thus doesn’t lock you into a particular operating system or Webserver and that JSP gives you
full access to servlet and Java technology for thedynamic part, rather than requiring you to use an
unfamiliar and weaker special-purpose language.
The process of making JavaServer Pages accessible on the Web is muchsimpler than that for
servlets. Assuming you have a Web server that supportsJSP, you give your file a .jsp extension
and simply install it in any place youcould put a normal Web page: no compiling, no packages,
and no userCLASSPATH settings. However, although your personal environment doesn’tneed
any special settings, the server still has to be set up with access to theservlet and JSP class files
and the Java compiler. For details, see your server’sdocumentation or Section 1.5 (Installation
and Setup).Although what you write often looks more like a regular HTML file than aservlet,
behind the scenes, the JSP page is automatically converted to a normalservlet, with the static
HTML simply being printed to the output streamassociated with the servlet’s service method.
This translation is normallydone the first time the page is requested. To ensure that the first real
userdoesn’t get a momentary delay when the JSP page is translated
JSP scripting elements let you insert code into the servlet that will be generatedfrom the JSP
page. There are three forms:
18
1. Expressions of the form <%= expression %>, which are evaluatedand inserted into the
servlet’s output.
2. Scriptletsof the form <% code %>, which are inserted into theservlet’s _jspService method
(called by service).
3. Declarations of the form <%! code %>, which are inserted intothe body of the servlet class,
outside of any existing methods
JDBC is a Java API for executing SQL statements. (As a point of interest, JDBC is a
trademarked name and is not an acronym; nevertheless, JDBC is often thought of as standing for
"Java Database Connectivity".) It consists of a set of classes and interfaces written in the Java
programming language. JDBC provides a standard API for tool/database developers and makes it
possible to write database applications using a pure Java API.
Using JDBC, it is easy to send SQL statements to virtually any relational database. In other
words, with the JDBC API, it isn't necessary to write one program to access a Sybase database,
another program to access an Oracle database, another program to access an Informix database,
and so on. One can write a single program using the JDBC API, and the program will be able to
send SQL statements to the appropriate database. And, with an application written in the Java
programming language, one also doesn't have to worry about writing different applications to run
on different platforms. The combination of Java and JDBC lets a programmer write it once and
run it anywhere.
Introduction of Java Database Connectivity
Java, being robust, secure, easy to use, easy to understand, and automatically Downloadable on a
network, is an excellent language basis for database applications. What is needed is a way for
Java applications to talk to a variety of different databases. JDBC is the mechanism for doing
this. JDBC extends what can be done in Java. For example, with Java and the JDBC API, it is
possible to publish a web page containing an applet that uses information obtained from a remote
database. Or an enterprise can use JDBC to connect all its employees (even if they are using a
conglomeration of Windows, Macintosh, and UNIX machines) to one or more internal databases
via an intranet.
19
With more and more programmers using the Java programming language, the need for easy
database access from Java is continuing to grow. MIS managers like the combination of Java and
JDBC because it makes disseminating information easy and economical. Businesses can
continue to use their installed databases and access information easily even if it is stored on
different database management systems. Development time for new applications is short.
Installation and version control are greatly simplified.
What Does JDBC Do?
Simply put, JDBC makes it possible to do three things:
1. establish a connection with a database
2. send SQL statements
3. process the results.
The following code fragment gives a basic example of these three steps:
Class.forName("com.mysql.jdbc.Driver");
con= DriverManager.getConnection("jdbc:mysql://localhost:3306/cineplex", "root", "1");
Statement stmt = con.createStatement();
ResultSetrs = stmt.executeQuery("SELECT a, b, c FROM Table1");
while (rs.next()) {
int x = getInt("a");
String s = getString("b");
float f = getFloat("c");
}
JavaSoft provides three JDBC product components as part of the Java Developer's Kit (JDK):
. the JDBC driver manager,
. the JDBC driver test suite, and
. the JDBC-ODBC bridge.
20
SYSTEM DESIGN
MODULE FLOW CHART:
Login
Admin User
Add category
Add
SubCategory
Add book
Delete Book
Logout
Choose a
Category
Purchase
Books
Logout
21
DEVELOPMENT LIFE CYCLE
INTRODUCTION
The Software Development Life Cycle (SDLC) is a conceptual model used in project
management that describes the stages involved in an information system development project
from an initial feasibility study through maintenance of the completed application. Various
SDLC methodologies have been developed to guide the processes involved including the
waterfall model (the original SDLC method). Documentation is crucial regardless of the type of
model chosen or devised for any application, and is usually done in parallel with the
development process. Some methods work better for specific types of projects, but in the final
analysis, the most important factor for the success of a project may be how closely particular
plan was followed.
22
System Analysis
The Analysis model:
 The analysis model must achieve three primary objectives:
 To describe what the customer requires.
 To establish the basis for the enhancement of a software design.
 To define a set of requirements that can be validated once the software is completely
enhanced. The main elements of the analysis model are briefly described below.
 At the core of the model lies the data dictionary, which is a repository that contains
descriptions of all the data objects
Data
Dictionar
y
Entity
Relationship
Diagram
Data Object
Description
Process
Specification
Data Flow
Diagram
State Transition
Diagram
Control
Specification
23
Consumed or produced by the software .Three different diagrams surround the core.
 The entity relation diagram depicts relationships between data objects.
 The data flow diagram provides an indication of how the data is transformed as they
move through the system.
 The state transition diagram indicates how the system behaves as a consequence of
external events.
System analysis is an explicit formal inquiry carried out to help someone identify a better course
of action and make a better decision than he might otherwise have made. The characteristic
attributes of a problem situation where systems analysis is called upon are complexity of the
issue and uncertainty of the outcome of any course of action that might reasonably be taken.
Systems analysis usually has some combination of the following: identification and re-
identification) of objectives, constraints, and alternative courses of action; examination of the
probable consequences of the alternatives in terms of costs, benefits, and risks; presentation of
the results in a comparative framework so that the decision maker can make an informed choice
from among the alternatives.
There are several specific kinds or focuses of systems analysis for which different terms are
used: A systems analysis related to public decisions is often referred to as a POLICY
ANALYSIS. A systems analysis that concentrates on comparison and ranking of alternatives on
basis of their known characteristics is referred to as DECISION ANALYSIS.
FEASIBILITY STUDY
The feasibility study is used to determine if the project should get the go-ahead. If the project is
to proceed, the feasibility study will produce a project plan and budget estimates for the future
stages of development. Feasibility is the determination of whether or not a project is worth doing
the process followed in making this determination is called a feasibility study. It is an analysis of
possible alternative solutions to aproblem and a recommendation on the best
alternative.Feasibility study is carried out to select the best system that meets system
performance requirements.
24
Different types of feasibility study:
 Technical feasibility
 Operational feasibility
 Economic feasibility
Technical Feasibility:
This is concerned with the specifying equipment and software that will successfully satisfy the
requirements. The proposed system is technically feasible as it can be developed easily with the
help of available technology. The proposed system requires MS-Access which is used as back-
end and Core Java with Swings and JDBC as front end.
In the technical needs of the system these points are considered.
 The facility to produce in given time.
 Response time under conditions.
 Availability to process a certain volume of transaction at a particular speed
Economical Feasibility:
Economic analysis is the most frequently used technique for evaluating the effectiveness of the
proposed system. The producer is to determine the benefits and the saving that are expected
from a proposed system and compare them with the proposed system.
The only tangible benefits proposed that the manual work and burden is reduced maximum as
possible, resulting the reduction in manpower requirement and cost incurred on manpower as
well. The system provides many benefits that can’t be measured in terms of money for e.g. user
friendliness, more efficient user response, maintenance of database etc.
25
Operational Feasibility:
The proposed system is highly user friendly and it is much easily to interact with the user.
Therefore, the user will easily accept the system as data entry system and queries can be easily
solved. Initial stages of the system might face some resistance but once complete automation is
achieved and operators are trained. The system will provide maximum easiness.
It is mainly related to human organizational and political aspects in it we consider:
 What changes will be brought with the system?
 What organizational structures are distributed?
 What new skill will be required?
COST-BENEFIT ANALYSIS
Cost Benefit analysis:
Cost saving benefits lead to reduction in administrative and operational costs. A reduction in the
size of the clerical staff used in the support of an administrative activity is an example of a cost
saving benefit. Cost and benefits can be classified as follows:
 Tangible or Intangible
 Fixed or Variable.
 Direct or Indirect
Tangible or Intangible:
Tangible refers to easy with which cost or benefit can be measured. An outlay of cost for any
specific items or activity is referred to as a tangible cost. Cost that are known to exist what their
financial value cannot be exactly measured as known as intangible cost.
26
Fixed or Variable cost:
Some cost and benefit remain constant regardless of how a system is used fixed costs are
considered as sink cost. One encountered they will not recur. For e.g the purchase of equipment
for a computer center is called as fixed cost. It remains constant whether it is used.
In variable cost these are incurred on regular bases they are generally proportion to work volume
and continue as long as the system is in operation.
Direct or Indirect:
Direct cost are those which are directly associated with a system. There is directly applied
operator. For e.g. the purchase of a floppy for Rs.400 is a direct cost because we can associate
the floppy box with money spend.
Indirect costs are not directly associate with a specific activity in the system they are often
referring to as an overhead expense. For example cost of space to install a system, maintenance
of computer center, heat-light and air-conditioning are all tangible cost.
DESIGNING
SYSTEM DESIGN
System design is the process of developing specifications for a candidate system that meet the
criteria established in the Planning. Major step in system design is the preparation of the input
forms and the output reports in a form applicable to the user.
The purpose of design phase is to plan a solution for problem specified by the requirement
document. In other words, starting with what is needed, design takes us toward how to satisfy the
needs. The design of a system is the most critical factor affecting the quality are translated into a
blue-print for constructing the software.
27
The main objective of the system design is to make the system user friendly.
System design involves various stages as:
 Data Entry
 Data Correction
 Data Deletion
 Processing
 Sorting and Indexing
 Report Generation
System design is the creative act of invention, developing new inputs, a
database, offline files, procedures and output for processing business to meet an
organization objective. System design builds information gathered during the
system analysis.
The designing phase of any software development is carried out in the
following stages:
 Architectural design( high level design)
 Detailed design(low level design or physical design)
HIGH LEVEL DESIGN:
The top level design aims to identify the modules that should be in the system, the specification
of these modules, and how they interact with each other to produce the desired results, at the end
of the system design all the major data structures, file formats, output formats, and the major
modules in the system and their specifications are decided.
It involves:
Identifying the entities
All the entities related to the model were identified, checked and consolidated.
28
Identifying the relationships
The relationships between the entities within and outside the system were identified.
Attribute definition
Attributes for each entity were identified and their field characteristics were identified. At the
end of the logical design, a system modeled on DBMS should be fully organized. Further, though
a fully normalized design may not be the design adopted in the final physical model, it is still
desirable fully normalize the design and then de-normalize it in a controlled manner to take care
of optimality. Since normalization is a body of rules addressing analysis and conversion of data
structures into relations that exhibit more desirable properties of internal consistency, minimum
redundancy and maximum stability.
DATA NORMALIZATION:
The focus of normalization is on reducing storage overheads. Specially, the aims are;
 To identify and isolate the entities involved.
 To remove redundant information.
 To determine the identifying attributes of records.
An entity is something exists. It may be something tangible or it may even be just a relationship.
Every occurrence of an entity will have some discernible attributes. Removing redundancy, the
second aim of normalization, is the other way of eliminating waste space. The last aim or having
identifying attribute can be accessed. It also facilitates linking of tables.
LOW LEVEL DESIGN:
During detailed design, the internal logic of each of the modules specified design is decided.
During the phase further details of the data structure and algorithmic design of each of the
modules is specified. The logic of the module is usually specified in a high level design
29
description language, which is independent of the target language in which the software will
eventually be implemented.
In the system design the focus is on identifying the modules, where as during detailed design
focus is on designing the logic for each of the modules. The three main tools of system design
are:
 Data flow diagram
 Flow charts
 Data dictionary
TESTING
Introduction
During earlier development phases, an attempt is made to build software from an abstract
concept to a tangible implementation. Software testing is a critical element of software quality
assurance and represents ultimate review of specification, design and coding notion of
“correctness” of the software just developed and overcome a conflict of interest that occurs when
errors are recovered. A thorough testing of system before any implementation is mandatory, as
regards its individual program, the system as a whole, user acceptance of the system etc. this is
because implementing a new system is a major job, which requires a lot of man-hours and other
resources, so an error not detected before implementation may a cost a lot. Effective testing early
in a process is also necessary because in some cases, a small error not detected and corrected
early before installation may explore into much larger problems.
After programming comes the stage of installing the computerized system. Actual
implementation of the system can be begin at this point using either of parallel or direct change
over plan, or a blend of the two.
Testing the system
 Testing can be done with two types of data. Live data and test data.
30
 Live data is the data actually to be used in the proposed system.
 Test data is previously designed sample input to achieve predictable results.
Testing Objective
 Testing is a process of execution a program with the intent of finding an error.
 A good test case is one that has a high portability of finding an undiscovered error.
 A successful test is one that uncovers an as-yet-discovered error.
Testing Principles
 ATI tests should be traceable to customer requirements.
 Test should be planned long before testing phase.
 Testing should begin “in small “ and progress toward testing “in the large”.
 Exhaustive testing is completely possible.
 To be most effective, an independent third party should conduct testing.
TESTING METHODS
White Box Testing:
White box testing of software is predicated on close examination of procedural detail. Providing
test cases that exercise specific sets of conditions and or loops tests logical paths through the
software. White Box Testing, sometime called glass box testing, is a test case design method that
uses the control structure of the procedural design to derive test cases.
Using white box testing methods, following test cases can be derived.
 Guarantee that all independent paths within module have been
exercised at least once.
 Exercise all logical decisions on their true and false sides. Execute all
loops at their boundaries and within their operational bounds.
31
 Exercise internal data structures to assure their validity.
 The errors that can be encountered while conducting white box testing
are-
 Logical errors and incorrect assumptions.
 Typographical errors
Black Box Testing:
Black box testing is carried out to check the functionality of the various modules. Although they
are designed to uncover errors, black box tests are used to demonstrate that software functions
are optional; that input is properly accepted and output is correctly produced, and the integrity of
external information is maintained, a black box test examines some fundamental aspects of the
system with little regard for the internal logical structure of the software. Black box testing
focuses on the functional requirements of the software.
Black box testing attempts to find errors in the following categories:
 Incorrect or missing functions.
 Interface errors.
 Errors In data structure or external database access.
 Performance errors
 Initialization and termination errors.
Unlike white box testing, which is performed early in the testing process, black box tends to
apply during later stages of testing. Because black box testing purposely disregards control
structure, attention is focused on the information domain.
SOFTWARE TESTING STRATEGIES:
A strategy for software testing integrates software test case design methods into a well planned
series of steps that result in the successful construction of software. An important, software
32
testing strategy provides a road map. Testing is set of activities that can be planned in advanced
and conducted systematically. Various strategies are given below:
Unit Testing: Unit testing focuses verification effort on the smallest unit of software design i.e.
module. Using procedural design as a guide, important control paths are tested to uncover errors
within the boundary of the module.
Integration Testing: Integration testing is systematic technique for constructing the program
structure while conducting tests to uncover errors associated with interfacing.
Acceptance Testing: To ensure that the final system, as it will be delivered, complies with all
the client’s requirements of the system, as detailed in the SRS. If monitor alterations are
required, then some form of regression testing may also have to be used.
Validation Testing: At the culmination of Integration testing, software is completely assembled
as a package, Interfacing errors have been uncovered and corrected and a final series of software
test-validation testing may begin.
System Testing: Software is incorporated with other system elements and a series of system
integration and validation test are conducted. The various types of system testing are:
 Recovery Testing: many computer based systems must recover from faults and resume
processing within a pre-specified time.
 Security Testing: Security testing attempts to verify that protection mechanisms built into
a system will in fact protect it from improper penetration.
 Stress Testing: Stress tests are designed to confront programs with abnormal situations.
 Performance Testing: Performance testing is designed to test run time performance of
software within the context to an integrated system.
All above mentioned testing principles have been applied to all the modules and the modules
have passed the tests successfully.
33
TESTING OF FORMS
Forms are the interface between the user and database system. Testing of forms was extensive
task. All data entry and query formats are designed using forms. Forms were tested to ensure that
they are performing the tasks and well they are designed fork and correction and modifications
were made found to be necessary.
System testing is designed to uncover weaknesses that were not found in the earlier tests. This
includes forced system failure and its users in the operational environment will implement
validation of the total system as it. After a successful testing of the individual programs and
forms, the whole system was through a series of test to ensure the proper working of the system
as a whole. The system as a whole unit put to all-possible inputs. The consistency and validity is
then checked by the outputs. The activities involved in the system testing are:
 Integration Testing
 Acceptance Testing
In integration testing the entire system is tested and Acceptance Testing involves planning and
execution of functional tests, performance tests and stress testing order to demonstrate that the
implemented system satisfied its requirements. The functional tests, performance tests and stress
tests are performed to determine the limitation of the system.
Functional Tests:
The system went through functional tests all along the development stage. Whenever a new
function was added it went through a thorough testing for all possible input values and its
interoperability with other functions by the coder. On delivery of the intermediate system to the
customer, the customer studied the system functionalities and provided the feedback, which often
mentioned the changed desired. So the system, went through functional test both at the developer
and customer ends.
34
Performance Tests:
Before the delivery of the system to the customers the new system went through various tests to
benchmark its performance.
 These included the GUI testing.
 The functional testing.
 And, the overall system integrity testing.
Stress Tests:
The system was pushed to its limits and beyond during the stress testing, to measure its
performance and stability versus the load.
Security Tests:
The functional environment of the system posed no real security threat but the system was
developed considering the entire data to be highly critical and thus denying free access to anyone
without proper access rights. The entire system was password protected.
Post Implementation Review
After the system is implemented and conversion is complete, a review should be conducted to
determine whether the system is meeting expectations and where improvements are needed. A
post implementation review measures the systems performance against predefined requirement.
It determines how well the system continues to meet the performance specifications. A Post-
Implementation Review (PIR) is an assessment and review of the completed working solution. It
will be performed after a period of live running, sometime after the project is completed.
35
TABLES USED
Table 1:LoginInfo
LoginInfo
Column Name Data Type Constraint
UserName Varchar(100) Primary key
Password Varchar(100)
RoleName Varchar(100)
EmailID Varchar(100) Unique key
SecurityQuestion Varchar(1000)
SecurityAnswer Varchar(100)
LastLogin Datetime
Table 2: BookCategory
BookCategory
Column Name Data Type Constraint
BookID Varchar(20) Primary key
BookName Varchar(100) Unique key
Description Varchar(1000)
36
Table 3: BookSubCategory
BookSubCategory
Column Name Data Type Constraint
SubBookCategoryID Int Auto increment , Primary
key
SubBookCategoryName Varchar(100)
Description Varchar(1000)
BookID Varchar(20) Foreign key with Product
Category
Table 4: CompanyInfo
CompanyInfo
Column Name Data Type Constraint
PublicationID Varchar(20) Primary key
PublicationName Varchar(100) Unique key
Description Varchar(1000)
Table 5: BookInfo
BookInfo
Column Name Data Type Constraint
BookID Int Primary key , auto increment
BookName Varchar(100)
SubBookCategoryID Int Foreign key with
ProductSubCategory
PublicationID Varchar(20) Foreign key with
CompanyInfo
Price Float
Quantity Int
37
Table 6:BookStock
BookStock
Column Name Data Type Constraint
StockID Int Primary key,auto increment
BookID Int Foreign key with Product
Info
Quantity Int
StockType Enum(‘IN’,’OUT’)
StockDate Datetime
Table 7:BookPhoto
BookPhoto
Column Name Data Type Constraint
PhotoID Int Primary key,auto increment
PhotoName Varchar(100)
ExtName Varchar(100)
PhotoType Varchar(100)
PhotoSize Int
BookID Int Foreign key with product
info
Table 8:CartInfo
CartInfo
Column Name Data Type Constraint
CartID Int Primary key,auto increment
UserName Varchar(100)
CartDate Datetime
IsOrder Enum(‘1’,’0’)
38
Table 9:CartItems
CartItems
Column Name Data Type Constraint
BookItemID Int Primary key,auto increment
BookID Int Foreign key with ProductInfo
Quantity Int
Price Float
CartID Int Foreign key with CartInfo
Table 10:OrderInfo
OrderInfo
Column Name Data Type Constraint
OrderID Int Primary key,auto increment
UserName Varchar(100) Foreign key with LoginInfo
CartID Int Foreign key with CartInfo
OrderDate Datetime
ShippingDate Datetime
OrderStatus Varchar(1000)
ShippingAddress Varchar(1000)
Table 11:
OrderDetails
Column Name Data Type Constraint
DetailID Int Primary key,auto increment
BookID Int Foreign key with ProductInfo
Quantity Int
Price Float
39
SNAPSHOTS
1. HOME PAGE: The home page is the first look of the online bookshop. This home page is
filled with graphics as well as information about which the site is all about.
The Home page consists of:
 Links to Login page and Registration page.
 Options of choose a Category and Select Publications.
 Information about new Books and special offers.
 Information about the website and contact details.
Home Page
40
2. LOGIN PAGE: The Login page can be accessed by the registered users only. The Login
page consists of:
 Username Text Field: The user has to enter the username in this text field.
 Password Text Field:The user has to enter the password in this text field.
(Login Page)
41
If the user enters invalid Username or Password or both, a message will be displayed “Invalid
Username Or Password”.
3. REGISTRATION PAGE: The registration page is where new users have to register in
order to purchase the books. Users can only login when they have registered first.
The Registration page consists of:
 Enter New Username: The new users have to give a unique username to register.
 Enter New Password: The user has to give a new password by which they can login
their account.
 Enter Email Id: The user has to enter a valid email id for registering their accounts.
42
 Choose Security Question: In this field, the user can select a security question fron
the already given choices of questions, such as:
 What was your childhood pet name?
 What is the name of your pet?
 Enter Security Answer: In this field, the user will answer the security question. This
security question can be used in case the user forgets his/her password.
(Registration Page)
43
FUTURE SCOPE OF THE PROJECT
This project can be easily implemented under various situations.We can add new features as and
when we require. Reusability is possible as and when require in this project. There is flexibility
in all the modules.
We can also include online payment services to this project using PayPal. This will help
customers to pay online for their purchases using Credit/Debit card. There are many features
which could be added to this project for making this project more productive.
44
CONCLUSION
The software development is never completed. There is always a need for modification. There
could have been other approaches to implement the system. I have tried to my level best to make
the system an interactive as possible.
The developed system is flexible and changes whenever can be made easy. Using the
facilities and functionalities of J2EE and jsp, the website has been developed in a neat
and simple manner, thereby reducing the operators work. The speed and accuracy are
maintained in proper way. The user friendly nature of this website developed in J2EE and
jsp is very easy to work with both for the admin as well as other users with little
knowledge of computer.
45
REFERENCES
1) Servlet and JSP Quick Reference
http://www.coreservlets.com
http://www.moreservlets.com
2) JSP: The Complete Reference. Phil Hanna. Osborne/McGraw-Hill.
3) Java Servlet Programming, 2nd edition by Jason hunter, William Crawford, Publisher:
O’Reilly media.
4) Java Web Programming with Eclipse by David Turner and JineokChae.
5) http://www.oracle.com/technetwork/java/index.html
6) Y. Daniel Liang, ”Introduction to Java Programming” 9thed, 2012.
7) www.w3schools.com/sql
46
Website Reference
 www.oracle.com/technetwork/java/index.html
 www.freewebmasterhelp.com
 www.tutorialspoint.com/jsp/
 www.coreservlets.com
 www.w3schools.com/jsp
 www.tomcat.apache.org/

More Related Content

What's hot

Synopsis of Library Management System
Synopsis of Library Management SystemSynopsis of Library Management System
Synopsis of Library Management SystemAnkit Verma
 
online library management system
online library management systemonline library management system
online library management systemVirani Sagar
 
Project online library management
Project online library managementProject online library management
Project online library managementPrem Prasun
 
Software requirements specification of Library Management System
Software requirements specification of Library Management SystemSoftware requirements specification of Library Management System
Software requirements specification of Library Management SystemSoumili Sen
 
Book store php ppt
Book store php  pptBook store php  ppt
Book store php pptPriya Chavan
 
Library management system synopsis
Library management system synopsisLibrary management system synopsis
Library management system synopsisShubham Upadhyay
 
Online Shop Project Report
Online Shop Project ReportOnline Shop Project Report
Online Shop Project ReportJayed Imran
 
Final Presentation on Online Library Management
Final Presentation on Online Library ManagementFinal Presentation on Online Library Management
Final Presentation on Online Library ManagementSneha Yadav
 
SRS for Library Management System
SRS for Library Management SystemSRS for Library Management System
SRS for Library Management SystemToseef Hasan
 
Library management system
Library management systemLibrary management system
Library management systemArman Ahmed
 
Online ecommerce website srs
Online ecommerce  website srsOnline ecommerce  website srs
Online ecommerce website srsSM Nurnobi
 
Project proposal book_shop
Project proposal book_shopProject proposal book_shop
Project proposal book_shopkawsher11
 
Library Management System - LMS
Library Management System - LMSLibrary Management System - LMS
Library Management System - LMSHasibul Haque Hira
 
Online library management system
Online library management systemOnline library management system
Online library management systemBharat Kunwar
 
Book Shop Management System
Book Shop Management SystemBook Shop Management System
Book Shop Management SystemMuhammadRifat12
 
Library management system
Library management systemLibrary management system
Library management systemKhushboo Taneja
 
Project report final
Project report finalProject report final
Project report finalJaya Saini
 

What's hot (20)

Synopsis of Library Management System
Synopsis of Library Management SystemSynopsis of Library Management System
Synopsis of Library Management System
 
online library management system
online library management systemonline library management system
online library management system
 
Project online library management
Project online library managementProject online library management
Project online library management
 
Software requirements specification of Library Management System
Software requirements specification of Library Management SystemSoftware requirements specification of Library Management System
Software requirements specification of Library Management System
 
Book store php ppt
Book store php  pptBook store php  ppt
Book store php ppt
 
Library management system synopsis
Library management system synopsisLibrary management system synopsis
Library management system synopsis
 
Online Shop Project Report
Online Shop Project ReportOnline Shop Project Report
Online Shop Project Report
 
Ppt on ONLINE BOOK STORE
Ppt on ONLINE BOOK STOREPpt on ONLINE BOOK STORE
Ppt on ONLINE BOOK STORE
 
Final Presentation on Online Library Management
Final Presentation on Online Library ManagementFinal Presentation on Online Library Management
Final Presentation on Online Library Management
 
SRS for Library Management System
SRS for Library Management SystemSRS for Library Management System
SRS for Library Management System
 
Library management system
Library management systemLibrary management system
Library management system
 
Online ecommerce website srs
Online ecommerce  website srsOnline ecommerce  website srs
Online ecommerce website srs
 
Project proposal book_shop
Project proposal book_shopProject proposal book_shop
Project proposal book_shop
 
Library Management System
Library Management SystemLibrary Management System
Library Management System
 
Library Management System - LMS
Library Management System - LMSLibrary Management System - LMS
Library Management System - LMS
 
Online library management system
Online library management systemOnline library management system
Online library management system
 
Online shopping
Online shoppingOnline shopping
Online shopping
 
Book Shop Management System
Book Shop Management SystemBook Shop Management System
Book Shop Management System
 
Library management system
Library management systemLibrary management system
Library management system
 
Project report final
Project report finalProject report final
Project report final
 

Similar to Online bookshop

Design and Implementation of E-Commerce Site for Online Shopping.pdf
Design and Implementation of E-Commerce Site for Online Shopping.pdfDesign and Implementation of E-Commerce Site for Online Shopping.pdf
Design and Implementation of E-Commerce Site for Online Shopping.pdfOmar Omar
 
Design and Implementation of E-Commerce Site for Online Shopping.pdf
Design and Implementation of E-Commerce Site for Online Shopping.pdfDesign and Implementation of E-Commerce Site for Online Shopping.pdf
Design and Implementation of E-Commerce Site for Online Shopping.pdfTomTom149267
 
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
 
online-book-store-in-python-and-django-report.pdf
online-book-store-in-python-and-django-report.pdfonline-book-store-in-python-and-django-report.pdf
online-book-store-in-python-and-django-report.pdfsaladisubhashaa
 
Depex_Groceries & Recipes Website & Mobile App
Depex_Groceries & Recipes Website & Mobile AppDepex_Groceries & Recipes Website & Mobile App
Depex_Groceries & Recipes Website & Mobile AppDepex Technologies
 
ToolsTrade.com Project Final pres
ToolsTrade.com Project Final presToolsTrade.com Project Final pres
ToolsTrade.com Project Final prespurvanahar
 
Standalone desktop application
Standalone desktop applicationStandalone desktop application
Standalone desktop applicationShreya Dandavate
 
Internship_ppt.pptx
Internship_ppt.pptxInternship_ppt.pptx
Internship_ppt.pptxApoorvaRV
 
online shopping
online shopping online shopping
online shopping Ankuj Kumar
 

Similar to Online bookshop (20)

Kamran Ali CV
Kamran Ali CVKamran Ali CV
Kamran Ali CV
 
Design and Implementation of E-Commerce Site for Online Shopping.pdf
Design and Implementation of E-Commerce Site for Online Shopping.pdfDesign and Implementation of E-Commerce Site for Online Shopping.pdf
Design and Implementation of E-Commerce Site for Online Shopping.pdf
 
Design and Implementation of E-Commerce Site for Online Shopping.pdf
Design and Implementation of E-Commerce Site for Online Shopping.pdfDesign and Implementation of E-Commerce Site for Online Shopping.pdf
Design and Implementation of E-Commerce Site for Online Shopping.pdf
 
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
 
Bhatt
BhattBhatt
Bhatt
 
Raja3Years
Raja3YearsRaja3Years
Raja3Years
 
komala.docx
komala.docxkomala.docx
komala.docx
 
online marketplace report
online marketplace reportonline marketplace report
online marketplace report
 
GLAM COLLECTION.pptx
GLAM COLLECTION.pptxGLAM COLLECTION.pptx
GLAM COLLECTION.pptx
 
online-book-store-in-python-and-django-report.pdf
online-book-store-in-python-and-django-report.pdfonline-book-store-in-python-and-django-report.pdf
online-book-store-in-python-and-django-report.pdf
 
MKP_Resume
MKP_ResumeMKP_Resume
MKP_Resume
 
amansingh.docx
amansingh.docxamansingh.docx
amansingh.docx
 
Depex_Groceries & Recipes Website & Mobile App
Depex_Groceries & Recipes Website & Mobile AppDepex_Groceries & Recipes Website & Mobile App
Depex_Groceries & Recipes Website & Mobile App
 
ToolsTrade.com Project Final pres
ToolsTrade.com Project Final presToolsTrade.com Project Final pres
ToolsTrade.com Project Final pres
 
Standalone desktop application
Standalone desktop applicationStandalone desktop application
Standalone desktop application
 
Internship_ppt.pptx
Internship_ppt.pptxInternship_ppt.pptx
Internship_ppt.pptx
 
puja samagari project
puja samagari projectpuja samagari project
puja samagari project
 
E commerce
E commerce E commerce
E commerce
 
online shopping
online shopping online shopping
online shopping
 
All In One Kart
All In One KartAll In One Kart
All In One Kart
 

Recently uploaded

AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdfankushspencer015
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...roncy bisnoi
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
University management System project report..pdf
University management System project report..pdfUniversity management System project report..pdf
University management System project report..pdfKamal Acharya
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Dr.Costas Sachpazis
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...ranjana rawat
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlysanyuktamishra911
 
Glass Ceramics: Processing and Properties
Glass Ceramics: Processing and PropertiesGlass Ceramics: Processing and Properties
Glass Ceramics: Processing and PropertiesPrabhanshu Chaturvedi
 
Online banking management system project.pdf
Online banking management system project.pdfOnline banking management system project.pdf
Online banking management system project.pdfKamal Acharya
 
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...ranjana rawat
 
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfKamal Acharya
 
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Bookingdharasingh5698
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINESIVASHANKAR N
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxpranjaldaimarysona
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSSIVASHANKAR N
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 

Recently uploaded (20)

AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdf
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
University management System project report..pdf
University management System project report..pdfUniversity management System project report..pdf
University management System project report..pdf
 
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
Structural Analysis and Design of Foundations: A Comprehensive Handbook for S...
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(SHREYA) Chakan Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghly
 
Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024
 
Glass Ceramics: Processing and Properties
Glass Ceramics: Processing and PropertiesGlass Ceramics: Processing and Properties
Glass Ceramics: Processing and Properties
 
Roadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and RoutesRoadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and Routes
 
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
 
Online banking management system project.pdf
Online banking management system project.pdfOnline banking management system project.pdf
Online banking management system project.pdf
 
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
 
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
 
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptx
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
 

Online bookshop

  • 1. 1 CONTENT PAGE (i) Certificate 2 (ii) Company certificate (iii) Acknowledgement 3 1. Company Profile 4-6 2. Software/Hardware Configuration 7 3. List of Tables 8 4. Introduction 9 5. ProjectDetails 10-11 6. Language Details 12-20 7. System Design: Module Flow Chart 21 8. DevelopmentLife cycle: Introduction 22-24 Feasibility Study 24-26 9. Desigining 27-30 10.Testing: 30-35 Testing Methods 31-32 11.Tables Used 36-39 12.Snapshots 40-43 13.Future Scope ofthe Project 44 14.Conclusion 45 15.References 46 16.Website References 47
  • 2. 2 CERTIFICATE This is to certify that MR. MOHIT KAUL (1811341) is a bonafide student of Bachelor of Technology in Computer Engineering being run by Haryana Engineering College, Jagadhri of Batch 2011-2015 has delivered a presentation with Seminar Report entitled “ONLINE BOOKSHOP” in presence of the undersigned. We wish her all Success in his life. (Faculty Signature) Date ………………. Er. NavdeepKumar (Associate Professor)
  • 3. 3 ACKNOWLEDGEMENT I bow my head to almighty god who gave us strength and wisdom due to which we have been able to express our views and research. A work of this nature can never be done by any person alone. This project is an acknowledgement to the intensity, drive and technical competence of many individuals who have contributed to it. No endeavour can successfully accomplish without any active participation, sincere assistance and encouraging inspiration of others. Cooperation, support, advice and guidance of many people who have brought this dissertation in this present shape. The special thanks go to my helpful supervisor Mr MukeshJamwal(java trainer, Grapess Solutions Pvt Ltd. Yamuna Nagar). The supervision and support that he gave truly help the progression and smoothness of the progression of the internship program. The cooperation is much indeed appreciated. My grateful thanks also go to my team members. We work together to provide success environment to the project. A big contribution and hardwork from the team during 45 days is very great indeed. All projects during the program would be nothing without the enthusiasm of the team. Besides this, the internship program makes me realise the importance of working together as a team and as a new experience in working environment which challenges us every minute. My sincere thanks go to our respected HOD for support. I would like to thank all the staff of the institute who provided the best of their knowledge and give us newer and better ideas, whenever required and requested for. I offer appreciation to my parents and all our friends for their ever willing cooperation and moral support. MOHIT KAUL 1811341 CSE-4th yr.
  • 4. 4 COMPANY PROFILE GRAPESS SOLUTIONS (P) Ltd. An ISO 9001: 2008 Certified Company #3, Block No. 533, First Floor, Opp. Kumar Mall,, Kumar Mall Rd, Model Town, Sarojini Colony, Yamuna Nagar, Haryana 135106 Grapess Solutions has started in March,2010 with a vision to provide every solution of IT. We have started with IT education & training and software solution In Web Design & Development: Grapess Solutions provides professional website design, development and maintenance services. Our experienced web designers and developers carry out various website projects from brochure sites to multi-functional web portals. Grapess Solutions has a large team of resources and the required business and technical expertise to develop websites of any complexity. We provide complete front-end and back-end development based on the latest technologies and industry trends. What you can expect with every website design project:  Great, fast loading, modern design.  Private, in progress viewing during design and development.  Content management system to easily edit your website.  Basic search engine optimization to help you rank better.  Site map to help visitors find what they are looking for.  User friendly/Search engine friendly navigation menu.  Email/information request forms to allow visitor feedback and inquiries.  Upload to your website host when going live.  Manual submission to Google, Yahoo, and Bing.  Free minor changes for two weeks following launch of new site
  • 5. 5 Vision / Mission:-  Our Vision Our vision is to be the leader in Infrastructure Products, Services and creating value for our customers to earn their Lifetime loyalty.  OurMission Every team member at Grapess Solutions will strive to provide Cost effective, Best Quality Products and Services to our customers through adherence to and with continuous improvements in Standards, Systems and Processes. Our Software DevelopmentServices include: 1. Windows Software Development 2. Web Application Development 3. Software Products 4. Software Rebranding Website Designing Professional website designing and website development services, web application development, ecommerce website development, web design India, offshore website design, SEO services, offshore engineering services and web design services. Our services are backed by a professional work portfolio and glowing reviews. We have been providing best-in-class web site design, web development, search engine optimization & website maintenance services to Indian & offshore businesses since 2002. Our website design services will get you the results that you always wanted. Our websites are clean, clear and customized to your needs! Your website is an online resume for yourbusiness. Why wouldn’t you want to appear your very best? At Grapess, we provide professional website designing and create custom logos at affordable prices.
  • 6. 6 SOFTWARE/HARDWARE CONFIGURATION Software The following are the software required for the project:  Microsoft Windows7/8  Jdk  Apache Tomcat  MySQL Hardware The following are the hardware required for the project:  PC with Dual Core 1.3 or Higher Processor  512 MB RAM or Higher  Minimum 20 GB hard disk space. For this software there are following alternatives:- Front End : J2EE Back End : MySQL Editor : Eclipse Doc Tool : MS-Word
  • 7. 7 LIST OF TABLES 1) Table 1: LoginInfo 2) Table 2: BookCategory 3) Table 3: BookSubCategory 4) Table 4: PublicationInfo 5) Table 5: BookInfo 6) Table 6: BookStock 7) Table 7: BookPhoto 8) Table 8: CartInfo 9) Table 9: CartItems 10) Table 10: OrderInfo 11) Table 11: OrderDetails
  • 8. 8 INTRODUCTION This project deals with developing an e-commerce website for Online Book Shop. It provides the user with a catalogue of different books available for purchase in the store. In order to facilitate online purchase a shopping cart is provided to the user. In order to 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, JAVA script, and HTML), relational databases (such as MySQL, Access). This is a project 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. An Online Book shop is a virtual store on the internet where customers can browse the catalogue and select books of interest. The selected books may be collected in a shopping cart. At checkout time, the items in the shopping cart will be presented as in order. At that time, more information will be needed to complete the transaction. Usually, the customer will be asked to fill a billing address, a shipping option, and payment information such as credit card number.
  • 9. 9 PROJECT DETAILS There are two views of this Online Bookshop: 1) ADMINISTRATOR VIEW:The administrator controls the all online bookshop activities. The admin also has a username & password through which he enters in the admin view.It has the following :  Add or Delete a Category: The admin can add or delete a category according to the needs of the website or the users.  Add or Delete a Book: Admin can add or delete a book from the catalogue.  Add or Delete a user: Admin can delete a user whenever he though to do so.  Logout:In the login page admin will move the login page. 2) USER VIEW:It contains following:  Login: The user can login using the username and password it has registered with. After login, the user can buy books from the catalogue.  Registration: A new user has to register first until then he cannot purchase the books. The project has following functionalities: 1) A Home page with product catalogue: This is the page where the user will be navigated after a successful login. It will display all the book categories and will have a search option for the required book. It also includes some special sections like special books etc. 2) Search: A search is a keyword option provided to the user using a textbox. The keyword to be entered should be the book title.
  • 10. 10 3) All Products:It contains all the products of the website. 4) Register with us: It is used for registering new users to the website. The users have to enter their details to get them registered. 5) About Us:It gives the details of the website and the developers. 6) Contact: It consists the contact details of the owners. 7) Login: The registered users login to the website using their username and password. 8) Shopping Cart: The user can manage their shopping cart which will include all the books to be selected. The user can edit, update and delete his shopping cart. A final shopping cart summary is displayed which includes all the items the user selected and the final cost. 9) Choose A Category: In this the user can choose the category from which user has to select the books of the category of the choice. 10) Administrator: The admin will be provided with special functionality likely  Add or Delete a book category.  Add or Delete a member.  Manage member orders.
  • 11. 11 LANGUAGE DETAILS Java Java is a blend of the best elements of its rich heritage languages combined with the innovative concepts required by its unique mission. Although Java has become inseparably linked with the online environment of the Internet, it is important to remember that Java is first and foremost a programming language. Much of the character of Java is inherited from C and C++. From C, Java derives its syntax. Many of Java’s object oriented features were influenced by C++. James Gosling, Patrick Naughton, Chris Warth, Ed Frank and Mike Sheridan developed Java at Sun Microsystems, Inc. in 1991. This Language was initially called “Oak” but was renamed “Java” in 1995. The original impetus for Java was the need for a platform independent language that could be used to create software to be embedded in various consumer electronics devices such as remote controls. But, with the emergence of the World Wide Web, Java was propelled to the forefront of computer language design, because the web too, demanded portable programs. Principles There were five primary goals in the creation of the Java language: 1. It should be "simple, object-oriented and familiar". 2. It should be "robust and secure". 3. It should be "architecture-neutral and portable". 4. It should execute with "high performance". 5. It should be "interpreted, threaded, and dynamic". 6. Java™ has significant advantages over other languages and environments that make it suitable for just about any programming task. The advantages of Java are as follows:  Java is easy to learn.  Java was designed to be easy to use and is therefore easy to write, compile, debug, and learn than other programming languages.
  • 12. 12  Java is object-oriented.  This allows you to create modular programs and reusable code.  Java is platform-independent. One of the most significant advantages of Java is its ability to move easily from one computer system to another. The ability to run the same program on many different systems is crucial to World Wide Web software, and Java succeeds at this by being platform-independent at both the source and binary levels. Because of Java's robustness, ease of use, cross-platform capabilities and security features, it has become a language of choice for providing worldwide Internet solutions. JRE (Java Runtime Environment) The Java Runtime Environment (JRE) provides the libraries, the Java Virtual Machine, and other components to run applets and applications written in the Java programming language. In addition, two key deployment technologies are part of the JRE: Java Plug-in, which enables applets to run in popular browsers; and Java Web Start, which deploys standalone applications over a network. This is the official Java Download from Sun Microsystems. JDK (Java Development Kit) The Java Development Kit (JDK) is a Sun Microsystems product aimed at Java developers. Since the introduction of Java, it has been by far the most widely used Java SDK. On 17 November 2006, Sun announced that it would be released under the GNU General Public License (GPL), thus making it free software. This happened in large part on 8 May 2007[3]; Sun contributed the source code to the Open JDK. The JDK has as its primary components a collection of programming tools, including: Java – the loader for Java applications. This tool is an interpreter and can interpret the class files generated by the Javac compiler. Now a single launcher is used for both development and
  • 13. 13 deployment. The old deployment launcher, JRE, no longer comes with Sun JDK, and instead it has been replaced by this new java loader. Javac– the compiler, which converts source code into Java byte code. Applet viewer– this tool can be used to run and debug Java applets without a web browser The Java Buzzwords The key feature responsible for the development of Java is: Simple Java was design to be easy for the professional programmers to learn and use efficiently. If one already understand the basic concepts of OOP, learning Java will be ever easier. Robust The multi plat formed environment of the Web places extraordinary demands on a program, because the program must execute reliably in a verity of systems. Multithreaded Java was design to meet the real world requirements of creating interactive, networked programs. To accomplish this, Java supports multithreaded programming, which allows us to write programs that do many things simultaneously. Distributed Java is design for the distributed environment of the Internet, because it handles the TCP/IP protocols.
  • 14. 14 The brief discussion of APIs AWT It stands for Abstract Window Toolkit. Since all applets run in a window, it is necessary to include AWT, which supports window-based applet programs. Applets are event-driven. An applet waits until an event occurs. The AWT notifies the applet about an event by calling an event handler that had been provided by the applet. Once this happens, the applet must take appropriate actions and then quickly return control to the AWT. The architecture of an applet is not as easy to understand as that of a console-based program, Java’s AWT makes it as simple as possible. Awt.Event: Applets are event-driven programs. Thus, event handle is at the core of successful applet programming. Most events to which user’s applet will respond are generated by the user. These events are passed to user’s applet in variety of ways, with the specific method depending upon the actual event. There are several types of events. The most commonly handled events are those generated by the mouse, the keyboard, and various controls, such as push button. Events are supported by the java.awt.event package. Exception Handling- An exception is an abnormal condition that arises in a code sequence at run time. In other words, an exception is a run-time error. In computer languages that do not support exception handling, errors must be checked and handled manually—typically through the use of error codes, and so on. This approach is as cumbersome as it is troublesome. Java’s exception handling avoids these problems and, in the process, brings run-time error management into the object-oriented world. A Java exception is an object that describes an exceptional condition that has occurred in a piece of code. When an exceptional condition arises, an object representing that exception is created and thrown in the method that caused the error. That method may choose to handle the exception itself, or pass it on. Either way, at some point, the exception is caught and processed. Exceptions can be generated by the Java run-time system, or they can be manually generated by
  • 15. 15 the user’s code. Exceptions thrown by Java relate to fundamental errors that violate the rules of the Java language or the constraints of the Java execution environment. Manually generated exceptions are typically used to report some error condition to the caller of a method. Swing Swing is a set of classes that provides more powerful and flexible components than are possible with the AWT. In addition to the familiar components, such as buttons, check boxes, and labels, Swing supplies several exciting additions, including tabbed panes, scroll panes, trees, and tables. Even familiar components such as buttons have more capabilities in Swing. For example, a button may have both an image and a text string associated with it. Also the image can be changed as the state of the button changes. Unlike AWT components, Swing components are not implemented by platform-specific code. Instead, they are written entirely in Java and, therefore, are platform independent. The Swing-related classes are contained in javax.swing. Some of the classes used are JApplet, JLabel, JButton, JScrollPane, JTextArea, JTextField, JMenuBar, JMenu, JFrame. JApplet and JFrame provides a method getContentPane() which returns a reference to their associated content pane. So to get a reference to the JApplet’s container where user will add their GUI objects. Container appletContainer = getContentPane (); This statement can be in the instance variable initialization list, where user declare and instantiate the GUI objects. Then, subsequent adds or sets of layout managers in the constructor or in init() would be on this appletContainer. For example, AppletContainer.add(nameLabel); JApplet Fundamental to Swing is the JApplet class, which extends Applet. Applets that use Swing must be subclasses of JApplet. JApplet is rich with functionality that is not found in Applet.
  • 16. 16 JLabelSwing labels are instances of JLabel class, which extends JComponent. It can display text and / or an icon. This class is used for putting a label on an applet, like a label used is “Enter your name”. JTextField It allows user to edit one line of the text. Like a text field of 20 characters long is created with the label “Enter your name” to enter the name of the user. JButton JButton class provides the functionality of a push button. JButton allows an icon, a string, or both to be associated with push button. JTextArea It allows user to edit in an area specified in terms of rows and columns. JScrollPane Scroll panes are implemented in Swing by the JScrollPane, which extends JComponent. A scroll pane is a component that presents a rectangular area in which a component may be viewed. Horizontal and / or vertical scroll bars may be provided if necessary. JFrame The JFrame implements frames in Swings. Frame encapsulates a “window”. It is the subclass of a window and has a titlebar, menubar, borders and resizing corners. JMenuBar and JMenu A menu bar displays a list of top-level menu choices. JMenuBar and JMenu implement it.
  • 17. 17 JavaServer Pages (JSP) This technology enables you to mix regular, staticHTML with dynamically generated content from servlets. You simplywrite the regular HTML in the normal manner, using familiarWeb- page-building tools. You then enclose the code for the dynamicparts in special tags, most of which start with <% and end with %>. Forexample, here is a section of a JSP page that results in “Thanks for ordering Core Web Programming” for a URL of http://host/OrderConfirmation. jsp?title=Core+Web+Programming: Thanks for ordering <I><%= request.getParameter("title") %></I> Separating the static HTML from the dynamic content provides a numberof benefits over servlets alone, and the approach used in JavaServer Pages offers several advantages over competing technologies such as ASP, PHP, orColdFusion. That JSP is widely supported and thus doesn’t lock you into a particular operating system or Webserver and that JSP gives you full access to servlet and Java technology for thedynamic part, rather than requiring you to use an unfamiliar and weaker special-purpose language. The process of making JavaServer Pages accessible on the Web is muchsimpler than that for servlets. Assuming you have a Web server that supportsJSP, you give your file a .jsp extension and simply install it in any place youcould put a normal Web page: no compiling, no packages, and no userCLASSPATH settings. However, although your personal environment doesn’tneed any special settings, the server still has to be set up with access to theservlet and JSP class files and the Java compiler. For details, see your server’sdocumentation or Section 1.5 (Installation and Setup).Although what you write often looks more like a regular HTML file than aservlet, behind the scenes, the JSP page is automatically converted to a normalservlet, with the static HTML simply being printed to the output streamassociated with the servlet’s service method. This translation is normallydone the first time the page is requested. To ensure that the first real userdoesn’t get a momentary delay when the JSP page is translated JSP scripting elements let you insert code into the servlet that will be generatedfrom the JSP page. There are three forms:
  • 18. 18 1. Expressions of the form <%= expression %>, which are evaluatedand inserted into the servlet’s output. 2. Scriptletsof the form <% code %>, which are inserted into theservlet’s _jspService method (called by service). 3. Declarations of the form <%! code %>, which are inserted intothe body of the servlet class, outside of any existing methods JDBC is a Java API for executing SQL statements. (As a point of interest, JDBC is a trademarked name and is not an acronym; nevertheless, JDBC is often thought of as standing for "Java Database Connectivity".) It consists of a set of classes and interfaces written in the Java programming language. JDBC provides a standard API for tool/database developers and makes it possible to write database applications using a pure Java API. Using JDBC, it is easy to send SQL statements to virtually any relational database. In other words, with the JDBC API, it isn't necessary to write one program to access a Sybase database, another program to access an Oracle database, another program to access an Informix database, and so on. One can write a single program using the JDBC API, and the program will be able to send SQL statements to the appropriate database. And, with an application written in the Java programming language, one also doesn't have to worry about writing different applications to run on different platforms. The combination of Java and JDBC lets a programmer write it once and run it anywhere. Introduction of Java Database Connectivity Java, being robust, secure, easy to use, easy to understand, and automatically Downloadable on a network, is an excellent language basis for database applications. What is needed is a way for Java applications to talk to a variety of different databases. JDBC is the mechanism for doing this. JDBC extends what can be done in Java. For example, with Java and the JDBC API, it is possible to publish a web page containing an applet that uses information obtained from a remote database. Or an enterprise can use JDBC to connect all its employees (even if they are using a conglomeration of Windows, Macintosh, and UNIX machines) to one or more internal databases via an intranet.
  • 19. 19 With more and more programmers using the Java programming language, the need for easy database access from Java is continuing to grow. MIS managers like the combination of Java and JDBC because it makes disseminating information easy and economical. Businesses can continue to use their installed databases and access information easily even if it is stored on different database management systems. Development time for new applications is short. Installation and version control are greatly simplified. What Does JDBC Do? Simply put, JDBC makes it possible to do three things: 1. establish a connection with a database 2. send SQL statements 3. process the results. The following code fragment gives a basic example of these three steps: Class.forName("com.mysql.jdbc.Driver"); con= DriverManager.getConnection("jdbc:mysql://localhost:3306/cineplex", "root", "1"); Statement stmt = con.createStatement(); ResultSetrs = stmt.executeQuery("SELECT a, b, c FROM Table1"); while (rs.next()) { int x = getInt("a"); String s = getString("b"); float f = getFloat("c"); } JavaSoft provides three JDBC product components as part of the Java Developer's Kit (JDK): . the JDBC driver manager, . the JDBC driver test suite, and . the JDBC-ODBC bridge.
  • 20. 20 SYSTEM DESIGN MODULE FLOW CHART: Login Admin User Add category Add SubCategory Add book Delete Book Logout Choose a Category Purchase Books Logout
  • 21. 21 DEVELOPMENT LIFE CYCLE INTRODUCTION The Software Development Life Cycle (SDLC) is a conceptual model used in project management that describes the stages involved in an information system development project from an initial feasibility study through maintenance of the completed application. Various SDLC methodologies have been developed to guide the processes involved including the waterfall model (the original SDLC method). Documentation is crucial regardless of the type of model chosen or devised for any application, and is usually done in parallel with the development process. Some methods work better for specific types of projects, but in the final analysis, the most important factor for the success of a project may be how closely particular plan was followed.
  • 22. 22 System Analysis The Analysis model:  The analysis model must achieve three primary objectives:  To describe what the customer requires.  To establish the basis for the enhancement of a software design.  To define a set of requirements that can be validated once the software is completely enhanced. The main elements of the analysis model are briefly described below.  At the core of the model lies the data dictionary, which is a repository that contains descriptions of all the data objects Data Dictionar y Entity Relationship Diagram Data Object Description Process Specification Data Flow Diagram State Transition Diagram Control Specification
  • 23. 23 Consumed or produced by the software .Three different diagrams surround the core.  The entity relation diagram depicts relationships between data objects.  The data flow diagram provides an indication of how the data is transformed as they move through the system.  The state transition diagram indicates how the system behaves as a consequence of external events. System analysis is an explicit formal inquiry carried out to help someone identify a better course of action and make a better decision than he might otherwise have made. The characteristic attributes of a problem situation where systems analysis is called upon are complexity of the issue and uncertainty of the outcome of any course of action that might reasonably be taken. Systems analysis usually has some combination of the following: identification and re- identification) of objectives, constraints, and alternative courses of action; examination of the probable consequences of the alternatives in terms of costs, benefits, and risks; presentation of the results in a comparative framework so that the decision maker can make an informed choice from among the alternatives. There are several specific kinds or focuses of systems analysis for which different terms are used: A systems analysis related to public decisions is often referred to as a POLICY ANALYSIS. A systems analysis that concentrates on comparison and ranking of alternatives on basis of their known characteristics is referred to as DECISION ANALYSIS. FEASIBILITY STUDY The feasibility study is used to determine if the project should get the go-ahead. If the project is to proceed, the feasibility study will produce a project plan and budget estimates for the future stages of development. Feasibility is the determination of whether or not a project is worth doing the process followed in making this determination is called a feasibility study. It is an analysis of possible alternative solutions to aproblem and a recommendation on the best alternative.Feasibility study is carried out to select the best system that meets system performance requirements.
  • 24. 24 Different types of feasibility study:  Technical feasibility  Operational feasibility  Economic feasibility Technical Feasibility: This is concerned with the specifying equipment and software that will successfully satisfy the requirements. The proposed system is technically feasible as it can be developed easily with the help of available technology. The proposed system requires MS-Access which is used as back- end and Core Java with Swings and JDBC as front end. In the technical needs of the system these points are considered.  The facility to produce in given time.  Response time under conditions.  Availability to process a certain volume of transaction at a particular speed Economical Feasibility: Economic analysis is the most frequently used technique for evaluating the effectiveness of the proposed system. The producer is to determine the benefits and the saving that are expected from a proposed system and compare them with the proposed system. The only tangible benefits proposed that the manual work and burden is reduced maximum as possible, resulting the reduction in manpower requirement and cost incurred on manpower as well. The system provides many benefits that can’t be measured in terms of money for e.g. user friendliness, more efficient user response, maintenance of database etc.
  • 25. 25 Operational Feasibility: The proposed system is highly user friendly and it is much easily to interact with the user. Therefore, the user will easily accept the system as data entry system and queries can be easily solved. Initial stages of the system might face some resistance but once complete automation is achieved and operators are trained. The system will provide maximum easiness. It is mainly related to human organizational and political aspects in it we consider:  What changes will be brought with the system?  What organizational structures are distributed?  What new skill will be required? COST-BENEFIT ANALYSIS Cost Benefit analysis: Cost saving benefits lead to reduction in administrative and operational costs. A reduction in the size of the clerical staff used in the support of an administrative activity is an example of a cost saving benefit. Cost and benefits can be classified as follows:  Tangible or Intangible  Fixed or Variable.  Direct or Indirect Tangible or Intangible: Tangible refers to easy with which cost or benefit can be measured. An outlay of cost for any specific items or activity is referred to as a tangible cost. Cost that are known to exist what their financial value cannot be exactly measured as known as intangible cost.
  • 26. 26 Fixed or Variable cost: Some cost and benefit remain constant regardless of how a system is used fixed costs are considered as sink cost. One encountered they will not recur. For e.g the purchase of equipment for a computer center is called as fixed cost. It remains constant whether it is used. In variable cost these are incurred on regular bases they are generally proportion to work volume and continue as long as the system is in operation. Direct or Indirect: Direct cost are those which are directly associated with a system. There is directly applied operator. For e.g. the purchase of a floppy for Rs.400 is a direct cost because we can associate the floppy box with money spend. Indirect costs are not directly associate with a specific activity in the system they are often referring to as an overhead expense. For example cost of space to install a system, maintenance of computer center, heat-light and air-conditioning are all tangible cost. DESIGNING SYSTEM DESIGN System design is the process of developing specifications for a candidate system that meet the criteria established in the Planning. Major step in system design is the preparation of the input forms and the output reports in a form applicable to the user. The purpose of design phase is to plan a solution for problem specified by the requirement document. In other words, starting with what is needed, design takes us toward how to satisfy the needs. The design of a system is the most critical factor affecting the quality are translated into a blue-print for constructing the software.
  • 27. 27 The main objective of the system design is to make the system user friendly. System design involves various stages as:  Data Entry  Data Correction  Data Deletion  Processing  Sorting and Indexing  Report Generation System design is the creative act of invention, developing new inputs, a database, offline files, procedures and output for processing business to meet an organization objective. System design builds information gathered during the system analysis. The designing phase of any software development is carried out in the following stages:  Architectural design( high level design)  Detailed design(low level design or physical design) HIGH LEVEL DESIGN: The top level design aims to identify the modules that should be in the system, the specification of these modules, and how they interact with each other to produce the desired results, at the end of the system design all the major data structures, file formats, output formats, and the major modules in the system and their specifications are decided. It involves: Identifying the entities All the entities related to the model were identified, checked and consolidated.
  • 28. 28 Identifying the relationships The relationships between the entities within and outside the system were identified. Attribute definition Attributes for each entity were identified and their field characteristics were identified. At the end of the logical design, a system modeled on DBMS should be fully organized. Further, though a fully normalized design may not be the design adopted in the final physical model, it is still desirable fully normalize the design and then de-normalize it in a controlled manner to take care of optimality. Since normalization is a body of rules addressing analysis and conversion of data structures into relations that exhibit more desirable properties of internal consistency, minimum redundancy and maximum stability. DATA NORMALIZATION: The focus of normalization is on reducing storage overheads. Specially, the aims are;  To identify and isolate the entities involved.  To remove redundant information.  To determine the identifying attributes of records. An entity is something exists. It may be something tangible or it may even be just a relationship. Every occurrence of an entity will have some discernible attributes. Removing redundancy, the second aim of normalization, is the other way of eliminating waste space. The last aim or having identifying attribute can be accessed. It also facilitates linking of tables. LOW LEVEL DESIGN: During detailed design, the internal logic of each of the modules specified design is decided. During the phase further details of the data structure and algorithmic design of each of the modules is specified. The logic of the module is usually specified in a high level design
  • 29. 29 description language, which is independent of the target language in which the software will eventually be implemented. In the system design the focus is on identifying the modules, where as during detailed design focus is on designing the logic for each of the modules. The three main tools of system design are:  Data flow diagram  Flow charts  Data dictionary TESTING Introduction During earlier development phases, an attempt is made to build software from an abstract concept to a tangible implementation. Software testing is a critical element of software quality assurance and represents ultimate review of specification, design and coding notion of “correctness” of the software just developed and overcome a conflict of interest that occurs when errors are recovered. A thorough testing of system before any implementation is mandatory, as regards its individual program, the system as a whole, user acceptance of the system etc. this is because implementing a new system is a major job, which requires a lot of man-hours and other resources, so an error not detected before implementation may a cost a lot. Effective testing early in a process is also necessary because in some cases, a small error not detected and corrected early before installation may explore into much larger problems. After programming comes the stage of installing the computerized system. Actual implementation of the system can be begin at this point using either of parallel or direct change over plan, or a blend of the two. Testing the system  Testing can be done with two types of data. Live data and test data.
  • 30. 30  Live data is the data actually to be used in the proposed system.  Test data is previously designed sample input to achieve predictable results. Testing Objective  Testing is a process of execution a program with the intent of finding an error.  A good test case is one that has a high portability of finding an undiscovered error.  A successful test is one that uncovers an as-yet-discovered error. Testing Principles  ATI tests should be traceable to customer requirements.  Test should be planned long before testing phase.  Testing should begin “in small “ and progress toward testing “in the large”.  Exhaustive testing is completely possible.  To be most effective, an independent third party should conduct testing. TESTING METHODS White Box Testing: White box testing of software is predicated on close examination of procedural detail. Providing test cases that exercise specific sets of conditions and or loops tests logical paths through the software. White Box Testing, sometime called glass box testing, is a test case design method that uses the control structure of the procedural design to derive test cases. Using white box testing methods, following test cases can be derived.  Guarantee that all independent paths within module have been exercised at least once.  Exercise all logical decisions on their true and false sides. Execute all loops at their boundaries and within their operational bounds.
  • 31. 31  Exercise internal data structures to assure their validity.  The errors that can be encountered while conducting white box testing are-  Logical errors and incorrect assumptions.  Typographical errors Black Box Testing: Black box testing is carried out to check the functionality of the various modules. Although they are designed to uncover errors, black box tests are used to demonstrate that software functions are optional; that input is properly accepted and output is correctly produced, and the integrity of external information is maintained, a black box test examines some fundamental aspects of the system with little regard for the internal logical structure of the software. Black box testing focuses on the functional requirements of the software. Black box testing attempts to find errors in the following categories:  Incorrect or missing functions.  Interface errors.  Errors In data structure or external database access.  Performance errors  Initialization and termination errors. Unlike white box testing, which is performed early in the testing process, black box tends to apply during later stages of testing. Because black box testing purposely disregards control structure, attention is focused on the information domain. SOFTWARE TESTING STRATEGIES: A strategy for software testing integrates software test case design methods into a well planned series of steps that result in the successful construction of software. An important, software
  • 32. 32 testing strategy provides a road map. Testing is set of activities that can be planned in advanced and conducted systematically. Various strategies are given below: Unit Testing: Unit testing focuses verification effort on the smallest unit of software design i.e. module. Using procedural design as a guide, important control paths are tested to uncover errors within the boundary of the module. Integration Testing: Integration testing is systematic technique for constructing the program structure while conducting tests to uncover errors associated with interfacing. Acceptance Testing: To ensure that the final system, as it will be delivered, complies with all the client’s requirements of the system, as detailed in the SRS. If monitor alterations are required, then some form of regression testing may also have to be used. Validation Testing: At the culmination of Integration testing, software is completely assembled as a package, Interfacing errors have been uncovered and corrected and a final series of software test-validation testing may begin. System Testing: Software is incorporated with other system elements and a series of system integration and validation test are conducted. The various types of system testing are:  Recovery Testing: many computer based systems must recover from faults and resume processing within a pre-specified time.  Security Testing: Security testing attempts to verify that protection mechanisms built into a system will in fact protect it from improper penetration.  Stress Testing: Stress tests are designed to confront programs with abnormal situations.  Performance Testing: Performance testing is designed to test run time performance of software within the context to an integrated system. All above mentioned testing principles have been applied to all the modules and the modules have passed the tests successfully.
  • 33. 33 TESTING OF FORMS Forms are the interface between the user and database system. Testing of forms was extensive task. All data entry and query formats are designed using forms. Forms were tested to ensure that they are performing the tasks and well they are designed fork and correction and modifications were made found to be necessary. System testing is designed to uncover weaknesses that were not found in the earlier tests. This includes forced system failure and its users in the operational environment will implement validation of the total system as it. After a successful testing of the individual programs and forms, the whole system was through a series of test to ensure the proper working of the system as a whole. The system as a whole unit put to all-possible inputs. The consistency and validity is then checked by the outputs. The activities involved in the system testing are:  Integration Testing  Acceptance Testing In integration testing the entire system is tested and Acceptance Testing involves planning and execution of functional tests, performance tests and stress testing order to demonstrate that the implemented system satisfied its requirements. The functional tests, performance tests and stress tests are performed to determine the limitation of the system. Functional Tests: The system went through functional tests all along the development stage. Whenever a new function was added it went through a thorough testing for all possible input values and its interoperability with other functions by the coder. On delivery of the intermediate system to the customer, the customer studied the system functionalities and provided the feedback, which often mentioned the changed desired. So the system, went through functional test both at the developer and customer ends.
  • 34. 34 Performance Tests: Before the delivery of the system to the customers the new system went through various tests to benchmark its performance.  These included the GUI testing.  The functional testing.  And, the overall system integrity testing. Stress Tests: The system was pushed to its limits and beyond during the stress testing, to measure its performance and stability versus the load. Security Tests: The functional environment of the system posed no real security threat but the system was developed considering the entire data to be highly critical and thus denying free access to anyone without proper access rights. The entire system was password protected. Post Implementation Review After the system is implemented and conversion is complete, a review should be conducted to determine whether the system is meeting expectations and where improvements are needed. A post implementation review measures the systems performance against predefined requirement. It determines how well the system continues to meet the performance specifications. A Post- Implementation Review (PIR) is an assessment and review of the completed working solution. It will be performed after a period of live running, sometime after the project is completed.
  • 35. 35 TABLES USED Table 1:LoginInfo LoginInfo Column Name Data Type Constraint UserName Varchar(100) Primary key Password Varchar(100) RoleName Varchar(100) EmailID Varchar(100) Unique key SecurityQuestion Varchar(1000) SecurityAnswer Varchar(100) LastLogin Datetime Table 2: BookCategory BookCategory Column Name Data Type Constraint BookID Varchar(20) Primary key BookName Varchar(100) Unique key Description Varchar(1000)
  • 36. 36 Table 3: BookSubCategory BookSubCategory Column Name Data Type Constraint SubBookCategoryID Int Auto increment , Primary key SubBookCategoryName Varchar(100) Description Varchar(1000) BookID Varchar(20) Foreign key with Product Category Table 4: CompanyInfo CompanyInfo Column Name Data Type Constraint PublicationID Varchar(20) Primary key PublicationName Varchar(100) Unique key Description Varchar(1000) Table 5: BookInfo BookInfo Column Name Data Type Constraint BookID Int Primary key , auto increment BookName Varchar(100) SubBookCategoryID Int Foreign key with ProductSubCategory PublicationID Varchar(20) Foreign key with CompanyInfo Price Float Quantity Int
  • 37. 37 Table 6:BookStock BookStock Column Name Data Type Constraint StockID Int Primary key,auto increment BookID Int Foreign key with Product Info Quantity Int StockType Enum(‘IN’,’OUT’) StockDate Datetime Table 7:BookPhoto BookPhoto Column Name Data Type Constraint PhotoID Int Primary key,auto increment PhotoName Varchar(100) ExtName Varchar(100) PhotoType Varchar(100) PhotoSize Int BookID Int Foreign key with product info Table 8:CartInfo CartInfo Column Name Data Type Constraint CartID Int Primary key,auto increment UserName Varchar(100) CartDate Datetime IsOrder Enum(‘1’,’0’)
  • 38. 38 Table 9:CartItems CartItems Column Name Data Type Constraint BookItemID Int Primary key,auto increment BookID Int Foreign key with ProductInfo Quantity Int Price Float CartID Int Foreign key with CartInfo Table 10:OrderInfo OrderInfo Column Name Data Type Constraint OrderID Int Primary key,auto increment UserName Varchar(100) Foreign key with LoginInfo CartID Int Foreign key with CartInfo OrderDate Datetime ShippingDate Datetime OrderStatus Varchar(1000) ShippingAddress Varchar(1000) Table 11: OrderDetails Column Name Data Type Constraint DetailID Int Primary key,auto increment BookID Int Foreign key with ProductInfo Quantity Int Price Float
  • 39. 39 SNAPSHOTS 1. HOME PAGE: The home page is the first look of the online bookshop. This home page is filled with graphics as well as information about which the site is all about. The Home page consists of:  Links to Login page and Registration page.  Options of choose a Category and Select Publications.  Information about new Books and special offers.  Information about the website and contact details. Home Page
  • 40. 40 2. LOGIN PAGE: The Login page can be accessed by the registered users only. The Login page consists of:  Username Text Field: The user has to enter the username in this text field.  Password Text Field:The user has to enter the password in this text field. (Login Page)
  • 41. 41 If the user enters invalid Username or Password or both, a message will be displayed “Invalid Username Or Password”. 3. REGISTRATION PAGE: The registration page is where new users have to register in order to purchase the books. Users can only login when they have registered first. The Registration page consists of:  Enter New Username: The new users have to give a unique username to register.  Enter New Password: The user has to give a new password by which they can login their account.  Enter Email Id: The user has to enter a valid email id for registering their accounts.
  • 42. 42  Choose Security Question: In this field, the user can select a security question fron the already given choices of questions, such as:  What was your childhood pet name?  What is the name of your pet?  Enter Security Answer: In this field, the user will answer the security question. This security question can be used in case the user forgets his/her password. (Registration Page)
  • 43. 43 FUTURE SCOPE OF THE PROJECT This project can be easily implemented under various situations.We can add new features as and when we require. Reusability is possible as and when require in this project. There is flexibility in all the modules. We can also include online payment services to this project using PayPal. This will help customers to pay online for their purchases using Credit/Debit card. There are many features which could be added to this project for making this project more productive.
  • 44. 44 CONCLUSION The software development is never completed. There is always a need for modification. There could have been other approaches to implement the system. I have tried to my level best to make the system an interactive as possible. The developed system is flexible and changes whenever can be made easy. Using the facilities and functionalities of J2EE and jsp, the website has been developed in a neat and simple manner, thereby reducing the operators work. The speed and accuracy are maintained in proper way. The user friendly nature of this website developed in J2EE and jsp is very easy to work with both for the admin as well as other users with little knowledge of computer.
  • 45. 45 REFERENCES 1) Servlet and JSP Quick Reference http://www.coreservlets.com http://www.moreservlets.com 2) JSP: The Complete Reference. Phil Hanna. Osborne/McGraw-Hill. 3) Java Servlet Programming, 2nd edition by Jason hunter, William Crawford, Publisher: O’Reilly media. 4) Java Web Programming with Eclipse by David Turner and JineokChae. 5) http://www.oracle.com/technetwork/java/index.html 6) Y. Daniel Liang, ”Introduction to Java Programming” 9thed, 2012. 7) www.w3schools.com/sql
  • 46. 46 Website Reference  www.oracle.com/technetwork/java/index.html  www.freewebmasterhelp.com  www.tutorialspoint.com/jsp/  www.coreservlets.com  www.w3schools.com/jsp  www.tomcat.apache.org/