You are on page 1of 70

ONLINE BOOK STORE

ABSTRACT
The main objective of the project is to create an online book store that allows users to
search and purchase a book online based on title, author and subject. The selected
Books are displayed in a tabular format and the user can order their books online
through credit card payment. Using this Website the user can purchase abook online
instead of going out to a book store and wasting time. There are many online book
stores like Powells, Amazon which were designed using Html. I want to develop a
similar website using .java, java servlet, jsp..
Online Book store is an online web application where the users can purchase books
online. Through a web browser the Users can search for a book by its title or author,
later can add to the shopping cart and finally purchase using credit card transaction. His
user can login using his account details or new Users can set up an account very
quickly. They should give the details of their name, contact number and shipping
address. The books are divided into many categories based on subject like Software,
Database, English, Architecture etc.
The Online Book Store Website provides Users with online shopping through a web
browser. A user can, create, sign in to his account, place items by credit and debit card
number and place order .The Administrator will have additional functionalities when
compared to the common user. He can add, delete and update the book details, book
categories, member information and also confirm a placed order. This application is
developed using java, java servlet,jsp programming language. The Master page, data
sets, data grids, user controls are used to develop the Online Bookstore.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

1 | Page

ONLINE BOOK STORE

1.INTRODUCTION
1.1.

General Information

The main objective of the project is to create an online book store that allows users to
search and purchase a book based on title, author and subject. The selected books
are displayed in a tabular format and the user can order their books online .
The Administrator will have additional functionalities when compared to the common
user.
1.2.

Project Description

Online Book Store system is an web based application that allows users to search and
purchase a book online based on title, author and subject.
Through a web browser the Users can search for a book by its title or author,
later can add to the shopping cart and finally purchase books using credit and debit card
payment . The user can login using his account details or new Users can set up an
account very quickly. They should give the details of their name, contact number and
shipping address.
1.2.1. Existing System
In the existing system the customer needs to go directly to the merchant and purchase
the
books. Here all the transactions are done by credit card . It is a time consuming
job. It is a Computerized system. The owner of the firm is automating the book stall with
the help of a single system. It may time consuming as their is only one system to
manage all the transactions in the shop.
Books needed for the customer are purchased according to the order given. Outdated
books are returned back to the dealer. When a customer came in need of a particular
book, the owner should first of all search that whether it is available or not. After finding
the books he has to calculate the rate by checking the details and have to fill the place
order details.

1.2.2. Problem Recognition


I.
II.
III.

Buyers
Administrator
Suppliers

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

2 | Page

ONLINE BOOK STORE

The project is to design and implement an online bookstore: Wisdom Books. The
bookstore will have three types of users namely the buyers, the administrator and the
suppliers. All of them will log in to the website using a unique user name and
password. New users can create their profile by clicking on a link displayed on the login
page. After logging in a welcome message containing the name, must be displayed for
all users. The other functionality expected for each user is given in detail below.
Buyers: After logging in, the buyer will be able to view the catalogue sorted by either
the author or subject. They will also be able to search for books based on the author
name, subject or Edition and add selected books to the shopping cart. A link to the cart
and the number of items in the cart and must be displayed on the right hand upper
corner of each page. The shopping cart page will contain a summary of the order.
The users will be able to remove or add more books the order before making order.
Payment will be used to manage the Shopping cart and the payment options pay by
credit and debit . The users will be able to track their shipment, based on this tracking
number.
Administrator: The administrator will be able to add, update and delete the user and
book information. He / she will also be able to take an inventory and order books from
suppliers.
Suppliers: The suppliers will be able to view past and present orders from the
administrator. They will be able to sort and edit status of the orders as completed or
pending.

1.3. Scope description


The project to be completed and combined to a service of multiple participants.
The main scope of Online Book Store Website should be designed, developed, tested
and installed from start to finish by outsourced. The Online Book Store is provide a
better scope to user, When user do not have time to go to purchase Books from Book
shopping center. So that through online user can purchase any book from this website
Online Book Store.

1.4. Objective of Study


This tool is basically developed for automating the work of the network administrator so
that the admin can automatically manage through the network and its various resources
based on the constraints example: time, host and the user. The application should
provide means for authentication so that the network can be more secure and reliable.
The tool can make updates at any place and at any time Firewalls can be activated or

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

3 | Page

ONLINE BOOK STORE

deactivated according to the suitability and ease .It can add ,remove or restrict the user
,groups and various resources at any time at any cost. The server can be easily
accessed and can be connected

1.5. Methodology
There are numerous methodologies available for developing and testing software.
The methodology you choose depends on factors such as the nature of project, the
project schedule, and resource availability. Although most software development
projects involve periodic testing, some methodologies focus on getting the input from
testing early in the cycle rather than waiting for input when a working model of the
system is ready.
The spiral model is a software development process combining elements of
both design and prototyping-in-stages, in an effort to combine advantages of top-down
and bottom-up concepts. This model of development combines the features of the
prototyping and the waterfall model.
The spiral model combines the idea of iterative development (prototyping) with the
systematic, controlled aspects of the waterfall model. At each iteration around the cycle,
the products are extensions of an earlier product.
i.
ii.
iii.
iv.

Determine the objectives, alternatives, and constraints on the new iteration.


Evaluate alternatives and identify and resolve risk issues.
Develop and verify the product for this iteration.
Plan the next iteration.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

4 | Page

ONLINE BOOK STORE

Advantages of Spiral Model:

Spiral Life Cycle Model is one of the most flexible SDLC models in place.
Development phases can be determined by the project manager, according to the
complexity of the project.

Project monitoring is very easy and effective. Each phase, as well as each loop,
requires a review from concerned people. This makes the model more transparent.

Risk management is one of the in-built features of the model, which makes it extra
attractive compared to other models.

Changes can be introduced later in the life cycle as well. And coping with these
changes isnt a very big headache for the project manager.

Project estimates in terms of schedule, cost etc become more and more realistic as
the project moves forward and loops in spiral get completed.

It is suitable for high risk projects, where business needs may be unstable.

A highly customized product can be developed using this.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

5 | Page

ONLINE BOOK STORE

Disadvantages of Spiral Model:

Cost involved in this model is usually high.

It is a complicated approach especially for projects with a clear SRS.

Skills required, evaluating and reviewing project from time to time, need expertise.

Rules and protocols should be followed properly to effectively implement this model.
Doing so, through-out the span of project is tough.

Due to various customizations allowed from the client, using the same prototype in
other projects, in future, is difficult.

It is not suitable for low risk projects.

Meeting budgetary and scheduling requirements is tough if this development process


is followed.

Amount of documentation required in intermediate stages makes management of


project very complex affair.

1.6 Scope of Study:


The scope of the problem is to manage the online book store resources in a economical
and secured way. It can be used by the admin to automatically monitor the online book
store system. New users or the existing users can be added or restricted according to
the need and use.
The application should use a good interface so that it can be easy to operate and
understandable in course of time. The administrator can be able to log from a remote
terminal and can access the users and the resources.

1.6.1 Scope
The project Online Book Store meant for automated management of the Admin
who are working on different branches in the Book Store System across the globe.
The Online Book Store project allows the Administrator for adding a newly joined
Developer, Test Leader, Project Leader, Module Leader, Client, Manager and Director
different. It helps to disable the Users and Guest . In this project admin can also create,
update and disable the login password and username of the Users and Guest. The
Online Book Store project allows the Online Purchaser , view Books, sending the
request to update the Personal Information and password.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

6 | Page

ONLINE BOOK STORE

The Online Book Store Project allows Leader to Update Book information, View
Books, Change password and Task Assignment. Admin is allowed to send the request
to update the Personal Information and password.
The Online Book Store project allows the User to view the Books, Change
password and Task Assignment. User is send the request to update the Personal
Information and password.
The Online Book Store project allows the Admin to Add, View, to update the
project and view all the Books by status.Admin is allowed to send the request to update
the Personal Information and password. The Online Book Store project allows the
Developer to fix and Update the Books, send the Books, and view Books, sending the
request to update the Personal Information and password. The Online Book Store
project allows the Admin/Guest/User to view the Books by status, by Users. Sending the
request to update the Personal Information and password.

1.7. Hardware and software requirements


Software Requirements
S No.

Software

Minimum Requirements

Operating System

Windows XP

Languages

Java, JavaScript

3
4
5
6
7
8
9

Web Technologies
Web Authoring Tool
Server
Database or Back End
IDE
Documentation Tool
Browser

JDBC,Servlet, JSP
HTML,XML
Apache Tomcat 6.0
MySql
Eclipse
Microsoft word 2007
Mozilla Firefox, Google Chrome

Hardware Requirements
S No.

Hardware

Minimum Requirements

1
2

Processor
Monitor

Pentium IV/above
LCD monitor

Hard Disk

80 GB

Ram

1GB

Key board and Mouse

Logitech and other

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

7 | Page

ONLINE BOOK STORE

1.8. Organization of the report


The Report has been organized and given bellow:Chapter 1: Introduction: The introduction chapter highlights general information relevant
to the system, problem statement, objective and methodology adopted.
Chapter 2: Literature survey: This chapter will present Functional, Non-functional
requirements, Domain requirements, and System requirements of Online Book Store
System.
Chapter 3: System Requirements Specification: This chapter will present Functional,
Non-Functional requirements, Domain requirements of Online Book Store System.
Chapter 4: System Analysis: This chapter explains in details about Existing system,
Need for the System. Feasibility study, use case analysis, sequential models of Online
Book Store System.
Chapter 5: System Design: This chapter present discusses the overall architectural
design of the Online Book Store System.
Chapter 6: Implementation: This chapter gives the coding conventions and sample code
of Online Book Store System.
Chapter 7: Testing: This chapter explains various testing techniques adopted to test the
Online Book Store System.
Chapter 8: Results/Screen Shots: This chapter gives the full screen shots of the Online
Book Store System.
Chapter 9: Conclusion: This chapter summarizes the Online Book Store System and the
successful tasks which have been completed.
Chapter 10: Bibliography: This chapter includes the information of references, books,
articles etc referred during the Online Book Store System.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

8 | Page

ONLINE BOOK STORE

2. LITERATURE REVIEW
Online Book Store is an ideal solution to purchase the books onlie, solution or an
application. Online Book Store System allows individual or groups of developers to keep
track of outstanding Books effectively. This can also be called as Defect Online Book
Store System.
The Online Book Store System can dramatically increase the productivity and
accountability of individual employees by providing a documented work flow and
positive feedback for good performance.
In order to have an efficient a product Online Book Store must be maintained
properly and should be resolved in time both to reduce time and money spent on the
development.

Java Server Page (JSP)


JSP is a technology that allows Web pages to be created dynamically for the Web
Server so that the page content can be varied according to circumstances. This can be
used for instance, to provide custom pages according to the identity of the user, the
type of Web browser they are using, information they have provided or selections they
have made.
JSP documents are written in plain text and have a .jspfile extension. They use tags,
like those in HTML or XML, to denote JSP elements. A JSP element is used to
dynamically insert content into a page. It can be used for many purposes, such as
getting information from a database or retrieving user preferences. JSP elements can
contain script, written in the Java programming language, to provide the logic to
determine which content should be generated for a Web page.

2.2 About JAVA


Java is a programming language originally developed by James Gosling at Sun
Microsystems (which is now a subsidiary of Oracle Corporation) and released in 1995
as a core component of Sun Microsystems' Java platform. The language derives much
of its syntax from C and C++ but has a
simpler object model and fewer lowlevel facilities. Java applications are typically compiled to bytecode (class file) that can
run on any Java Virtual Machine (JVM) regardless of computer architecture. Java is
general-purpose, concurrent, class-based, and object-oriented, and is specifically
designed to have as few implementation dependencies as possible. It is intended to let
application developers "write once, run anywhere". Java is considered by many as one
of the most influential programming languages of the 20th century, and is widely used
from application software to web applications.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

9 | Page

ONLINE BOOK STORE

One characteristic of Java is portability, which means that computer programs written in
the Java language must run similarly on any supported hardware/operating-system
platform. This is achieved by compiling the Java language code to an intermediate
representation called Java byte code, instead of directly to platform-specific machine
code. Java byte code instructions are analogous to machine code, but are intended to
be interpreted by a virtual machine (VM) written specifically for the host hardware. Endusers commonly use a Java Runtime Environment (JRE) installed on their own machine
for standalone Java applications, or in a Web browser for Java applets.

Figure: 3.1 Execution process of a java program

2.3 MySQL
MySQL has become one of the most popular Linux databases on the market and it
continues to improve each day. MySQL is a popular structured query language (SQL)
database server. Like other SQL servers, MySQL provides the means of accessing and
managing SQL databases. However, MySQL also provides tools for creating database
structures, as well as for adding, modifying and removing data from those structures.
Because MySQL is a relational database, data can be stored and managed in small,
manageable tables. Those tables can be used in combination to create flexible yet
complex data structures.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

10 | Page

ONLINE BOOK STORE

3. SYSTEM REQUIREMENT SPECIFICATIONS


Requirement Analysis is a software Engineering task that bridges the gap between
System level requirement Engineering and Software design. Any computer based
system development phase will begin with preliminary analysis of the system scope and
feasibility. This phase is also known as Survey phase.
This phase determines whether or not significant resources to be committed to the
other phases of the life cycle. During the survey phase, we will define the scope of the
system, including all end-users perceived the problems and opportunities, business and
technical constraints, system goals and possible situations.

Problem Definition
Requirement analysis is the process of defining out and what the user requires
from the system and defining the requirements clearly and in an unambiguous state.
The outcome of the requirement analysis is the software developing activities. Thus it
deals with understanding the problem goals and constraints. A requirement is a clearly
short and concise piece of information, expressed as a fact. It can be written as a
sentence or can be expressed using some kind of diagram. Requirements are divided
into two major types they are
Functional Requirements
Non-Functional Requirements

3.1. Functional Requirements


Functional requirements describe what the system should do. The functional
requirements can be further categorized as follows.
What inputs the system should accept
What outputs the system should produce
What data the system must store
What are the computations to be done
The timing and Synchronization of above

3.2. Non-Functional Requirements


Non-Functional requirements are the constraints that must be adhered during
development. They limit what resources can be used and set bounds on aspects of the
softwares quality.
The following are some of the non-functional requirements.
Response Time
Throughput
Recovery from failure
Reusability
Platform

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

11 | Page

ONLINE BOOK STORE

3.2.1. Hardware Interfaces

Processor type
: Pentium-III compatible processor or faster.
Processor speed
: Minimum: 1.0 GHz, Recommended: 2.0 GHz or faster
RAM
: 2GB or more
Hard Disk
: 20GB or more
Monitor
: VGA or higher resolution 800x600 or higher resolution.
Pointing device
: Microsoft Mouse or compatible pointing device
CD-ROM
:
Actual requirements will vary based on system
configuration and the applications and features chosen to install.
Keyboard
: 110 keys enhanced.

3.2.2 Software Interfaces


Application Software Framework

: Java, JSP, Servlet, Struts

Back End

: MySql

Operating System

: Windows XP

3.2.3 Performance Requirements


The system performance is adequate. The prime requirement is that no error
condition causes a project to exit abruptly.

3.2.4. Safety Requirements


The database may get crashed at any certain time due to virus or operating system
failure. Therefore, it is required to take the database backup.

3.2.5. Security Requirements


The project provides a security to different kind of Users by means of authentication
level. The authorization mechanism of the system will block the unwanted attempts to the
server.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

12 | Page

ONLINE BOOK STORE

3.3. Domain Requirements


Describe system characteristics and features that reflect the domain
May be new functional requirements, constraints on existing requirements or
may define specific computations.
If domain requirements are not satisfied, the system may be unworkable.
Because of copyright restrictions, some received on-line documents must
be deleted immediately after printing.
Domain requirement issues
Understandability
Requirements are expressed in the language of the application domain this is often
not understood by software engineers developing the system.
Implicitness Domain specialists understand the area so well that they do not think of
making the domain requirements explicit.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

13 | Page

ONLINE BOOK STORE

4. SYSTEM ANALYSIS
4.1. Existing system
Varied types of practices can be found in bug handling. Different software
organizations follow different methods to resolve Book, Books and other software
development problems. The methods they choose depends upon the nature and criticality
of the project they are handling. But most commonly, almost all the medium to large
software development organizations follow a similar method, which we described above.
But the solutions for handling the Books and Books are going to be different.
Manual way of handling seems to be impossible in these modern days of high
speed. Book or Books final, generator specialist is all located in different places making
the timely solutions difficult. Keeping track of all these Books related activities is another
big area, where maintenance is tougher.
As these Books or Books management solutions will come with different price tags
of implementation bottle necks, which make him not so adoptable for all the organizations
involved in development. Few solutions may need more processing power, few demand
separate systems, and even few needs separate personal to handle this Books. A few
automated processes insist complete structural changes in the organization. But
nevertheless, few readymade packages, which really solve all these, will cost more.

4.2. Limitations of existing systems


The existing system is facing few limitations. They are:
The manual process of weightage calculation using the statistical method is error
prone.
Takes more time to send clients to the insurance company in manual method.
Lack of data security.
Does not have future estimation statics.

4.3. Proposed System


Though the proposed system does not answer all the above mentioned draw backs,
it certainly answers many. These suggested solutions will tackle all major Books related
to transmitting, searching, updating the status with minimal overheads. The proposed
solution contains a simple intranet or internet based website, which will be accessible to
all the programmers participating the development project.
All these personnel will have to authenticate themselves to report any kind of
problem aroused in developing this specified project. These problems will be carried to
the concern developer for solution. It also makes the administrator to administrator these

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

14 | Page

ONLINE BOOK STORE

Books are books centrally to ensure these Books or books or answered in time by the
concerned programmer.
The Online book management intranet or internet application also keeps the of all
these Books either addressed, or to be addressed. One can search through the archives
for related Books details, but at the same time proper security incorporated into the
software enabling only the related developers can go to in depth details. And only these
people can respond to those unanswered Books or books.
The centrally managed database makes the administration easy. It provides
summarized information about the Books, Books and problems. It also provides standard
bookmarks to find out related Books that logged developer. Books Management
application also incorporates rigorous search engine to find out any kind of Books for its
details.
Finally, it is planned in such a way that administration of the Online book store
Application itself is in very easy and intuitive way giving the administrators an easy walk
over it.

4.4. Feasibility study


Once the problem is clearly understood, the next step is to conduct the feasibility
study, which is a high level capsule version of the entire system analysis and design
process. The objective is to determine whether the proposed system is feasible. The
feasibility study documents the analysis of the business problem, including the
determination of whether it can be solved effectively. The operational (will it work?),
economical (costs and benefits?) and technical (can it be built?) aspects are part of the
study. Results of the determine whether the solution should be implemented.
The purpose of the feasibility study was two fold. Its first objective was to develop a
verification methodology that the gap between formal verification and simulation in a way
that would integrate into an existing design flow. The second objective was to gather
some quantitative evidence to support the idea that such a methodology would offer
advantages over our existing simulation based verification techniques. This selection
reflected the importance we place on the functional verification of leading edge
processors; however the methodology is applicable to most designs. The choice of the
decoder made it possible to investigate the problems of modeling and test specification
while simplifying other tasks, in particular the translation from abstract to concrete tests.
The four tests of feasibility have been carried out

4.4.1. Economical Feasibility:


A system that can be developed technically and that will be used if installed must
still be a good investment for the organization. Financial benefits must equal or exceed
the cost. The financial and economic questions raised by analysts during the preliminary
investigation for the purpose of estimating the following.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

15 | Page

ONLINE BOOK STORE

I.
II.
III.
IV.

The cost to conduct a full systems investigation.


The cost of hardware and software for the class of application being considered.
The benefits in the form of reduced costs or fewer costly errors.
The cost if nothing changes (i.e., the proposed system is not developed).

4.4.2. Technical feasibility:


The Online book Store usually raised during the feasibility stage of the investigation
include these
I. Does the necessary technology exist to do what is suggested (and cannot be
acquired).
II. Does the proposed equipment have the technical capacity to hold the data required
using the new system?
III. Will the proposed system provide adequate responses to inquires regardless of the
number or location of users?
IV. Can the system be expanded if developed?
V. Are there technical guarantees of accuracy, reliability, ease of access, and data
security?

4.4.3. Behavioral feasibility:


Proposed projects are beneficial only if they can be turned into information systems
that will mettle that will organizations operation requirements.
I.

II.
III.

IV.

Is their sufficient support for the project from management? From users? If the
current system is well liked and used to the extend that persons will not be able
to see reasons for a change, There may be resistance.
Are current business methods acceptable to the users? If they are not users may
welcome a change that will bring about a more operation useful system.
Have the users been involved the planning and development of the project?
Early involvement reduced the chances of resistance to the system and changes
in general and increases the likelihood of successful projects.
Will the proposed system cause harm? Will it produce poorer results in respect
area? Will use of control result in any area will accessibility of information be
lost? Will individual Users be affected in an undesirable way? Will the system
show performance in any areas?

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

16 | Page

ONLINE BOOK STORE

4.5. Object Oriented Approach/Structure Oriented Approach


4.5.1.BusinessProcessModeling/ContextDiagram

Project Leader

Module Leader

Developer

Testing Leader

OBS

Tester

Figure.4.5.1.1: Context Diagram


Project Leader: All projects assigned by the Project Leader and control the team
members access to the Books assigned. Has the permission to generate the reports
and update the information of team members and adding members to the project.
Developer: Can access the task or Books assigned by the manager, view assigned
projects and resolving the assigned books. Developer can view the bugs list assigned
by the manager.
Tester: Tester can access to the projects or books assigned by the manager, can view
the assigned projects and can add a new books to the list and send the Books back to
the manager. Tester can login to the system and access the assigned projects list.
Module Leader: Module Leader is responsible for adding the module in particular
project and view the Project module of particular project assigned by Project Leader.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

17 | Page

ONLINE BOOK STORE

4.5.1.2. Top Level DFD:


Login

Read
Login

Login
Registration DB

Logout

Logout

Write
Registration

Response
Register
Register
Create

U
S
E
R

Response

A
D
M
I
N

Create

View
Response

Write
Projects

Project DB
Response

Read

Book
Respon
se

Place Order

Read
Write

Order DB

Book DB
Write

Read

View
Order Status

Response

Figure.4.5.1.2: Top Level Data Flow Diagram


1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

18 | Page

Create

ONLINE BOOK STORE

4.5.2. Use case Analysis:


Use case Diagram
Administrator Login

Login into the


Online Book
Store
Add Books
Login

Deliver Books

Display Order

Change
Password

Update login

Figure.4.5.2.1: Administrator Login

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

19 | Page

ONLINE BOOK STORE

For User Module:

Login into OBS

Login

Search Books

Display My
Order status

Place Order

Password
Update the Project

Figure.4.5.2.4: User Module

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

20 | Page

ONLINE BOOK STORE

For Guest Module:

Login into the


OBS

Login

Search Books

View Details

Change
Password

Log Out from the


OBS

Figure.4.5.2.5: Guest Module

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

21 | Page

ONLINE BOOK STORE

5. DESIGN
5.1. High Level Design
5.1.1. System Architecture Diagram and Explanation (Modules)
User

Presentation Layer

Manage Users

Projects

Modules

Manage Books

Logical & Physical Layer

Fig.5.1.1: Two tier- Architecture

Business Logic

As shown in the above diagram user will request for Database


login page and system
responds with login page. Users fill the login form with user name password and again
sense this as request to system. Then validation will be done and if user name and
password are correct then action is forward to user requested page otherwise again login
pages are sent response to user.

5.2. Module Description


The system is categorized in to following modules:
1. Admin
2. User
3. Guest
Admin

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

22 | Page

ONLINE BOOK STORE

Configuration of different users of the Online Book Store System application will be
done in this module. Admin can Add/Delete the Books. Admin can deliver all the order
and change the order Status.
User
In this module the user can view the Books purchase them, what are all the other
new Books, User can make request to admin to update their details.
Guest
The Guest can enter into the Online book store System, view Books as a guest, can
Search the Books, view details enter etc.
Some Functionality offered by Online Book Store
Login into Online Book Store
Register into Online Book Store
Add the new Books
delete the Books information.
Search the Books by Book Name.
Roles
Admin
Guest
User

Admin Module
Admin Module will be accessed by the administrator of the application.
Administrator can do the following things.
Login into the Online Book Store
Add Books
Update Books
Delete Books
Order Deliver
Search Books
Display Order
View Details
Change Password

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

23 | Page

ONLINE BOOK STORE

5.2 Detail design

5.2.1.

Display order
View Details

Database Design

The goal of database design is to generate a set of relation schemas that allows us
to retrieve information easily. we can achieve optimization, ease of use in maintenance by
designing the database using relational model in which data is stored in the form of tables
and there exists a relation between or among the table.
The design objectives must be:

To reduce redundancy.
To arrive at loss-less join.
To reduce the times as compared to the present system, and
To reduce the number of errors.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

24 | Page

ONLINE BOOK STORE

5.2.1.1 ER Diagram:
EMAIL
NAME
F, M, L

PASSWORD

USERNAME

PHONE

ROLE

USERID

Administrator

CHANG
PASSWORD

CREATES
&
CONTROL
PASSWORD
USERNAME

M
PHONE

ROLE

USERS
F, M,L NAME
STATUS

EMAIL
ORDERID

USERID

1
CARD
NUMBER

ORDER

ORDER
ITEM

BOOKID
ADDRESS

ORDERID
TOTAL
AMOUNT

QUANTITY
EXPIRE DATE
WORKS_
FOR

ORDER ITEM ID

STATUS

EDITION

MODULE
1

BOOKNAME

BOOKID

ADMIN
MODULE

GUEST
MODULE

BOOKS
COST

USERMODULE
AUTHOR

Figure.5.2.1.1: ER Diagram
1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

25 | Page

ONLINE BOOK STORE

5.2.1.2. Table Design:


Book Table:

Login Table:

Order Table:

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

26 | Page

ONLINE BOOK STORE

Order Item Table:

User Table:

5.2.1.3. Normalization
Normalization is a process of minimization of redundancy related to non-primary
keys. Before designing any system, normalization of databases is done for the following
Reasons
To reduce the redundancy of stored data.
To avoid loss of data.
To structure the data, and
To permit simple retrieval of data
Keys:
Primary Key: A primary key is some or more column(s) in a table used to uniquely
identify each row in the table. A primary key column in a table has special attributes.
It defines the column, as a mandatory column i.e. the column cannot be left blank.
The not null attribute is active.
The data held across the column must be unique.
Syntax:
Column name data type (size) primary key.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

27 | Page

ONLINE BOOK STORE

Foreign Key:
Foreign key represents relationship between tables. A foreign key is a column (or a
group of columns) whose values are derived from the primary key or unique key of
some other table.
The table in which the foreign key is defined is called a foreign table or detail table.
The table that defines the primary key in the master table.
Syntax:
Column name data type (size) references table name [(column name)]
Table analysis:
In order to construct effective database, the normalization technique applied
according to the process that is proposed to make effective retrieval and storage of data
and analysis has gives as follows

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

28 | Page

ONLINE BOOK STORE

5.2.2ClassDiagram
ADMIN MODULE

USER MODULE

Uid: username
Pwd: password

Uid: Username
Pwd: Password

Add Books
Search Books
Update Detail
Display Order
Update login
Deliver Order
Change Password
Logout from the
OBS

Login into the OBS


Update Login
Search Books
Add Books into Card
Place Order
Logout from OBS
Change Password

GUESTMODULE

Uid: Username
Pwd: Password
Login into the OBS
Update Login
Search Books
Logout from OBS
Change Password

Figure.5.2.2: Class Diagram

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

29 | Page

ONLINE BOOK STORE

5.2.3.User interface Design


User interface design is the design of software applications with the focus on the
user's experience and interaction. The goal of user interface design is to make the user's
interaction as simple and efficient as possible, in terms of accomplishing user goals
what is often called user-centered design.
Good user interface design facilitates finishing the task at hand without drawing
unnecessary attention to itself. Graphic design may be utilized to support its usability. The
design process must balance technical functionality and visual elements to create a
system that is not only operational but also usable and adaptable to changing user needs.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

30 | Page

ONLINE BOOK STORE

5.2.4.ActivityDiagram

Administrat
or

Login

Fail
Success

Add Books

Search Book

Updates

Display Order

Change
Password

Logout

Figure.5.2.4: Activity Diagram

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

31 | Page

ONLINE BOOK STORE

5.2.5.2.1 Administrator Login (First Level DFD)

USER

Administrator

Fail

LOGIN

LOGIN
PROJECT

Yes

Add Books

Search
Books
Name

Author

Cost

Edition

Logout

D1 Users Information

Figure.5.2.5.2.1: Administrator Login


Administrator Login:
Configuration of different users of the Online Book Store System application will be
done in this module. Admin user is a privileged user who can Add/Modify a Books. Create
different users of a particular Books.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

32 | Page

ONLINE BOOK STORE

5.2.5.2.2 User (Second Level DFD)

User

Login

Fail

Login
Rejected

Yes

Search
Books

My Order
status

D1

View
Details

Change
Password

Logout

Project Info

Database

Figure.5.2.5.2.2: User
Project Module will be accessed by the Project Leader. Project Leader can do the
following things.

Login into the Online Books Store


Search Books.
View Order Status.
View Details
Change Password.
Logout from the Online Books Store.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

33 | Page

ONLINE BOOK STORE

5.2.5.2.3. Guest (Third Level DFD)

User

Login

Fail

Login
Rejected

Yes

Search
Books

My Order
status

D1

View
Details

Change
Password

Logout

Project Info

Database

Figure.5.2.5.2.3: Guest
Project Module will be accessed by the Module Leader. Project Manager can do the
following things.
Login into the Online Books Store
Search Books.
View Details
Change Password.
Logout from the Online Books Store

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

34 | Page

ONLINE BOOK STORE

6. IMPLEMENTATION
Implementation is the process of assuring that the information system is operational
and then allowing users take over its operation for use and evaluation. Implementation
includes the following activities.

Obtaining and installing the system hardware.


Installing the system and making it turn on its intended hardware.
Providing user access to the system.
Creating and updating the database.
Training the users on the new system.
Documentation the system for its users and for those who will be responsible for
maintaining in the future.
Making arrangements to support the users as the system is used.
Transferring ongoing responsibility for the system from its developers to the
operations or maintenance part.
Evaluation the operation and use of the system.
The most visible component of implementation process is the system conversion.
The four conversions strategies include.
1. Direct Conversion
2. Parallel Conversion
3. Pilot Conversion
4. Phased Conversion
1. Direct Conversion
In this, the organization stops using the old system and stars assign the new one at
the same time.
2. Parallel Conversion
It involves running both old system and new system and comparing their results.
The new system is accepted only after the results have matched for an acceptable period.
3. Pilot Conversion
It means introducing the new system to a small part of the organization, expanding it
use once it is known to operate properly there. Eventually, it will be in use by the entire
organization.
4. Phased Conversion
It means introducing a system in stages, one component or module at a time,
waiting until that one is operating properly introducing the next.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

35 | Page

ONLINE BOOK STORE

6.1. Language and Technology


6.1.1. Packages and Classes Used
Packages used in BUG Tracking System:
1. Java.sql.*:- Provides the API for accessing and processing data stored in a data
source (usually a relational database) using the JavaTM programming language.
2. Javax.servlet.*:- The javax.servlet.* package contains a number of classes and
interfaces that describe and define the contracts between a servlet class and the
runtime environment provided for an instance of such a class by a conforming
servlet container.
3. Javax.servlet.http.HttpSession:- Provides a way to identify a user across more
than one page request or visit to a Web site and to store information about that
user.
4. Javax.servlet.http.HttpServletRequest:The
servlet
container
creates
an HttpServletRequest object and passes it as an argument to the servlet's service
methods (doGet, doPost, etc).
5. Javax.servlet.http.HttpServletResponse:- The servlet container creates
an HttpServletResponse object and passes it as an argument to the servlet's
service methods (doGet, doPost, etc).
Classes Used:
There are a few classes are as follows:
Class

Description
The HttpSessionContext is the object that contains
all
existing
and
valid
sessions.
The
HttpSessionContext can be obtained by calling
getSessionContext() on the Session object.

HttpSessionContext

HttpSessionBindingListener

1MV11MCA57

HttpSessionBindingListener is an interface that can


be implemented by objects placed into a Session.
When the Session object is invalidated, its
contained values are also removed from the system.

Sir M VIT/DEPT. OF MCA/BANGALORE

36 | Page

ONLINE BOOK STORE

6.1.3. Sample Code


userHomeDef.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE
html
PUBLIC
"-//W3C//DTD
HTML
4.01
Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%@taglib prefix="obs" uri="http://onlinebookstore.com/tag" %>
<%@taglib prefix="core" uri="http://java.sun.com/jstl/core" %>
<html>
<head>
<title>Online Book Store</title>
<link rel="stylesheet" type="text/css" href="<%=request.getContextPath() %>/css/indexstyle.css">
</head>
<body bgcolor="lightgray">
<obs:validateSession/>
<obs:removeSearchInfoFromSession/>
<table width="90%" align="center" height="97%">
<tr height="5px" valign="top">
<td align="center">
<jsp:include page="/WEB-INF/pages/header.jsp"/>
</td>
</tr>
<tr valign="top" bgcolor="maroon" height="3px">
<td align="center">
<jsp:include page="/WEB-INF/pages/userMenu.jsp"/>
</td>
</tr>
<tr valign="middle">
<td align="center">
<jsp:include page="/WEB-INF/pages/userHome.jsp"/>
</td>
</tr>
<tr valign="bottom">
<td align="center">
<jsp:include page="/WEB-INF/pages/footer.html"/>
</td>
</tr>
</table>
</body>
</html>

Header.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

37 | Page

ONLINE BOOK STORE

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"


"http://www.w3.org/TR/html4/loose.dtd">
<html>
<body>
<!-<center><img src="<%=request.getContextPath() %>/images/Header1.jpg"></center>
-->
<center><font size="12" color="red"> Online Book Store</font> </center>
</body>
</html>

UserMenu.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE
html
PUBLIC
"-//W3C//DTD
HTML
"http://www.w3.org/TR/html4/loose.dtd">

4.01

Transitional//EN"

<%@taglib uri="/WEB-INF/tlds/onlinebookstore.tld " prefix="obs"%>


<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="jstl"%>
<%@page isELIgnored="false"%>
<html>
<head>
<link rel="stylesheet" type="text/css"
href="<%=request.getContextPath()%>/css/indexstyle.css">
</head>
<body>
<center>
<table class="textStyle" style="font-family: arial" cellpadding="2">
<tr>
<td><font color="yellow" size="2"> <b>Welcome</b></font></td><td><font size="2"
color="green"
size="2"><b>${USER_TO.firstName}&nbsp;${USER_TO.middleName}&nbsp;
${USER_TO.lastName}</b></font></td><td><font
color="yellow"
size="2"><b>[${USER_TO.role}]</b></font></td>
<td><a href="userHomeDef.jsp"><font size="2">Home</font></a></td>
<jstl:if test="${USER_TO.role eq 'Admin'}">
<td><font size="2" color="yellow">|</font></td>
<td><a href="addBookDef.jsp"><font size="2">Add Book</font></a></td>
</jstl:if>
<td><font size="2" color="yellow">|</font></td>
<td><a href="searchBookDef.jsp"><font size="2">SearchBook</font></a></td>
<jstl:if test="${USER_TO.role eq 'User'}">
<td><font size="2" color="yellow">|</font></td>
<td><a
href="userorderstatus.obs"><font
size="2">MyOrderStatus</font></a></td>
</jstl:if>
<jstl:if test="${USER_TO.role eq 'Admin'}">
1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

38 | Page

ONLINE BOOK STORE

<td><font size="2" color="yellow">|</font></td>


<td><a href="allorders.obs"><font size="2">DisplayOrders</font></a></td>
</jstl:if>
<td><font size="2" color="yellow">|</font></td>
<td><a href="detailsDef.jsp"><font size="2">ViewDetails</font></a></td>
<td><font size="2" color="yellow">|</font></td>
<td><a
href="changePasswordDef.jsp"><font
size="2">ChangePassword</font></a></td>
<td><font size="2" color="yellow">|</font></td>
<td align="right"><a href="logout.obs"><font size="2">Logout</font></a></td>
<td><font size="2" color="yellow">|</font></td>
</tr>
</table>
</center>
</body>
</html>

UserHome.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%@taglib uri="/WEB-INF/tlds/onlinebookstore.tld " prefix="obs"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="jstl"%>
<html>
<head>
<title></title>
<link rel="styleSheet" type="text/css"
href="<%=request.getContextPath() %>/css/indexstyle.css">
</head>
<body>
<center>
<table class="textStyle">
<tr>
<td align="center" colspan="3"><font size="7">
<b>User Home</b> </font></td>
</tr>
<tr><td
align="center">
<img
%>/images/home.jpg"></td></tr>
</table>
</center>
</body>
</html>

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

src="<%=request.getContextPath()

39 | Page

ONLINE BOOK STORE

Footer.html
<!DOCTYPE
html
PUBLIC
"-//W3C//DTD
HTML
4.01
Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<body>
<center>
<font size="4" style=font-family:arial color="black"><b>Copyright 2013. Online Book Store. All Rights
Reserved.</b>
</font>
</center>
</body>
</html>

OnlineBookShopServlet.java
package com.book.shop.servlet;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import com.book.shop.action.*;
public class OnlineBookShopServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
LoginAction loginAction = null;
LogoutAction logoutAction = null;
ChangePasswordAction changePasswordAction = null;
AddBookAction addBookAction = null;
SearchBookAction searchBookAction = null;
SortBookInfoAction sortBookInfoAction = null;
ForgetPasswordAction forgetPasswordAction = null;
RegisterAction registerAction = null;
NextAction nextAction = null;
PreviousAction previousAction = null;
DeleteBookAction deleteBookAction = null;
AddBookToCartAction addBookToCartAction = null;
RemoveFromCartAction removeFromCartAction = null;
PlaceOrderAction placeOrderAction = null;
EditInfoAction editInfoAction = null;
CanceleEditionInfoAction cancleEditInfoAction = null;
UpdateInfoAction updateInfoAction = null;
AllOrdersAction allOrdersAction = null;
UserOrderStatusAction userOrderStatusAction = null;
UpdateOrderStatusAction updateOrderStatusAction = null;
ShowOrderInfoAction showOrderInfoAction = null;
ShowUserInfoAction showUserInfoAction = null;

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

40 | Page

ONLINE BOOK STORE

public void init(ServletConfig config) throws ServletException {


super.init(config);
loginAction = new LoginAction();
logoutAction = new LogoutAction();
changePasswordAction = new ChangePasswordAction();
addBookAction = new AddBookAction();
searchBookAction = new SearchBookAction();
sortBookInfoAction = new SortBookInfoAction();
forgetPasswordAction = new ForgetPasswordAction();
registerAction = new RegisterAction();
nextAction = new NextAction();
previousAction = new PreviousAction();
deleteBookAction = new DeleteBookAction();
addBookToCartAction = new AddBookToCartAction();
removeFromCartAction = new RemoveFromCartAction();
placeOrderAction = new PlaceOrderAction();
editInfoAction = new EditInfoAction();
cancleEditInfoAction = new CanceleEditionInfoAction();
updateInfoAction = new UpdateInfoAction();
allOrdersAction = new AllOrdersAction();
userOrderStatusAction = new UserOrderStatusAction();
updateOrderStatusAction = new UpdateOrderStatusAction();
showOrderInfoAction = new ShowOrderInfoAction();
showUserInfoAction = new ShowUserInfoAction();
}
public void service(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String uri = request.getRequestURI();
String page = "";
if (uri.endsWith("login.obs")) {
page = loginAction.verifyUser(request, response);
} else if (uri.endsWith("changePassword.obs")) {
page = changePasswordAction.changePassword(request, response);
} else if (uri.endsWith("addBook.obs")) {
page = addBookAction.addBookInfo(request, response);
} else if (uri.endsWith("searchBook.obs")) {
page = searchBookAction.searchBookInfo(request, response);
} else if (uri.endsWith("sortInfo.obs")) {
page = sortBookInfoAction.sortBookInfo(request, response);
} else if (uri.endsWith("forgetPassword.obs")) {
page = forgetPasswordAction.searchPassword(request, response);
} else if (uri.endsWith("register.obs")) {
page = registerAction.registerStudent(request, response);
} else if (uri.endsWith("next.obs")) {
page = nextAction.searchBookInfo(request, response);
} else if (uri.endsWith("previous.obs")) {
page = previousAction.searchBookInfo(request, response);
} else if (uri.endsWith("delete.obs")) {
page = deleteBookAction.deleteBookCart(request, response);
} else if (uri.endsWith("addtocart.obs")) {
page = addBookToCartAction.addBookToCart(request, response);
1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

41 | Page

ONLINE BOOK STORE

} else if (uri.endsWith("removefromcart.obs")) {
page = removeFromCartAction.removeFromCart(request, response);
} else if (uri.endsWith("placeorder.obs")) {
page = placeOrderAction.placeOrder(request, response);
} else if (uri.endsWith("editinfo.obs")) {
page = editInfoAction.makeEditable(request, response);
} else if (uri.endsWith("cancleedit.obs")) {
page = cancleEditInfoAction.canceleEditionInfo(request, response);
} else if (uri.endsWith("updateinfo.obs")) {
page = updateInfoAction.UpdateUserInfo(request, response);
} else if (uri.endsWith("allorders.obs")) {
page = allOrdersAction.getAllOrders(request, response);
} else if (uri.endsWith("userorderstatus.obs")) {
page = userOrderStatusAction.getUserOrderStatus(request, response);
} else if (uri.endsWith("updateStatus.obs")) {
page = updateOrderStatusAction.updateOrderStatus(request, response);
} else if (uri.endsWith("showorderinfo.obs")) {
page = showOrderInfoAction.getOrderInfo(request, response);
} else if (uri.endsWith("showuserinfo.obs")) {
page = showUserInfoAction.getUserInfo(request, response);
}
request.getRequestDispatcher(page).forward(request, response);
}
}

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

42 | Page

ONLINE BOOK STORE

6.2. Component Diagram


In
the Unified
Modeling
Language,
a component
diagram depicts
how components are wired together to form larger components and or software systems.
They are used to illustrate the structure of arbitrarily complex systems.
Components are wired together by using an assembly connector to connect the
required interface of one component with the provided interface of another component.
This illustrates the service consumer - service provider relationship between the two
components.

Figure. 6.2. Component Diagram

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

43 | Page

ONLINE BOOK STORE

6.3. Deployment Diagram


A deployment diagram in the Unified Modeling Language models the physical
deployment of artifacts on nodes. Deployment diagrams are used to visualize the
topology of the physical components of a system where the software components are
deployed.
So deployment diagrams are used to describe the static deployment view of a
system. Deployment diagrams consist of nodes and their relationships. Deployment
diagrams are used for describing the hardware components where software components
are deployed. Component diagrams and deployment diagrams are closely related.
Component diagrams are used to describe the components and deployment
diagrams shows how they are deployed in hardware.

Figure.6.3.1. Deployment Diagram

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

44 | Page

ONLINE BOOK STORE

Figure.6.3.2. Deployment Diagram of Online Book Store System


Purpose
The purpose of deployment diagrams can be described as:
1. Visualize hardware topology of a system.
2. Describe the hardware components used to deploy software components.
3. Describe runtime processing nodes.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

45 | Page

ONLINE BOOK STORE

7.TESTING
Software Testing is a critical element of software quality assurance and represents
the ultimate review of specification, design and coding, Testing presents an interesting
anomaly for the software engineer.
A Strategy for software testing integrates software test cases into a series of
well planned steps that result in the successful construction of software. Software testing
is a broader topic for what is referred to as Verification and Validation. Verification refers
to the set of activities that ensure that the software correctly implements for a specific
function. Validation refers the set of activities that ensure that the software that has been
built is traceable to customers requirements.
Testing objectives include:
1. Testing is a process of executing a program with the intent of finding an error.
2. A good test case is one that has a probability of finding as a yet undiscovered error.
3. A successful test is one that uncovers an undiscovered error.
Testing Principles:
1.
2.
3.
4.
5.

All tests should be traceable to end user requirements.


Tests should be planned long before testing begins.
Testing should begin on a small scale and progress towards testing in large.
Exhaustive testing is not possible.
To be most effective testing should be conducted by a independent third
party.

Test Case Design:


A rich variety of test case design methods have evolved for softwares. These methods
provide the developer with a systematic approach to testing. Any engineering product
(including software) is tested from two different perspectives.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

46 | Page

ONLINE BOOK STORE

7.1.1 White Box Testing:


This test case design technique uses the control structure of the procedural design to
derive test cases. Using this technique for OJP 1.0, we designed test cases to:
1) Ensure that all independent paths within a module have been exercised at least
Scne (basis path testing).
2) Exercise all logical decisions on their true and false values (condition testing)
3) Exercise all loops at their boundaries and within their operational bounds (loop
testing).
4) Exercise internal data structures to ensure their validity (data flow testing).

7.1.2 Black Box Testing:


This test case design technique uses the functional requirements of the software to
derive test cases. Using this technique for OJP 1.0, we designed test cases to:
1) Ensure that the software functions are operational.
2) Exercise the initialization and termination errors.
3) Ensure that that the integrity of the database is maintained.
4) Ensure that input is properly accepted and output is correctly produced.
5) Exercise the interface and performance errors.

7.2. Types of testing


We have used different types of testing processes in this Data Mart management
System project. These are following types of testing:

7.2.1. Unit Testing


Unit testing focuses verification effort on the smallest unit of software design that is the
module. Using procedural design description as a guide, important control paths are
tested to uncover errors within the boundaries of the module. The unit test is normally
white box testing oriented and the step can be conducted in parallel for multiple
modules.

7.2.2. Integration Testing


Integration testing is a systematic technique for constructing the program structure,
while conducting test to uncover errors associated with the interface. The objective is to

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

47 | Page

ONLINE BOOK STORE

take unit tested methods and build a program structure that has been dictated by
design.
a) Top-down Integration:
Top down integrations is an incremental approach for construction of program structure.
Modules are integrated by moving downward through the control hierarchy, beginning
with the main control program. Modules subordinate to the main program are
incorporated in the structure either in the breath-first or depth-first manner.
b) Bottom-up Integration:
This method as the name suggests, begins construction and testing with
atomic modules i.e., modules at the lowest level. Because the modules are integrated
in the bottom up manner the processing required for the modules subordinate to a given
level is always available and the need for stubs is eliminated.
In Data Mart Management System various sub-modules are integrated with the
application. In addition, edit and view releases and projects are integrated with each
other.

7.2.3. Validation Testing


At the end of integration testing software is completely assembled as a package.
Validation testing is the next stage, which can be defined as successful when the
software functions in the manner reasonably expected by the customer. Reasonable
expectations are those defined in the software requirements specifications. Information
contained in those sections form a basis for validation testing approach.

7.2.4. System Testing


System testing is actually a series of different tests whose primary purpose is to fully
exercise the computer-based system. Although each test has a different purpose, all
work to verify that all system elements have been properly integrated to perform
allocated functions.
Steps needed to do System Testing:
The following steps are important to perform System Testing:
Step 1: Create a System Test Plan.
Step 2: Create Test Cases.
Step 3: Carefully Build Data used as input for System Testing.
Step 4: To automate Execution of test cases.
Step 5: Execute the test cases.
1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

48 | Page

ONLINE BOOK STORE

Step 6: Fix the bugs if any and re-test the code.


Step 7: Repeat the test cycle as necessary.
Several test cases were created to check the output of the system as a whole.

7.2.5. Security Testing


Security testing is a process to determine that an information system protects data and
maintains functionality as intended. Attempts to verify the protection mechanisms built
into the system. Some security testing concept covers these points:
1. Authorization: Authorization is the mechanism by which a system determines what
level of access a particular authenticated user should have to secure resources
controlled by the system.
2. Authentication: Authentication is the mechanism whereby systems may securely
identify their users. Authentication systems provide an answer to the questions:
Who is the user? And is the user really who he/she represents himself to be?
3. Integrity: It is usually involve adding information to a communication, to form the
basis of an algorithmic check, rather than the encoding all of the communication
with respect to same underlying technology.
4. Availability: In this, information must be kept available to authorized persons when
they need it.

7.2.6. Levels of Testing


In order to uncover the errors present in different phases we have the concept of levels
of testing. The basic levels of testing are as shown below

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

49 | Page

ONLINE BOOK STORE

Figure 0:1 Testing Levels Diagram

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

50 | Page

ONLINE BOOK STORE

7.3. Test Cases


Criteria Satisfied by Test Cases:
1. Test cases that reduced by a count that is greater than one, the number of
additional test cases that much be designed to achieve reasonable testing.
2. Test cases that tell us something about the presence or absence of classes of
errors, rather than an error associated only with the specific test at hand.

TEST CASE 1:
Testid

Test
Features

Expected
Result

Actual
Result

T1

Administrator:
login
Username:
admin
Password:
****

Invalid
password

Invalid
password

T2

Administrator:
login
Username:
11111
Password:
*****

Invalid
username

Invalid
username

T3

Administrator:
login
Username:
aaaaa
Password:
*****

Admin-id
Or
Password
does not
matched

Admin-id
Or
Password
does not
matched

T4

Administrator:
login
Username:
null
Password:
null

Please
enter
user
name

Please
enter
user
name

1MV11MCA57

Status

Pass

Pass

Sir M VIT/DEPT. OF MCA/BANGALORE

Pass

Pass

51 | Page

ONLINE BOOK STORE

T5

1MV11MCA57

Administrator:
login
Username:
admin
Password:
*****

Go
next
home
page

to

Sir M VIT/DEPT. OF MCA/BANGALORE

Go
next
home
page

to

Pass

52 | Page

ONLINE BOOK STORE

TEST CASE 2:

Tes
t-id

Test
Features

T1

Administrat
or:
Add
New
employee
enter
Uid:123

T2

Administrat
or:
Add
New
employee
enter
password:3
21

T3

Administrat
or:
Add
New
employee
enter

Expected
Result

Actual
Result

Stat
us
Pass

Successfully

Successf
ully

Pass
Successfully

Successf
ully

Pass
Successfully

Successf
ully

name:
Sonu

T4

Administrat
or:
Add
New
employee
enter

Pass
Successfully

Successf
ully

Unsuccessf
ully

Enter
2000/5/15

location:
Patna

T5

1MV11MCA57

Administrat
or:
Add
New
employee

Sir M VIT/DEPT. OF MCA/BANGALORE

Pass

53 | Page

ONLINE BOOK STORE

Enter date
of join:
12/5/2000

T6

1MV11MCA57

Administrat
or:
Add
New
employee
Enter
Remark:
Confirm

Successfully

Sir M VIT/DEPT. OF MCA/BANGALORE

Successf
ully

Pass

54 | Page

ONLINE BOOK STORE

8. ANNEXURE
LOGIN PAGE:

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

55 | Page

ONLINE BOOK STORE

NEW USER SIGN UP:

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

56 | Page

ONLINE BOOK STORE

FORGET PASSWPRD:

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

57 | Page

ONLINE BOOK STORE

SIGN UP HOME:

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

58 | Page

ONLINE BOOK STORE

HOME PAGE :

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

59 | Page

ONLINE BOOK STORE

Add Books:

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

60 | Page

ONLINE BOOK STORE

Search Book:

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

61 | Page

ONLINE BOOK STORE

Display Orders:

View Details:

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

62 | Page

ONLINE BOOK STORE

Change Password:

User Search book:

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

63 | Page

ONLINE BOOK STORE

My order Status:

Show My Cart:

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

64 | Page

ONLINE BOOK STORE

Place Order:

Place Order Status:

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

65 | Page

ONLINE BOOK STORE

9. CONCLUSION AND FUTURE ENHANCEMENTS


9.1. Conclusion
In this project main aim was only implementing the web services and wholesale owner
functions. But for to show the real situation in this area we will try to also implement the
online bookstore part but to confess it is not easy task to accomplish in a short period.
Nevertheless what we gain from this project are.

Cases , Class Diagrams , block diagrams and architecture)

The most critical point to remember about everything thats been implemented is that
the application is not defined by its functionality, but rather by the underlying design
used to implement the features. What the product actually does is through a solid
architecture framework. Even our project proposal involves implementing both
bookstore and wholesale supplier. We only implemented whole sale book supplier. This
is why implementing fully online book store project requires many function even it is not
relevant with our project. So we restrict our proposal to reflect this fact.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

66 | Page

ONLINE BOOK STORE

9.2. Future enhancement

The Online Book Store will require more secure encryption to process
transaction.
The online Book Store System is very easy to use on future.
The user can purchase book at any time and any where.
Attendance module can be added

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

67 | Page

ONLINE BOOK STORE

10. BIBLIOGRAPHY
Reference Books: Jim Keogh: The complete Reference J2EE, Tata McGraw Hill, 2002.
Robert W. Sebesta: Programming the World Wide Web, 4 th Edition, Pearson
Education, 2008. Kathy Sierra, Bert Bates, Head First Java, 2 nd Edition and 3rd
Edition.
Michael Blaha, James Rumbaugh: OOMD and Design with UML, 2 nd Edition,
Pearson Education, 2005.
Jim Keogh: The complete Reference JAVA, Tata McGraw Hill, 2004.

Websites: http://www.javaalmanac.com
http://www.onlinebookshopping.com
http://www.vclcomponents.com
http://www.sourcecodeprojects.com

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

68 | Page

ONLINE BOOK STORE

Project Profile

Project Title: Online Book Store.


Project Guide: Mr. Muthuramalingam
Internal Guide: Ms. Komala R.
Front End: Java, Java Script, Servlet
Back End: MS SQL Server
Team Size: 2
Developed By: Murali and Vaibhav.

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

69 | Page

ONLINE BOOK STORE

http://yorktown.cbe.wwu.edu/sandvig/mis314/assignments/assignment07.aspx
http://en.wikipedia.org/wiki/Online_shopping

1MV11MCA57

Sir M VIT/DEPT. OF MCA/BANGALORE

70 | Page

You might also like