Computerization of Book Store

advertisement
Computerization of Book Store in JAVA
COMPUTERIZATION OF BOOK STORE
Training Report
of
Second Year (4th Semester)
Submitted in partial fulfillment of the requirements for the award of degree of
BACHELOR OF TECHNOLOGY
IN
COMPUTER SCIENCE AND ENGINEERING
Submitted To:
Submitted By:
Mr. Vivek Sharma
Rimpy (1213331)
(HOD- CSE Deptt.)
SETH JAI PARKASH MUKUND LAL INSTITUTE OF
TECHNOLOGY, RADAUR
Computerization of Book Store in JAVA
INDEX
Sr. No.
Contents
1.
Acknowledgement
2.
About Company
3.
About Project
4.
Profile of Problem
5.
Objectives
6.
System Requirements
7.
Feasibility Analysis
8.
Development Schedule
9.
About Java Technology
10.
System Requirements Specifications
11.
Database Design
12.
Design Phase
13.
Construction Phase
14.
Testing Phase
15.
Implementation & Conversion Plan
16.
Acceptance Phase
17.
Project Legacy
18.
Bibliography
Page No.
Computerization of Book Store in JAVA
Acknowledgement
Acknowledgement is not mere formality but a genuine opportunity to
thank all those people without that active support in this project would not be
able to be possible.
We are thankful to Mr. Bhavneesh Sindhi for their valuable time they
devoted to us and give us a lot of knowledge and help regarding our project.
During our last semester in the curriculum of B. Tech. we are also thankful to
our respected Head of Department Sh. Vivek Sharma and Teachers for their
expert guidance. It is a great experience for us and we gained a lot here.
Words defeat us in expressing our deep sense of gratitude for our class
mates, whose continual support and guidance enabled us all the challenges
posed by this project, who provided us all the relevant information and the
necessary Hardware, Software and new ideas that really helped us a lot.
Special thanks are due to all other staff, Colleagues and friends for all the
encouragement, inspiration and motivation.
Finally, we are thankful to the almighty God who had given us the
power, good sense and confidence to complete my project successfully. We
also thank our parents who were a constant source of encouragement. Their
moral was indispensable.
Computerization of Book Store in JAVA
About Project:
The project is Computerization of Book Store. This project is made for any
organization to manage Employee’s record in an organization.
Knowledge domain used to develop the system:
The operating system used is Windows XP. The software tools required by this
project are JAVA, SQL Server.
The project requires the knowledge of the following subjects:
Software Language: JAVA (Swings, JDBC, Threads and object serialization)
Database: SQL-Server
Database handling: SQL
Potential users:
All the Book Shop Keepers can use our project to run their store easily. By using this
project they can store all the info. Related with the books available in the store. They
can also search a particular book easily by getting the info. From the project. In this
we also define the information of all the customers who wants to purchase the books
from their store. In this they can also store the info. Of all the orders of all those
books which are not available in the store. Because of this computerization, any
book store owner can run their store easily in User friendly Environment.
Computerization of Book Store in JAVA
Profile of Problem
The software aims at automating the existing manual systems and providing
secure, cheaper and quicker communication within an organization. As this is
a well designed and easy-to-use communication system will certainly give the
organization an edge over the other organizations with outdated and manual
communication system, with manpower doing the bulk of data transfer in the
form of files and paper documents.
With advanced features like e-mail, chat, message broadcast, server side
authentication, multimedia data transfer,
message printout facility, this
software turns out to be a very suitable one for any type of organization which
requires an efficient and secure communication among their employees. It
provides centralized information transfer system with any number of client
systems, to cater to any number of users. The project gives the user an easyto-use graphical interface that can be easily used by a novice.
Features of proposed project are as follow:
• Automation of existing manual information systems.
• Reduction of manual processing
• Keep track of daily information exchange at the server by the administrator.
• Increase in processing and transfer speeds of information over the
network.
• Reduction of errors and viruses due to non requirement of the internet.
• Keeping track that message should be delivered at the correct destination.
• Fast retrieval of all type of information
• Multimedia data communication.
.
Computerization of Book Store in JAVA
OBJECTIVES
All the Book Shop Keepers can use our project to run their store easily. By using this
project they can store all the info. Related with the books available in the store. They
can also search a particular book easily by getting the info. From the project. In this
we also define the information of all the customers who wants to purchase the books
from their store. In this they can also store the info. Of all the orders of all those
books which are not available in the store. Because of this computerization, any
book store owner can run their store easily in User friendly Environment.
The Main objectives of this project are:
• Reduction of paper work
• Automation of existing manual information systems.
• Reduction of manual processing
• Keep track of daily information exchange at the server by the administrator.
• Increase in processing and transfer speeds of information over the
network.
• Decrease in processing time
• Reduction of errors and viruses due to absence of internet
• Keeping track that message should be delivered at the correct destination.
• Fast retrieval of all type of information
• Good efficiency and response time
• More consistent data handling
• A user-friendly system which do not require any special training or
expertise of computer
Computerization of Book Store in JAVA
SYSTEM REQUIREMENTS
Product Definition
The project is Computerization of Book Store. This project is made for any
organization to manage Employee’s record in an organization.
The main features of this package are:
‰ Information of All the books available in Store..
‰ Information of all the Customers
‰ Information of all the sale/purchase of Books
‰ Order Info. for those books which are not available in Store.
Processing Environment:
The programming language and development tools are the critical factors in
the functioning of the developed system, so proper attention has to be paid
while selecting these tools. Following are the minimum requirements for
installation and making use of the software package:
Computerization of Book Store in JAVA
Hardware requirements:
Processor: Pentium
RAM:
128MB
HARD DISK: 40GB
Printer:
Any compatible printer
Software requirements:
JDK 1.5
SQL Server
JAVA being the platform independent language to generate the user-friendly
Software system is used as Front-end system and SQL Server for database
system, this will facilitate user in operating the system successfully.
A platform is the hardware or software environment in which a program runs.
We've already mentioned some of the most popular platforms like Windows
2000/XP, Linux, Solaris, and Mac OS. Most platforms can be described as a
combination of the operating system and hardware. The Java platform differs
from most other platforms in that it's a software-only platform that runs on top
of other hardware-based platforms.
The Java platform has two components:
•
The Java Virtual Machine (Java VM)
•
The Java Application Programming Interface (Java API)
Computerization of Book Store in JAVA
Feasibility Analysis
Feasibility study describes and evaluates candidate systems and provides for
the selection of the best candidate system that meets the system performance
requirements. Three key considerations are involved in the feasibility analysis:
1. Economic feasibility
2. Technical
3. Behavioral
1. Economic Feasibility
Economic feasibility determines the benefits and saving that are expected
from the system and compare them with costs. Cost/Benefit analysis has been
done on the basis of total cost of the system and direct and indirect benefits
derived from the system. The total cost for the proposed system comprises of
hardware costs and software costs. The main aim of economic feasibility is to
check whether the system is financially affordable or not. The cost for the
proposed system can be divided into two parts given below:
Hardware Costs
The hardware cost for the proposed system can be calculated from cost of
hardware needed for the development of the proposed system. The hardware
specifications for the system are given below:
Personal Computer: The cost of the PC depends upon the configuration
of the PC. The minimum specification assumed for the Pc is given below:
• Pentium IV processor
• 128 MB RAM
• 40 GB free disk space
• MS Windows
• Any compatible printer
Computerization of Book Store in JAVA
Server: As the software is a client-server based application, thus an
efficient server would act as the backbone of a good communication
system. The minimum specifications are:
• Pentium IV processor
• 256 MB RAM
• 120 GB free disk space
• MS Windows
Software Costs: the Software costs for the proposed system can be
calculated from the cost of software tools needed from the development of the
proposed system. The software tools needed for the development of the
system are given below:• JDK 1.5
• SQL Server
2. Technical Feasibility
Technical Feasibility centers on the existing system and to what extent it can
support the proposed system. In this part of feasibility analysis we determined
the technical possibilities for the implementation of the system. Two major
benefits are:
• Improving the performance
• Minimizing the cost of processing
The performance category emphasis improvements in the accuracy and
access to the information. It also makes easier to access the system by the
authorized users.
3. Behavioral Feasibility:
Computerization of Book Store in JAVA
Behavioral feasibility estimates the reaction of the User staff towards the
development of the computerized system. For the successful implementation
of any system, the users must be impressed that the new system is for his
benefit. So, the behavioral feasibility plays a very important role in the
development of new system It reveals that whether the system is acceptable
by user or not. If the user does not ready to use it, then it doesn’t matter how
best the system is or how much effort you are putting in its development.
Computerization of Book Store in JAVA
Development Schedule
System development revolves around a life cycle that begins with the
recognition of user needs. Following a feasibility study, the key stages of cycle
are evaluation of present system, information gathering, cost/benefit analysis,
detailed design and implementation of candidate system. The life cycle is not
a procedure that deals with hardware and software. It is a building computerbased system to help the user to operate system effectively and manage the
information successfully. The development schedule as above was followed
within a fixed timeframe of six weeks.
Programming Languages and Development tools:
The programming language and development tools are the critical factors in
the functioning of the developed system, so proper attention has to be paid
while selecting these tools. Following are the minimum requirements for
installation and making use of the software package:
Software requirements:
JAVA Developer Toolkit 1.5
SQL Server
Windows/ Linux platform
JAVA being the platform independent language to generate the user-friendly
Software system is used as Front-end system and SQL-Server as Back-end
database system, this will facilitate user in operating the system successfully.
Computerization of Book Store in JAVA
About the Java Technology
Java technology is both a programming language and a platform.
The Java Programming Language
The Java programming language is a high-level language that can be
characterized by all of the following buzzwords:
Simple
Architecture neutral
Object oriented
Portable
Distributed
High performance
Interpreted
Multithreaded
Robust
Dynamic
Secure
With most programming languages, you either compile or interpret a program
so that you can run it on your computer. The Java programming language is
unusual in that a program is both compiled and interpreted. With the compiler,
first you translate a program into an intermediate language called Java
bytecodes —the platform-independent codes interpreted by the interpreter on
the Java platform. The interpreter parses and runs each Java bytecode
instruction on the computer. Compilation happens just once; interpretation
occurs each time the program is executed. The following figure illustrates how
this works.
Computerization of Book Store in JAVA
You can think of Java bytecodes as the machine code instructions for the
Java Virtual Machine (Java VM). Every Java interpreter, whether it's a
development tool or a Web browser that can run applets, is an implementation
of the Java VM.
Java bytecodes help make "write once, run anywhere" possible. You can
compile your program into bytecodes on any platform that has a Java
compiler. The bytecodes can then be run on any implementation of the Java
VM. That means that as long as a computer has a Java VM, the same
program written in the Java programming language can run on Windows
2000, a Solaris workstation.
The Java Platform
A platform is the hardware or software environment in which a program runs.
We've already mentioned some of the most popular platforms like Windows
2000, Linux, Solaris, and MacOS. Most platforms can be described as a
combination of the operating system and hardware. The Java platform differs
from most other platforms in that it's a software-only platform that runs on top
of other hardware-based platforms.
The Java platform has two components:
•
The Java Virtual Machine (Java VM)
Computerization of Book Store in JAVA
•
The Java Application Programming Interface (Java API)
You've already been introduced to the Java VM. It's the base for the Java
platform and is ported onto various hardware-based platforms.
The Java API is a large collection of ready-made software components that
provide many useful capabilities, such as graphical user interface (GUI)
widgets. The Java API is grouped into libraries of related classes and
interfaces; these libraries are known as packages. The next section highlights
what functionality some of the packages in the Java API provide.
The following figure depicts a program that's running on the Java platform. As
the figure shows, the Java API and the virtual machine insulate the program
from the hardware.
Native code is code that after you compile it, the compiled code runs on a
specific hardware platform. As a platform-independent environment, the Java
platform can be a bit slower than native code. However, smart compilers, welltuned interpreters, and just-in-time bytecode compilers can bring performance
close to that of native code without threatening portability.
What Can Java Technology Do?
The most common types of programs written in the Java programming
language are applets and applications. If you've surfed the Web, you're
probably already familiar with applets. An applet is a program that adheres to
certain conventions that allow it to run within a Java-enabled browser.
However, the Java programming language is not just for writing cute,
entertaining applets for the Web. The general-purpose, high-level Java
programming language is also a powerful software platform. Using the
generous API, you can write many types of programs.
Computerization of Book Store in JAVA
An application is a standalone program that runs directly on the Java platform.
A special kind of application known as a server serves and supports clients on
a network. Examples of servers are Web servers, proxy servers, mail servers,
and print servers. Another specialized program is a servlet. A servlet can
almost be thought of as an applet that runs on the server side. Java Servlets
are a popular choice for building interactive web applications, replacing the
use of CGI scripts. Servlets are similar to applets in that they are runtime
extensions of applications. Instead of working in browsers, though, servlets
run within Java Web servers, configuring or tailoring the server.
How does the API support all these kinds of programs? It does so with
packages of software components that provides a wide range of functionality.
Every full implementation of the Java platform gives you the following
features:
•
The essentials: Objects, strings, threads, numbers, input and
output, data structures, system properties, date and time, and so
on.
•
Applets: The set of conventions used by applets.
•
Networking: URLs, TCP (Transmission Control Protocol), UDP
(User Datagram Protocol) sockets, and IP (Internet Protocol)
addresses.
•
Internationalization: Help for writing programs that can be
localized for users worldwide. Programs can automatically adapt
to specific locales and be displayed in the appropriate language.
•
Security: Both low level and high level, including electronic
signatures, public and private key management, access control,
and certificates.
•
Software components: Known as JavaBeansTM, can plug into
existing component architectures.
Computerization of Book Store in JAVA
•
Object
serialization:
Allows
lightweight
persistence
and
communication via Remote Method Invocation (RMI).
•
Java Database Connectivity (JDBCTM): Provides uniform
access to a wide range of relational databases.
Features of JAVA Technology
•
Get started quickly: Although the Java programming language is
a powerful object-oriented language, it's easy to learn, especially
for programmers already familiar with C or C++.
•
Write less code: Comparisons of program metrics (class counts,
method counts, and so on) suggest that a program written in the
Java programming language can be four times smaller than the
same program in C++.
•
Write better code: The Java programming language encourages
good coding practices, and its garbage collection helps you avoid
memory leaks. Its object orientation, its JavaBeans component
architecture, and its wide-ranging, easily extendible API let you
reuse other people's tested code and introduce fewer bugs.
•
Develop programs more quickly: Your development time may
be as much as twice as fast versus writing the same program in
C++. Why? You write fewer lines of code and it is a simpler
programming language than C++.
•
Avoid platform dependencies with 100% Pure Java: You can
keep your program portable by avoiding the use of libraries
written in other languages. The 100% pure JAVA is a repository
of historical process manuals, white papers, brochures, and
similar materials online.
Computerization of Book Store in JAVA
•
Write once, run anywhere: Because 100% Pure Java programs
are compiled into machine-independent bytecodes, they run
consistently on any Java platform.
•
Distribute software more easily: You can upgrade applets
easily from a central server. Applets take advantage of the feature
of allowing new classes to be loaded "on the fly," without
recompiling the entire program.
Computerization of Book Store in JAVA
SYSTEM REQUIREMENT SPECIFICATIONS
Developing Environment:
The development environment is the critical factor in the functioning of the
developed system, so proper attention has to be paid while selecting this
environment. Following are the tools, which are used in developing software
package:
Operating Environments:
The proposed project will operate under the following specification
Hardware Required:
Processor: Pentium Processor
RAM:
128MB
HARD DISK: 40GB
Printer:
Any compatible printer
Software Required:
O.S.:
Window 98, 2000, XP, Linux
Language: JAVA
Database: SQL Server
Computerization of Book Store in JAVA
DATABASE DESIGN
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
DESIGN PHASE
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
Computerization of Book Store in JAVA
The Construction Phase
In the construction phase, the software components are built. This phase uses
the output of low-level design to produce software items. During the
construction phase, we divided the responsibilities among the team members.
Some of them are assigned the task of designing the interface, whereas
others take the job of writing the code to develop the project
Team structure includes three members
Reetu
Reena
Ritu
Reetu was assigned the task of gathering required information related to the
proposed project and also assigned the task of studying the existing manual
system. After the completion of task various disadvantages of existing project
has been studied and were kept in mind for the designing of proposed project.
Reena was assigned the task of interface design and design of various
databases to be used by the proposed project. After the completion of task
MS ACCESS was chosen as the database required for database connectivity
with JAVA. Also design of database tables was finalized.
Ritu was been assigned the task of design and coding which is under
progress.
The various other tasks were performed collectively by the team members,
which are completed up to mark.
Computerization of Book Store in JAVA
The Testing Phase
Testing is vital to the success of the system. System testing makes a logical
assumption that if all the parts of the systems are correct, the goal will be
successfully achieved. Inadequate testing leads to errors that may not appear
until months later. This creates two problems:
The time lag between the cause and the appearance of the problem
The effect of system errors on files and records within the system
A small system error can conceivably explode into a much larger problem.
Effective testing early in the process translates directly into long-term cost
savings from a reduced number of errors.
Another reason for system testing is its utility as a user-oriented vehicle before
implementation. The best program is worthless if it does not meet the user
needs. Unfortunately, the user’s demands are often compromised by efforts to
facilitate program or design efficiency in terms of processing time or memory
utilization. Often the computer technician and the user have communication
barriers due to different backgrounds, interests, priorities and perhaps
languages. The system tester (designer, programmer or user) who has
developed some computer mastery can bridge this barrier
Testing Techniques
Both the Black Box testing and White Box testing techniques will be applied to
the proposed project for validating the software interface and to selectively
ensure that the internal working of the software is correct. The input will be
validated so that the correct output is produced. The checks for consistence of
the database will be properly evaluated. The procedure of the system will be
Computerization of Book Store in JAVA
highly checked for the logical paths and for specific set of conditions, loops
etc.
1. All the paths within module will be exercised at least once
2. The logical decision will be exercised for true or false sides
3. Whole code will be verified for the syntax errors
4. The internal data structure will be validated for data consistency
5. The graphical user interface will be checked for particular event
6. The complete application will be tested after the integration of all
modules and sub modules
Testing Strategies
Unit testing will be applied to all the modules of the project. All the modules of
the project will be tested with White Box and Black Box testing to complete
unit testing. Integration Testing will also be applied to verify that all the
interfaces work in co-ordination with each other. The Data Flow between
different modules will be verified for the consistency of the system. The
Bottom Up approach of integration will be applied to the proposed project. The
alpha testing of the project has been done by the team members. The beta
testing will be done by the employees of Food and Supply Department
Sample Data
The sample data will be prepared to ensure the proper working of the software
and validate each module. After testing the proposed project with this sample
data the expected results will be compared with the outputs obtained and
thereafter further steps will be taken if necessary.
Computerization of Book Store in JAVA
IMPLEMENTATION/CONVERSION PLAN
Conversion means changing from one system to another. The objective is to
put the tested system into operation while holding costs, risks and personal
irritation to a minimum. It involves:
1. Installing terminals
2. Installing the appropriate hardware and software
3. Creating computer compatible files
4. Training the operating staff
The conversion plan involves the following steps:
Conversion begins with the review of the project plan, the system test
documentation, and the implementation plan. The parties involved are the
user, the project team and the operators.
1. The conversion portions of the implementation plan to be finalized and
approved.
2. Files are converted
3. Parallel processing between the existing and the new systems to be
initiated
4. Results of computer operations of the new system to be logged
5. Assuming no problems, parallel processing to be discontinued
6. Implementation results to be documented
7. After all these steps, conversion is complete and the new system will be
now officially operational
Procedure for Implementation
Computerization of Book Store in JAVA
Project
Plan
Project
Plan
System Test
Documentation
Implementation
Plan
Conversion portion of
Implementation plan
Perform file
Conversion
Perform parallel
processing
Log results of
Conversion
Any
Discrepancies?
Implementati
on results
Implementation
documentation
Discontinue
parallel
processing
Complete
conversion
Prepare plan for postimplementation
Diagnose and
Correct
discrepancies
Computerization of Book Store in JAVA
The Acceptance Phase
In this phase, based on the pre-defined acceptance criteria, we have
conducted acceptance testing for the project. In the case the acceptance
criteria are the fulfillment of all the requirements identified during the
requirement analysis phase.
Computerization of Book Store in JAVA
Project Legacy
Current Status of Project:
The project i.e. Computerization of Book Store has been completed
successfully. Various phases (Requirement Analysis, Data Design, Coding,
and Testing) have been completed.
The project has been underlined and is kept in vision for the correct
functioning.
Technical and Managerial lessons learnt
We have learned to work in the team environment with different task
provided to different team members. We are developing the project
according to the Software Development Life Cycle. We have read the
different phases of Software Development Life Cycle and also how to
implement them practically. We have learnt how to make the SRS. The
other things we have learnt how to create friendly interface, how to plan the
work and how to work with different components. For the completion of
project we had to learn the platform independent language JAVA that
provides interactive user interface. The main advantage of using JAVA is
platform independent which makes it to run any platform without the
specified hardware or software requires.
As managerial lessons we have learnt to work with patience, how to
cooperate with the team members and how to work in the team.
Computerization of Book Store in JAVA
BIBLIOGRAPHY
The following books are being used to fulfill the requirements of the proposed
project and are helpful in the understanding, development and the
maintenance of the project:
1. Software Engineering
Roger S. Pressman
2. java
K.A.Mugal
3. Database System Concepts
Henry F. Korth
4. Structured Query Language
Ivan Bayros
Websites Visited:
www.java.sun.com
www.google.com
Download