bookstore
TRANSCRIPT
Summer Training Project Report
On
“ONLINE BOOKSTORE”
Submitted in Partial Fulfillment of the requirement for the award of Degree of
Bachelor Of Technology
in
Computer Science and Engineering
KIIT COLLEGE OF ENGINEERING
GURGAON
(Affiliated to MDU Rohtak)
Submitted By:
Gaurav Kohli
Roll No-21014
August, 2010
1
INDEX
S.NO CONTENT PAGE NO.
1. INTRODUCTION 4
Certificate 5
Acknowledgement 6
Objective 8
Project Development life Cycle 9
2. DESIGN OF PRESENT SYSTEM 10
Study of System 11
Hardwares Used 12
Softwares Used 12
Limitations 12
3. DESIGN OF PROPOSED SYSTEM 13
Methodology 13
Parts Of The System 14
PERT Chart 16
2
4. ANALYSIS 17
5. IMPLEMENTATION & CODING 20
Implementation Phase 20
Code Snippets 20
6. FLOW DIAGRAM 21
7. DATABASE 22
ER-Diagram 22
Tables 24
8. OUTPUT SNAPSHOTS 28
9. TESTING 37
10. MAINTENANCE 38
11. CONCLUSION 39
3
ACKNOWLEDGEMENT
I express my sincere gratitude and thanks to Mr,Sandeep Yadav for providing me the excellent
opportunity to do a project on Bookstore and providing me with all the essential elements
required for the completion and enhancement of this project.
I am also grateful to all the teachers of my college and the HOD, for their expert guidance and
cooperation in making my project a learning and worthwhile experience.
I would like to thanks those respondents who have taken pain in successful completion of my
project work.
6
OBJECTIVE
One will definitely prefer to lap up a system, which is cost effective yet highly efficient,
easy to install and operate. It is here that Online Bookstore is fast gaining its foothold as an
easy cost saving tool for general bookstores. The objective of the system is to reduce the
work load of the operator right from stocks to selling goods. The system should maintain a
detailed account of all provisions bought and goods sold at the bookstore. In addition to
this, it should also maintain the daily report of bookstore sales & shopping quota of registered
members.
The system should provide an interface to payroll for deductions. Several inquiry
facilities should also be provided to view the expenses incurred/ planned menus/cash payment
etc.
In short following are the list of facilities that should be provided with the system: list of
items available with rates, stock left, transactions’ summary, damages and demands,
purchases and issues, etc.
The objective of the project is to develop a Online Bookstore System meeting the needs
of employees and reducing the rush at general bookstores.
7
P ROJECT DEVELOPMENT LIF E CY CLE
The computer application development life cycle can be thought of six main steps, which are:
1. System project selection
2. Study Phase
3. Feasibility phase
4. Definition phase
5. Design phase
6. Implementation phase
7. Maintenance phase
8
DESIGN OF PRESENT SYSTEM
STUDY OF PRESENT SYSTEM:
Total Modules (divisions):
I. SEARCH
II. CATEGORIES
III. SHOPING CART
IV. REGISTRATION AND SIGN IN INFORMATION
V. ADMINISTRATION
VI. BOOK DETAILS
Brief explanation of modules under Manager Login:
A. SEARCH:
It provides an efficient searching method based on different categories and
titles .advanced search offers more refined search on author and filtering by price.
B. CATEGORIES:
The project includes books that are segregated in different categories to make the
browsing easier the categories in this project are :
a. Programming
b. Database
c. HTML and Web design
9
C. SHOPING CART:
After the login the user selects books and adds them to shopping cart specifying
the amount of books .The books then added to the shopping cart are displayed in
the shopping cart module with information :
Book name ,price ,quantity and total amount payable.
It also gives a “details” tab that allows the users to update the order form for
individual items.
D. REGISTRATION AND SIGNING INFORMATION:
This module holds the complete information of all the users along with their
personal information and account information and also the unique card no that is
specific to a particular user.
The account information held in this module keeps the record of all the usersthat
have accessed the service and their particulars about the orders placed.
E. BOOK DETAILS AND RATING:
The books that are held in the database when accessed provide the user with its
information such as name,title, author, category, picture , and book info.
The user is also provided the rating feature along with the book by which the user
can rate the book under 5 star ratings.
10
HARDWARE SPECIFICATIONS
RAM: 1 GB
Processor: Intel Pentium IV, 3 GHz
A monitor
A CPU
Standard Key Board & Mouse
SOFTWARES USED
Front End Languages: JAVA server pages, HTML, JAVA script
Database Used: ORACLE Architecture Employed: 2 tier Arch. OS: WIN Server
2003 (64 bit)
Server: Apache Tomcat 6.0
L i m it a ti o ns of pr e s ent s y ste m :
Tier-I architecture: User, Administrator and Database are installed on the same
system.
If system fails all the online book store preecedings may halt. I t would remain
close until system starts working normally.
In case of disk failure, all data may lose and might not be recoverable as there is
no backup on other system.
11
DESIGN OF PROPOSED SYSTEM
Melioration in present application software:
Up gradation to online shopping for employees/members.
Up gradation from Tier-I to Tier-II architecture.
LAN connection of user (customer/cashier) to system database (on server).
Logic for shopping at online bookstore site would be same as before.
METHODOLOGY
The project proceeded according to the steps of SDLC (Software Development Life
Cycle) that is in seven phases which include the following:-
1) Requirement Analysis: All the requirements are analyzed using verbal or written
questionnaires with bookstore shopkeeper & employees.
2) High-Level Design: The purpose of this phase is to design the overall functioning of the
proposed system and finalize the input and output format.
3) Low-Level Design: The purpose is to produce a detailed design of the Software
modules/units.
4) Construction: Actual coding will be done in this phase.
5) Testing: In this phase module level testing is performed with mock values.
12
6) Acceptance: At this time the software is actually provided to the company and checking
it according to need.
7) Warranty and Maintenance: No warranty and maintenance since the project is
developed as an enhanced beta product of current installed Bookstore Management
System.
PARTS OF THE PROPOSED SYSTEM
The application has three parts:
Front-end
Back-end
Connectivity
When we use JAVA as software development tool, connectivity code is written as a part of
front-end code itself.
FRON T -END
It has been coded so as to provide maximum user friendliness and ease. Stress is laid on
the point that the user should type as minimum as possible. Most of the work is done in few
clicks. From each page, jumps to the other pages are provided.
These event-linked functions contain connection string (which connects front-end with
applications) and queries, which are executed when the corresponding event occurs.
13
B ACK-END
Database is designed using MYSQL SERVER 5.0. Our main databases required for this
application are: stock item details, customer details, & username and password details of
customers.
All tables are normalized and do not have redundant or unwanted records.
C O NNEC T I V I TY
A connection string is used to connect the queries written in front-end codes with the
database.
Provider used—sun.jdbc.odbc.JdbcOdbcDriver ()
Driver used— mysql-connector-java-5.0.8 driver connecting to Oracle in windows OS.
14
PERT CHART
Activity Time
Preliminary Investigation & Study 6 days
Feasibility Study 1 day
Proposed System Design & Analysis 5 days
Development of Prototype 9 days
System Design 4 days
Study of Languages (JAVA Script & Java Server Pages) 7 days
Coding 14 days
System Testing & Bugs Adjudication 14 days
Implementation & Evaluation 3 days
Maintenance none
Total Days 63 days
15
ANALYS IS
Analysis can be referred to as study of a problem and its division into smaller modules so as
to solve particular problem. A complete understanding of software requirements is necessary to
help the new software being developed succeed. No matter how well designed or well coded, a
poorly analyzed and specified program will disappoint the user and will also be a burden to
the developer. At this stage comes Requirement analysis that is a process of discovery,
refinement, modeling and specification. Models of the required data, information and control
flow are created. It bridges together the gap between system-level software allocation and
software design.
Software Requirement Analys is is divided into the following areas:
1. I n itial Inve s ti g at i o n (P r o b l e m r e c o gniti o n ):
The first step of the development of system is the need of a new system. This might be a user
request to change, improve or enhance an existing system. This step Determine whether the
request is valid and feasible or not before improving or modifying the current system or build a
new one.
2. Det e r m i n i n g the u se r ’ s I n f o r m a t i o n R e qui r e m e n t (E v alu a tion & S y n t h esis):
At this stage, the user’s requirements are determined with the help of prototyping, asking
question and obtaining information from the existing system.
3. Pr ob l e m Def i n ition & Pr o je c t I n itiati o n :
Once the problem is clearly determined, the problem is defined in terms as to what is required,
how etc.
16
4. B a c k g r ound Anal y sis:
Once the project is initiated, the analyst begins to learn about the setting, the existing system
and the physical processes related to the revised system. All the background information is
collected and thoroughly studied. After obtaining background knowledge, the analyst begins
to collect data on the existing system, output, input and costs with the help of written
documents, on site observations, interviews and questionnaires.
5. Fa c t Anal y sis:
After gathering data, they must be organized and evaluated and conclusions drawn for
preparing a report to the users for final review and approval. At this stage, some tools are used
i.e. data flow diagrams, decision tables, structure charts etc.
17
In this project the following analysis is done:
1. In i ti a l Investi g a ti o n:
We saw that there were very few sites that could give complete information about air
management system to the users. Also there was a need to automate the entire system
2. De t e r m i na t ion of user R e qu i r e m e nts:
We contacted a number of people about this Project who agreed with the idea that this system
will help a lot many people rather that entire nation.
3. Pr o bl e m definiti o n & pr o j e c t initia t ion :
Problem definition is an initial investigation, which defines the problem that led to the user
request. It states the objectives the user is trying to achieve and the user wants to see. It gives
more stress on logical requirements than the physical requirements.
4. F a ct An a lysis:
All the data and information collected was organized to show how information flows and at
what stage, exactly what happens? For this we tried to explain this with the help of Data Flow
diagrams.
18
IMPLEMENTATION & CODING
IMPLEMENTATION PHASE
The implementation phase is less creative than system design. It is primarily concerned with
user training, site preparation, and file conversion. When the candidate system is linked to
terminals or remote sites, telecommunication network and test of the network along with the
system are also included under implementation.
During the final testing, user acceptance is tested, followed by user training. Depending on the
nature of the system, extensive user training may be required. Conversion usually takes place
about the same time the user is being trained or late.
In the extreme, the programmer is viewed as someone who ought to be isolated from other
aspects of the system development. Programming is itself design work, however. The initial
parameters of the candidate system should be modified as a result of programming efforts.
Programming provides a ‘reality test’ for the assumptions made by the analyst. Therefore, it is a
mistake to exclude programmers from the initial system design.
19
DATABASE
ER-DIAGRAM: The entity relationship diagram is shown on the next page.
Some of the attributes’ names are explained below.
title : it specifies the title of the book.
category : it specifies whether the books belong to which category.
quantity : it represents the number of units available in the stock of each book.
Updation: It specifies the final updated values of the list of books.
type : it represents the different types of books according to their types,i.e,database,comuter,etc.
price : it stores the price of the individual books.
Quantity: it stores the quantity of the individual items under different categories.
log: it stores only the data of the user as well as the list of books purchased.
21
suppliers: it specifies the manager that manages the online book store.
items : this specifies the order placed by a user,i.e ,the books.
Meaning of rest of the attributes, entity sets and relationship sets are understood as per their names:
22
TABLES:
There are total of five tables used for maintaining records.
DDL commands using SQL for creating the tables are:
For table “members”: This table is used to store login-ID, login-password,
smart card number, smart card number’s pin number and type of user
logging session.
CREATE TABLE members (
member_id int auto_increment primary key,
member_login varchar(20) NOT NULL,
member_password varchar(20) NOT NULL,
member_level int NOT NULL DEFAULT 1,
first_name varchar(50) NOT NULL,
last_name varchar(50) NOT NULL,
email varchar(50) NOT NULL,
phone varchar(50) NULL,
address varchar(50) NULL,
notes text NULL,
card_type_id int NULL,
card_number varchar(50) NULL
);
For table “orders”: This table store basic details of employee which is used
for the purpose of transactions.
24
CREATE TABLE orders (
order_id int auto_increment primary key,
member_id int NOT NULL,
item_id int NOT NULL,
quantity int NOT NULL
);
Table “Items”: This table maintains the available stock’s records.
CREATE TABLE items (
item_id int auto_increment primary key,
category_id int NOT NULL,
name varchar(255) NOT NULL,
author varchar(100) NULL,
price float NOT NULL,
product_url varchar(255) NULL,
image_url varchar(100) NULL,
notes text NULL,
is_recommended tinyint NULL DEFAULT 0,
rating int default 0,
rating_count int default 0
);
Table “editorials”: This table maintains the log of all the successfully completed
transactions.
CREATE TABLE editorials (
article_id int auto_increment primary key,
25
editorial_cat_id int NULL DEFAULT 0,
article_title varchar(200) NULL,
article_desc text NULL,
item_id int NULL DEFAULT 0
);
Table “editorial categories”: This table keeps temporary records of the
selection of items made by different (logged-in) users until transaction
commits or aborts.
CREATE TABLE editorial_categories (
editorial_cat_id int auto_increment primary key,
editorial_cat_name varchar(50) NULL
);
Table “card types”:
It keeps information of different types of cards for online payment
CREATE TABLE card_types (
card_type_id int auto_increment primary key,
name varchar(50) NOT NULL
);
26
TESTING PHASE
Testing is the process of making sure that the programs perform the intended tasks. Once the
system is designed it should be tested for validity. During system testing, the system is used
experimentally to insure that the software does not fail, that means it will run according to
its specification and in the way users expect it to. The system is tested with special test data
and
the results are examined for their validity. Some of the users may be permitted to operate on
the system so that the analyst can ascertain that the system can work in the specified
environment.
Test Details:
User Login Page Working
Database connection working
Item selection page working
Rating of books working
Editorial page working
Updation of sales summary in data-base working
Logout session working
Administrator Login Page working
37
MAINTENANCE PHASE
After the installation phase is completed and the user staff is adjusted to the changes created by
the candidate system, evaluation and maintenance begin. Like any system, there is an aging
process that requires periodic maintenance of hardware and software. If new information is
inconsistent with the design specification, then changes have to be made. Hardware also
required periodic maintenance to keep in tune with design specification. The importance of
maintenance is to continue to bring the new system to standers.
User priorities, changes in organization requirements, or environmental factors also call for the
system enhancements. To contrast maintenance is done with enhancement.
39
CONCLUSION
The efficiently performing running application for electronic information retrieval and
deposition has been developed, which achieves the following goals:
User can change his/her login password.
User can search & select the item(s) from the available list
Present mode of payment is via cash or cheque due unavailability of extensive special
devices required for other modes of payment.
The application data-base is protected by security code.
Error free and fast record processing is possible.
Manager is provided with rights to search, add, delete and modify stock items’ list.
Project creator is provided with rights to add, search & delete user details and
login details.
User can print report from any form (provided printer should be available)
40
LIMITA TIONS
As such every project has some limitations so this project does. Limitations are mentioned
below.
For successful implementation of the project, we should have a proper network system
where every transaction made should be updated in the server database. Inaccessibility
of internet/intranet.
As this project deals with personal and important data thus requires every security.
This project is limited to an Intranet Application thus is bound to an organization’s
building possessing the same intranet connections.
Data encryption needs to be implemented.
More features could be incorporated to facilitate employees additional services and easy
modes of payments.
More features and rights could be incorporated in administrator module for
implementing new services for employees.
41
FUTURE ENHANCE MENTS
The following additions can be made in future to improve or upgrade the performance of the
application.
Allowing multilevel selections by implementing advanced search.
Adding limpid application usage & directions so as to make it easily understandable by
new users.
Allowing multilevel selections.
Different modes of payments viz. credit card, on credit, etc. can be implemented.
Establishing connection with online payment gateway.
Connecting the application with the other online book databases
42
BIBLIOGRAPHY
Web sites:
1. www. w3 schoo ls.co m
2. www.ce nter ke y.co m
3. www.j ava.s un.co m
4. www.j avara nch.co m
_____________________________________ _____________________________________
43