You are on page 1of 116

Library automation System

- 1 -

INTRODUCTION
Library automation System
INTRODUCTION
Library is a fast growing organism. The ancient methods of maintaining it
are no longer dynamic and efficient. For expeditious retrieval and
dissemination of information and better service for the clientele, application
of modern techniques has become absolutely indispensable. A properly
computeried library will help its users with quic! and prompt services.
Library automation refers to mechaniation of library house!eeping
operations predominantly by computeriation. "b#ectives of this study. To
develop and updated database of $oo!s and other %esources of the school of
&hemistry Library, $harathidasan 'niversity.To implement automated
system using (oha Library )ntegrated Open Source Software, to carry out
the charging and discharging functions of the circulation section more
effectively.
To provide various search options to !now the availability of boo!s in the
Library, to generate the list of boo!s due by a particular member and also
the overdue charges.(oha is an integrated software system with all the
required models for small to very large libraries. )t is found that this
automation pro#ects will serve as a model for any library.
$eing an open source, any Library wanted to go for automation for their
library house!eeping operations can ma!e use of this software.
The Java Library Automation Sytem is designed * developed
for a receipt and issuance of boo!s in the library along with the student+s
details. This pro#ect gives complete information about the library. ,e can
enter the record of new boo!s and retrieve the details of boo!s available in
the library. ,e can issue the boo!s to the students and maintain their
records and can also chec! how many boo!s are issued and stoc! available
in the library. )n this pro#ect we can maintain the late fine of students who
returns the issued boo!s after the due date. The pro#ect is build using
JA!A and Acce. The ip file contains all the necessary .#ava, .class, and
image files. Following are some main files in this pro#ect-
Java Library Automation Sytem is a full-featured suite of
applications that smoothly automates all of the day-to-day functions of
libraries. .urpass is an effective automation solution for primary and
secondary school districts as well as for public, college, corporate, and
- / -
Library automation System
specialty libraries. .urpass offers a special pac!age for church libraries
too. .urpass 0osting .ervice offers libraries the ability to put their whole
system on-line with no need for in-house servers or )T staff.
1ibrary .olution is T1&2s integrated automation system for all sies
and types of libraries. Thousands of public, schools, academic and special
library sites worldwide have chosen 1ibrary .olution for its expansive,
innovative features and minimal system administration. 1ibrary .olution
also provides the foundation for T1&2s next-generation "3A&s - including
1./ 3A&, 1./ (ids, 1./ 4obile, 1./ &irc, and Textboo! 4anagement
and Asset Trac!ing - ensuring long life and great value for your )1..
Ob"ective of Library automation ytem
Java Library Automation Sytem is totally computerie
)t is very secure all file are secure and boo! are download at the time
of boo! so it cannot be lee!.
it can be conducted for remote candidates and evaluation of answers
can be fully automated for MCQ questions and other essay type
questions can be evaluated manually or through automated
system.
library can be conducted at any time and does not incur higher cost as
traditional boo! scenario as there is no paper wor! involved
)t will not ta!e more time. The result also be calculate after the boo!
completed
5') based application which is very easy to use
"vercome the load of boo!ing for chec!ing the answer sheet
There will added extra facility in 1ibrary.
- 6 -
Library automation System
- 7 -

Existing System
Library automation System
#$itin% Sytem
.ystem Analysis is a detailed study of the various operations performed by a system and
their relationships within and outside of the system. 0ere the !ey question is- what all
problems exist in the present system8 ,hat must be done to solve the problem8 Analysis
begins when a user or manager begins a study of the program using existing system.
9uring analysis, data collected on the various files, decision points and transactions
handled by the present system. The commonly used tools in the system are 9ata Flow
9iagram, interviews, etc. Training, experience and common sense are required for
collection of relevant information needed to develop the system. The success of the
system depends largely on how clearly the problem is defined, thoroughly investigated
and properly carried out through the choice of solution. A good analysis model should
provide not only the mechanisms of problem understanding but also the frame wor! of
the solution. Thus it should be studied thoroughly by collecting data about the system.
Then the proposed system should be analyed thoroughly in accordance with the needs.
.ystem analysis can be categoried into four parts.
System planning and initial investigation
Information Gathering
Applying analysis tools for structured analysis
Feasibility study
Cost/ Benefit analysis.
)n our existing system all the transaction of boo!s are done manually, .o ta!ing
more time for a transaction li!e borrowing a boo! or returning a boo! and also for
searching of members and boo!s. Another ma#or disadvantage is that to preparing the list
of boo!s borrowed and the available boo!s in the library will ta!e more time, currently it
is doing as a one day process for verifying all records. .o after conducting the feasibility
study we decided to ma!e the manual 1ibrary management system to be computeried.
- : -
Library automation System
- ; -

Proposed System
Library automation System
PROPOSED SYSTEM
3roposed system is an automated 1ibrary 4anagement .ystem. Through our
software user can add members, add boo!s, search members, search boo!s, update
information, edit information, borrow and return boo!s in quic! time. "ur proposed
system has the following advantages.
User friendly interface
Fast access to database
ess error
!ore Storage Capacity
Search facility
oo" and Feel #nvironment
$uic" transaction
All the manual difficulties in managing the 1ibrary have been rectified by implementing
computeriation.
- < -
Library automation System



- = -


Library automation System
:

&ront #n' Java Swin%
'ser friendly
5')
.eparation of wor!
>designing * coding?
,ritten once run
anywhere
4iddle-Tier
(ac) #n' *S+ACC#SS

.ecurity
3erformance
.calability
%eliability
.upport %94. concepts
- @ -
Library automation System
Hardware:-
Hardware:-
,roceor ,entium - ,roceor ,entium -
t. t.
RA* /01*( RA* /01*(
2ar' Di) 034(5-34(. 2ar' Di) 034(5-34(.
Software:-
Software:-
Operatin% Sytem Operatin% Sytem 6in'ow 715033358, 6in'ow 715033358,
&ront #n' &ront #n' "re/.9 "re/.9
(ac) #n' (ac) #n' *S+ACC#SS *S+ACC#SS
- 1A -
Library automation System
- 11 -
Modules & Description
Library automation System
/.New (oo)+: This option is mainly used to enter a new boo! in the
database.
0.New Stu'ent+:This option is uset to enter the data about a student.
;.Iue+:This option is used to issue boo!s by #ust enterind the student id as
well as boo! id.
-.Return+:)n this option you return as well as reissue boo!s.
)n this you can use the find buutton after entering the student and boo! id to
get issue date and due date to return boo!.
)t will automatically calculate fine for the student.
)n case of reissue you have to enter the reissue date and next due date and
boo! is reissued by #ust pressing reissue button.
9.Delete5Up'ate (oo)+:This is used to delete the entry from boo!s
database as well as to update the data abt previously stored boo!.
<.D#L#T#5U,DAT# Stu'ent+:This is used to delete the entry from
student database as well as to update the data abt previously stored student.
=.Searc.+:)t is used to search boo!s by selecting a option in combobox.)t
done search on four basis boo! id,name of boo!, sub#ect and department.
1.Uerearc.+:)t is used to search students by entering the id of the
student.)t is also used to
view as well as to pay the fine.
- 1/ -
Library automation System
7.C.an%e ,awor'+:'ser can change password by #ust entering the old
password and after pressing
chec! button you can enter the new password and change it by pressing
change button and your password has been changed
- 16 -
ANA!SIS
Library automation System
Requirement Analysis
At the heart of system analysis is a detailed understanding of all
important facets of business area under investigation. (For this reason,
the process of acquiring this is often termed the detailed investigation)
Analyst, working closely with the employees and managers, must
study the business process to answer these key questions:
hat is being done!
"ow is it being done!
"ow frequent does it occur!
"ow great is the volume of transaction or decisions!
"ow well is the task being performed!
#oes a problem e$ist!
%f a problem e$ist, how serious is it!
%f a problem e$ists, what is the underlying cause!
&equirement analysis relies on fact'finding techniques. (hese
include:
%nterview
)uestionnaires
&ecord inspection
*n'site observation
- 17 -
Library automation System
"e#si$ility Study
A feasibility study is conducted to select the best system that meets
performance requirement. (his entails an identification description, an
evaluation of candidate system and the selection of best system for he +ob.
(he system required performance is defined by a statement of constraints,
the identification of specific system ob+ective and a description of outputs.

(he key consideration in feasibility analysis is:
,. Economic Feasibility:
2. Technical Feasibility:
3. Operational Feasibility:
Economical feasibility
%t looks at the financial aspects of the pro+ect. %t determines
whether the management has enough resources and budget to invest in the
proposed system and the estimated time for the recovery of cost incurred. %t
also determines whether it is worth while to invest the money in the
proposed pro+ect. -conomic feasibility is determines by the means of cost
benefit analysis. (he proposed system is economically feasible because the
- 1: -
Library automation System
cost involved in purchasing the hardware and the software are within
approachable. (he personal cost like salaries of employees hired are also
nominal, because working in this system need not required a highly qualified
professional. (he operating'environment costs are marginal. (he less time
involved also helped in its economical feasibility. %t was observed that the
organi.ation has already using computers for other purpose, so that there is
no additional cost to be incurred for adding this system to its computers.
(he backend required for storing other details is also the same
database that is /ql. (he computers in the organi.ation are highly
sophisticated and don0t needs e$tra components to load the software. "ence
the organi.ation can implement the new system without any additional
e$penditure. "ence, it is economically feasible.
Software ost :
!anpower ost :
- 1; -
!S"AESS : #$%&&&1'
'2EE (it : Free
Team cost : 2$%&&&1'
System ost : 2&%&&&1'
Library automation System


Technical Feasibility
%t is a measure of the practically of a specific technical solution and the
availability of technical resources and e$pertise
(he proposed system uses 2ava as front'end and 3/'A44-// 5.6
as back'end tool.
3/'A44-// is a popular tool used to design and develop database
ob+ects such as table views, inde$es.
(he above tools are readily available, easy to work with and widely
used for developing commercial application.
"ardware used in this pro+ect are' p7 processor 8.79"., ,85
3: &A3, 76 9: hard disk, floppy drive. (hese hardware were already
available on the e$isting computer system. (he software like 3/'Access
866;, eb logic /erver, (hin #river, 2#<, 2/#<, 28-- and operating system
%=#*/'>?0 used were already installed *n the e$isting computer
system. /o no additional hardware and software were required to purchase
and it is technically feasible. (he technical feasibility is in employing
computers to the organi.ation. (he organi.ation is equipped with enough
computers so that it is easier for updating. "ence the organi.ation has not
technical difficulty in adding this system.
Tools )se* :
,) 28-- @ibrary
- 1< -
Total ost : +&%&&&1"
Library automation System
8) 28/#< 8.6
;) 2#< ,.8
7) 3/'A44-//

,uration of -ro.ect:"


Operational Feasibility
(he system will be used if it is developed well then be resistance for
users that undetermined
=o ma+or training and new skills are required as it is
based on #:3/ model.
%t will help in the time saving and fast processing and
dispersal of user request and applications.
=ew product will provide all the benefits of present
system with better performance.
- 1= -
Time ,uration
For stu*y #& *ays
,esi/nin/ #$ *ays
For *e0elopment 1$ *ays
Testin/ #& *ays
Total time 2& *ays
Library automation System
%mproved information, better management and collection
of the reports.
Aser support.
Aser involvement in the building of present system is
sought to keep in mind the user specific requirement and
needs.
Aser will have control over there own information.
%mportant information such as pay'slip can be generated
at the click of a button.
Faster and systematic processing of user application
approval, allocation of %#s, payments, etc. used had
greater chances of error due to wrong information
entered by mistake.
3eha0ioral Feasibility
3eople are inherent to change. )n this type of feasibility chec!, we come
to !now if the newly developed system will be ta!en and accepted by the wor!ing
force i.e. the people who will use it.
- 1@ -
Library automation System
- /A -

D#t# %lo& di#gr#ms
Library automation System
DATA "O' DIA(RAM
#ata Flow #iagramming is a means of representing a system at any
level of detail with a graphic network of symbols showing data flows, data
stores, data processes, and data sources1destination.
(he data flow diagram is analogous to a road map. %t is a network
model of all possibilities with different detail shown on different hierarchical
levels. (his processes of representing different details level is called
BlevelingC or BpartitioningC by some data flow diagram advocates. @ike a road
map, there is no starting point or stop point, no time or timing, or steps to
get somewhere. e +ust know that the data path must e$ist because at some
point it will be needed. A road map shows all e$isting or planned roads
because the road is needed.
#etails that is not shown on the different levels of the data flow
diagram such as volumes, timing, frequency, etc. is shown on supplementary
diagrams or in the data dictionary. For bookple, data store contents may be
shown in the data dictionary.
#ata Flow #iagram (#F#) uses a number of symbols to represent
the systems. #ata Flow #iagram also known as D:ubble 4hart0 is used to
clarify system requirements and identifying the ma+or transformations that
will become programs in system design. /o it is the starting point of the
- /1 -
Library automation System
design phase that functionally decomposes the requirements specifications
down to the level of details.
Terms use* in ,F,
-rocess
A process transforms data values. (he lowest level processes are pure
functions without side effects. An entire data flow graphics high level
process.
Graphical representation:
,ata flows
A data flow connects the output of an ob+ect or process to input of
another ob+ect or process. %t represents the intermediate data value within a
computation. %t is represented by an arrow and labeled with a description of
data, usually its name or type.
- // -
4raphical Representation:

4raphical Representation:


Library automation System
Actors
An actor is active ob+ect that drives the data flow graph by producing
or consuming values.
,ata store
A data store is a passive ob+ect with in a data flow diagram that stores
data for later access.



E5ternal Entity
A rectangle represents an e$ternal entity such as a librarian ,a
library member.

Output Symbol

(his bo$ represented data production during human computer
interaction
- /6 -
4raphical Representation:



4raphical Representation:


Library automation System
9ATA F1", 9)A5%A4
- /7 -
4raphical Representation:

Library automation System
- /: -
Library automation System
E ) R DIA(RAM
- /; -
Library automation System
#ata Flow #iagramming is a means of representing a system at any
level of detail with a graphic network of symbols showing data flows, data
stores, data processes, and data sources1destination.
(he data flow diagram is analogous to a road map. %t is a network
model of all possibilities with different detail shown on different hierarchical
levels. (his processes of representing different details level is called
BlevelingC or BpartitioningC by some data flow diagram advocates. @ike a road
map, there is no starting point or stop point, any time or timing, or steps to
get somewhere. e +ust know that the data path must e$ist because at some
point it will be needed. A road map shows all e$isting or planned roads
because the road is needed.
#etails that is not shown on the different levels of the data flow
diagram such as volumes, timing, frequency, etc. is shown on supplementary
diagrams or in the data dictionary. For bookple, data store contents may be
shown in the data dictionary.
#ata Flow #iagram (#F#) uses a number of symbols to represent
the systems. #ata Flow #iagram also known as D:ubble 4hart0 is used to
clarify system requirements and identifying the ma+or transformations that
will become programs in system design. /o it is the starting point of the
design phase that functionally decomposes the requirements specifications
down to the level of details.
- /< -
Library automation System
- /= -
Library automation System
DATABASE DESIGN

%he general theme behind a database is to handle information as an
integrated &hole. A database is a collection of interrelated data stored &ith
minimum redundancy to serve many users 'uic"ly and effectively. After
designing input and output( the analyst must concentrate on database design
or ho& data should be organi)ed around user re'uirements. %he general
ob*ective is to ma"e information access( easy 'uic"( ine+pensive and fle+ible
for other users. ,uring database design the follo&ing ob*ectives are
concerned-.
Controlled /edundancy
,ata independence
Accurate and integrating
!ore information at lo& cost
/ecovery from failure
0rivacy and security
0erformance
#ase of learning and use
- /@ -
Library automation System
TA(L#S US#D
Table Name> (oo)
&iel' Name Data Type Decription
$oo!)d AutoBumber 3rimary (ey
.ub#ect Text >6A? -
Title Text >6A? -
Author Text >/:? -
3ublisher Text >/:? -
&opyright Bumber -
Cdition Bumber -
3ages Bumber -
).$B Text -
Bumber"f$oo!s Bumber -
Bumber"fAvailble$oo!s Bumber -
Bumber"f$orrowed$oo!s Bumber -
1ibrary Text>/:? -
Availble DesEBo -
.helfBo Bumber -
- 6A -
Library automation System
Table Name> (orrow

&iel' Name Data Type Decription
$oo!)d Bumber 3rimary (ey
4ember)9 Bumber -
9ay"f$orrowed 9ateETime -
9ay"f%eturn 9ateETime -
Table Name> *ember
&iel' Name Data Type Decription
4ember)d AutoBumber 3rimary (ey
)9 Bumber -
3assword Text>1A? -
BA4C Text>/:? -
C4A)1 Text>/:? -
4a#or Text>1A? -
Bumber"f$oo!s Bumber -
4ony Bumber -
Cxpired 9ateETime -
- 61 -
Library automation System
- 6/ -
Coding
Library automation System
(UI INTER"ACE CODIN(
we make a class Myconnect to provide connection and this class
provide database independency.
//javac -Xlint orkut.java -> will give warnings ignore it
//compile others as usuall
//java MultiServer
//java orkut
//go to new user button only
//in passwd! tables are
//"table# logins
//username city scrapbook se$ country %irstname lastname password
//"table#%riends
//user& user' done
//done is o% yes/no type

import java.io.()
import java.awt.()
import java.awt.event.()
import java$.swing.()
/((
( Summary description %or orkut
(
(/
public class Libraray e$tends *+rame
- 66 -
Library automation System
,
// -ariables declaration
private *Label jLabel&)
private *Label jLabel')
private *Label jLabel)
private *Label jLabel.)
private */e$t+ield j/e$t+ield&)
private *0assword+ield j0assword+ield&)
private *1utton j1utton&)
private *1utton j1utton')
private *0anel content0ane)

public static String currentuser)
public static String viewname)
// 2nd o% variables declaration


public orkut"#
,
super"#)
initiali3e4omponent"#)
//
// /5657 8dd any constructor code a%ter
initiali3e4omponent call
//

this.set-isible"true#)
- 67 -
Library automation System
9

/((
( /his method is called %rom within the constructor to initiali3e
the %orm.
( :8;<=<>7 6o <5/ modi%y this code. /he content o% this
method is always regenerated
( by the :indows +orm 6esigner. 5therwise! retrieving design
might not work properly.
( /ip7 =% you must revise this method! please backup this >?=
%ile %or *+rame1uilder
( to retrieve your design properly in %uture! be%ore revising this
method.
(/
private void initiali3e4omponent"#
,
jLabel& @ new *Label"#)
jLabel' @ new *Label"#)
jLabel @ new *Label"#)
jLabel. @ new *Label"#)
j/e$t+ield& @ new */e$t+ield"#)
j0assword+ield& @ new *0assword+ield"#)
j1utton& @ new *1utton"#)
j1utton' @ new *1utton"#)
content0ane @ "*0anel#this.get4ontent0ane"#)

new 4lient"AphotoABAus-photo-trueA#)
- 6: -
Library automation System
new 4lient"AphotoABAorkut-onlyA#)

//
// jLabel&
//


jLabel&.set1ackground"new 4olor"&CD! '&'! '.'##)
jLabel&.set5paEue"true#)
jLabel&.set/e$t"A?S2;<8M2A#)
//
// jLabel'
//
jLabel'.set1ackground"new 4olor"&CD! '&'! '.'##)
jLabel'.set5paEue"true#)
jLabel'.set/e$t"A08SS:5;6A#)

// jLabel
//

jLabel.set=con"new =mage=con"Ac7/orkutFjava/photos/us-
photo-true.jpgA##)
jLabel..set=con"new
=mage=con"Ac7/orkutFjava/photos/orkut-only.jpgA##)
//
// j/e$t+ield&
//
- 6; -
Library automation System
j/e$t+ield&.set1ackground"new 4olor"'GG! 'GG! &G##)
j/e$t+ield&.add8ctionListener"new 8ctionListener"# ,
public void action0er%ormed"8ction2vent e#
,
j/e$t+ield&Faction0er%ormed"e#)
9

9#)
//
// j0assword+ield&
//
j0assword+ield&.set1ackground"new 4olor"'GG! 'GG!
&G##)
j0assword+ield&.add8ctionListener"new 8ctionListener"# ,
public void action0er%ormed"8ction2vent e#
,
j0assword+ield&Faction0er%ormed"e#)
9

9#)
//
// j1utton&
//
j1utton&.set/e$t"AloginA#)
j1utton&.add8ctionListener"new 8ctionListener"# ,
public void action0er%ormed"8ction2vent e#
,
- 6< -
Library automation System
j1utton&Faction0er%ormed"e#)
9

9#)
//
// j1utton'
//
j1utton'.set/e$t"Anew userA#)
j1utton'.add8ctionListener"new 8ctionListener"# ,
public void action0er%ormed"8ction2vent e#
,
j1utton'Faction0er%ormed"e#)
9

9#)
//
// content0ane
//
content0ane.setLayout"null#)
content0ane.set1ackground"new 4olor"&CD! '&'! '.'##)
add4omponent"content0ane! jLabel&! H''!&C'!H&!'I#)
add4omponent"content0ane! jLabel'! H'&!'G!H.!&J#)
add4omponent"content0ane! jLabel! H.!&&&!DII!.II#)
add4omponent"content0ane! jLabel.! I!&I!&I'.!DI#)
add4omponent"content0ane! j/e$t+ield&!
JIH!&C&!&DH!''#)
- 6= -
Library automation System
add4omponent"content0ane! j0assword+ield&!
JIJ!'G&!&D.!''#)
add4omponent"content0ane! j1utton&! HJ&!&G!J!''#)
add4omponent"content0ane! j1utton'! JHC!&G!CI!''#)
//
// orkut
//
this.set/itle"Aorkut - e$tends *+rameA#)
this.setLocation"new 0oint"I! I##)
this.setSi3e"new 6imension"&I'.!HDJ ##)

9

/(( 8dd 4omponent :ithout a Layout Manager "8bsolute
0ositioning# (/
private void add4omponent"4ontainer container!4omponent
c!int $!int y!int width!int height#
,
c.set1ounds"$!y!width!height#)
container.add"c#)
9

//
// /5657 8dd any appropriate code in the %ollowing 2vent
Kandling Methods
//
private void j/e$t+ield&Faction0er%ormed"8ction2vent e#
- 6@ -
Library automation System
,

//System.out.println"ALnj/e$t+ield&Faction0er%ormed"8ction2ven
t e# called.A#)
// /5657 8dd any handling code here

9

private void j0assword+ield&Faction0er%ormed"8ction2vent e#
,

//System.out.println"ALnj0assword+ield&Faction0er%ormed"8ctio
n2vent e# called.A#)
// /5657 8dd any handling code here

9


private void j1utton&Faction0er%ormed"8ction2vent e#
,

//System.out.println"ALnj1utton&Faction0er%ormed"8ction2vent
e# called.A#)

String strinput@Aselect password %rom logins where
username@MABj/e$t+ield&.get/e$t"#BAMA)
// //System.out.println"strinput#)
- 7A -
Library automation System
4lient c@new 4lient"strinput#)
i%"c.strrecvN@null OO
"c.strrecv#.eEuals"j0assword+ield&.get/e$t"###
,

// //System.out.println"Alogging inA#)
currentuser@j/e$t+ield&.get/e$t"#)
new viewpro%ile"j/e$t+ield&.get/e$t"##)
this.set-isible"%alse#)


9
else ,
// //System.out.println"c.strrecvBAno logging inA#)
new loginF%ailed"#)
9

// /5657 8dd any handling code here

9

private void j1utton'Faction0er%ormed"8ction2vent e#
,

//System.out.println"ALnj1utton'Faction0er%ormed"8ction2vent
e# called.A#)
- 71 -
Library automation System

new login"#)
this.set-isible"%alse#)
//System.out.println"AcreatedA#)

//this.set-isible"%alse#)
// /5657 8dd any handling code here

9

//
// /5657 8dd any method code to meet your needs in the
%ollowing area
//













- 7/ -
Library automation System



















//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ /esting
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@//
//@ @//
//@ /he %ollowing main method is just %or testing this class you
built.@//
//@ 8%ter testing!you may simply delete it. @//
- 76 -
Library automation System

//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@//
public static void main"StringPQ args#
,
*+rame.set6e%aultLook8nd+eel6ecorated"true#)
*6ialog.set6e%aultLook8nd+eel6ecorated"true#)
try
,

?=Manager.setLook8nd+eel"Acom.sun.java.swing.pla%.windows.:ind
owsLook8nd+eelA#)
9
catch "2$ception e$#
,
//System.out.println"A+ailed loading LO+7 A#)
//System.out.println"e$#)
9
new orkut"#)
9
//@ 2nd o% /esting @


9

- 77 -
Library automation System
/((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((/
/( login (/
/( (/
/((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((/
import java.awt.()
import java.awt.event.()
import java$.swing.()
import java.io.()
import java.applet.()
/((
( Summary description %or login
(
(/
public class login e$tends *+rame
,
// -ariables declaration
private login' ne$t%rame)
private *Label lang)
private *Label relig)
private *Label eid)
private *Label humour)
private *Label jLabel&)
private *Label jLabel')
private *Label jLabel)
private *Label jLabel.)
private *Label jLabelG)
private */e$t+ield j/e$t+ield)
- 7: -
Library automation System
private *0assword+ield j0assword+ield&)
private *0assword+ield j0assword+ield')
private */e$t+ield j/e$t+ieldJ)
private *4ombo1o$ j4ombo1o$&)
private *4ombo1o$ month)
private *4ombo1o$ year)
private *4ombo1o$ day)
private *1utton check)
private *1utton create)
private *1utton cancel)
private *1utton image)
private *Label title)
private *Label dob)
private *Label inte)
private *4heck1o$ %riends)
private *4heck1o$ activity)
private *4heck1o$ buisnet)
private *4heck1o$ h&)
private *4heck1o$ h')
private *4heck1o$ h)
private *4heck1o$ h.)
private *4heck1o$ hG)
private *4heck1o$ hD)
private *4heck1o$ hH)
private */e$t+ield tlang)
private */e$t+ield trelig)
private */e$t+ield teid)
- 7; -
Library automation System
private *0anel content0ane)
// 2nd o% variables declaration


public login"#
,
super"#)
*+rame.set6e%aultLook8nd+eel6ecorated"true#)
*6ialog.set6e%aultLook8nd+eel6ecorated"true#)
try
,

?=Manager.setLook8nd+eel"Acom.sun.java.swing.pla%.windows.:ind
owsLook8nd+eelA#)
9
catch "2$ception e$#
,
//System.out.println"A+ailed loading LO+7 A#)
//System.out.println"e$#)
9
initiali3e4omponent"#)
//
// /5657 8dd any constructor code a%ter
initiali3e4omponent call
//

- 7< -
Library automation System
this.set-isible"true#)
9

/((
( /his method is called %rom within the constructor to initiali3e
the %orm.
( :8;<=<>7 6o <5/ modi%y this code. /he content o% this
method is always regenerated
( by the :indows +orm 6esigner. 5therwise! retrieving design
might not work properly.
( /ip7 =% you must revise this method! please backup this >?=
%ile %or *+rame1uilder
( to retrieve your design properly in %uture! be%ore revising this
method.
(/
private void initiali3e4omponent"#
, create@new *1utton"A<e$tA#)
image@new *1utton"A=mageA#)
cancel@new *1utton"A4ancelA#)
lang@new *Label"ALanguageA#)
relig@new *Label"A;eligionA#)
eid@new *Label"A2-idA#)
tlang@new */e$t+ield"#)
tlang.set1ackground"new 4olor"G!'.H!'&##)
trelig@new */e$t+ield"#)
trelig.set1ackground"new 4olor"G!'.H!'&##)
teid@new */e$t+ield"#)
- 7= -
Library automation System
teid.set1ackground"new 4olor"G!'.H!'&##)
humour@new *Label"AKumourA#)
check@new *1utton"#)
title @new *Label"A:2L45M2... /5 ....5;R?/A#)
dob@new *Label"A6ate o% 1irthA#)
jLabel& @ new *Label"#)

jLabel' @ new *Label"#)
jLabel @ new *Label"#)
jLabel. @ new *Label"#)
jLabelG @ new *Label"#)
inte @new *Label"A=nterestsA#)
%riends @ new *4heck1o$"A+riendsA#)
activity @ new *4heck1o$"A8ctivity 0artnersA#)
buisnet @ new *4heck1o$"A1uissness <etworkingA#)
%riends.set1ackground"new 4olor"&GJ! &DJ! 'H##)
activity.set1ackground"new 4olor"&GJ! &DJ! 'H##)
buisnet.set1ackground"new 4olor"&GJ! &DJ! 'H##)
j/e$t+ield @ new */e$t+ield"#)
j0assword+ield& @ new *0assword+ield"#)
j0assword+ield' @ new *0assword+ield"#)
j/e$t+ieldJ @ new */e$t+ield"#)
j4ombo1o$& @ new *4ombo1o$"#)
month @ new *4ombo1o$"#)
year @ new *4ombo1o$"#)
day @ new *4ombo1o$"#)
h&@new *4heck1o$"Acampy/cheesyA#)
- 7@ -
Library automation System
h'@new *4heck1o$"Aclever/Euick wittedA#)
h@new *4heck1o$"Agoo%y/slapstickA#)
h.@new *4heck1o$"AraunchyA#)
hG@new *4heck1o$"Adry/sarcasticA#)
hD@new *4heck1o$"A%riendlyA#)
hH@new *4heck1o$"AobscureA#)
h&.set1ackground"new 4olor"&GJ! &DJ! 'H##)
h'.set1ackground"new 4olor"&GJ! &DJ! 'H##)
h.set1ackground"new 4olor"&GJ! &DJ! 'H##)
h..set1ackground"new 4olor"&GJ! &DJ! 'H##)
hG.set1ackground"new 4olor"&GJ! &DJ! 'H##)
hD.set1ackground"new 4olor"&GJ! &DJ! 'H##)
hH.set1ackground"new 4olor"&GJ! &DJ! 'H##)
content0ane @ "*0anel#this.get4ontent0ane"#)
month.add=tem"A*anA#)
month.add=tem"A+ebA#)
month.add=tem"AMarA#)
month.add=tem"A8prA#)
month.add=tem"AMayA#)
month.add=tem"A*unA#)
month.add=tem"A*ulA#)
month.add=tem"A8ugA#)
month.add=tem"ASepA#)
month.add=tem"A5ctA#)
month.add=tem"A<ovA#)
month.add=tem"A6ecA#)
String str)
- :A -
Library automation System
%or"int i@&)iS')iBB#
, str@=nteger.toString"i#)
day.add=tem"str#)

9
%or"int i@&CII)iS'IIH)iBB#
, str@=nteger.toString"i#)
year.add=tem"str#)
9

//
// jLabel&
//
jLabel&.set/e$t"A?sernameA#)

//
// jLabel'
//
jLabel'.set/e$t"A0asswordA#)
//
// jLabel
//
jLabel.set/e$t"A4on%irm 0asswordA#)
//
// jLabel.
//
jLabel..set/e$t"ASe$A#)
- :1 -
Library automation System
//
// jLabelG
//
jLabelG.set/e$t"AcityA#)
//
// j/e$t+ield
//
j/e$t+ield.set/e$t"AA#)
j/e$t+ield.set1ackground"new 4olor"'.&! '.G! &##)
j/e$t+ield.add8ctionListener"new 8ctionListener"# ,
public void action0er%ormed"8ction2vent e#
,
j/e$t+ieldFaction0er%ormed"e#)
9

9#)
//
// j0assword+ield&
//
j0assword+ield&.set/e$t"AA#)
j0assword+ield&.set1ackground"new 4olor"'G&!GC!G##)
j0assword+ield&.add8ctionListener"new 8ctionListener"# ,
public void action0er%ormed"8ction2vent e#
,
j0assword+ield&Faction0er%ormed"e#)
9

- :/ -
Library automation System
9#)
//
// j0assword+ield'
//
j0assword+ield'.set/e$t"AA#)
j0assword+ield'.set1ackground"new 4olor"'G&!GC!G##)
j0assword+ield'.add8ctionListener"new 8ctionListener"# ,
public void action0er%ormed"8ction2vent e#
,

j0assword+ield'Faction0er%ormed"e#)
9

9#)
//
// j/e$t+ieldJ
//
j/e$t+ieldJ.set/e$t"AA#)
j/e$t+ieldJ.add8ctionListener"new 8ctionListener"# ,
public void action0er%ormed"8ction2vent e#
,
j/e$t+ieldJFaction0er%ormed"e#)
9

9#)
//
// j4ombo1o$&
- :6 -
Library automation System
//
j4ombo1o$&.add=tem"AMaleA#)
j4ombo1o$&.add=tem"A+emaleA#)
check.set/e$t"A4heckA#)

check.add8ctionListener"new 8ctionListener"# ,


public void action0er%ormed"8ction2vent e#
,
// String username@j/e$t+ield.get/e$t"#)
checkFaction0er%ormed"e#)

// 4lient cl@new 4lient"#)

//int c@cl.0rocessing"Acheckselect username
%rom logins where username@MABusernameBAM)A#)

9

9#)

image.add8ctionListener"new 8ctionListener"# ,
public void action0er%ormed"8ction2vent e#
,
imageFaction0er%ormed"e#)

- :7 -
Library automation System
9

9#)
create.add8ctionListener"new 8ctionListener"# ,
public void action0er%ormed"8ction2vent e#
,
createFaction0er%ormed"e#)

9

9#)
cancel.add8ctionListener"new 8ctionListener"# ,
public void action0er%ormed"8ction2vent e#
,
cancelFaction0er%ormed"e#)
9

9#)


/(j4ombo1o$&.add8ctionListener"new 8ctionListener"# ,
public void action0er%ormed"8ction2vent e#
,
j4ombo1o$&Faction0er%ormed"e#)
9

9#)
- :: -
Library automation System
month.add8ctionListener"new 8ctionListener"# ,
public void action0er%ormed"8ction2vent e#
,
monthFaction0er%ormed"e#)
9

9#)
day.add8ctionListener"new 8ctionListener"# ,
public void action0er%ormed"8ction2vent e#
,
day.action0er%ormed"e#)
9

9#)
year.add8ctionListener"new 8ctionListener"# ,
public void action0er%ormed"8ction2vent e#
,
yearFaction0er%ormed"e#)
9

9#) (/
//
// content0ane
//
content0ane.setLayout"null#)
add4omponent"content0ane! jLabel&! .'!.G!DI!&J#)
add4omponent"content0ane! check! GI!.G!HI!&J#)
- :; -
Library automation System
add4omponent"content0ane! jLabel'! .I!JH!DI!&J#)
add4omponent"content0ane! jLabel! .I!&'!CD!&J#)
add4omponent"content0ane! jLabel.! .'!&HD!DI!&J#)
add4omponent"content0ane! jLabelG! .G!''J!DI!&J#)
add4omponent"content0ane! j/e$t+ield!
'&H!.G!&II!''#)
add4omponent"content0ane! j0assword+ield&!
'&H!JH!&II!''#)
add4omponent"content0ane! j0assword+ield'!
'&J!&'!&II!''#)
add4omponent"content0ane! j/e$t+ieldJ!
'&H!''H!&II!''#)
add4omponent"content0ane! j4ombo1o$&!
'&J!&HD!&II!''#)
add4omponent"content0ane! month! '&J!'DH!&II!''#)
add4omponent"content0ane! day! .II!'DH!GI!''#)
add4omponent"content0ane! year! '&J!IH!&II!''#)
add4omponent"content0ane! title! &GI!&I!'II!''#)
add4omponent"content0ane! dob! .I!'DH!&II!''#)
add4omponent"content0ane! inte! .I!.H!&II!''#)
add4omponent"content0ane! %riends! '&J!.H!&II!''#)
add4omponent"content0ane! activity! 'G!.H!&GI!''#)
add4omponent"content0ane! buisnet! '&J!HI!'GI!''#)
add4omponent"content0ane! lang! .I!.&I!&II!''#)
add4omponent"content0ane! tlang! '&J!.&I!&II!''#)
add4omponent"content0ane! relig! .I!..I!&II!''#)
add4omponent"content0ane! trelig! '&J!..I!&II!''#)
- :< -
Library automation System
add4omponent"content0ane! humour! .I!.JI!&II!''#)
add4omponent"content0ane! h&! '&J!.JI!&II!''#)
add4omponent"content0ane! h'! '&J!GII!&II!''#)
add4omponent"content0ane! h! '&J!G'I!&II!''#)
add4omponent"content0ane! h.! '&J!G.I!&II!''#)
add4omponent"content0ane! hG! 'G!.JI!&II!''#)
add4omponent"content0ane! hD! 'G!GII!&II!''#)
add4omponent"content0ane! hH! 'G!G'I!&II!''#)
add4omponent"content0ane! image! .I!GJI!&II!''#)
add4omponent"content0ane! create! 'II!GJI!&GI!''#)
add4omponent"content0ane! cancel! .II!GJI!&II!''#)

//
// login
//
content0ane.set1ackground"new 4olor"&GJ! &DJ! 'H##)
this.set/itle"Alogin - e$tends *+rameA#)
this.setLocation"new 0oint"I! I##)
this.setSi3e"new 6imension"&I'.! HDJ##)
9

/(( 8dd 4omponent :ithout a Layout Manager "8bsolute
0ositioning# (/
private void add4omponent"4ontainer container!4omponent
c!int $!int y!int width!int height#
,
c.set1ounds"$!y!width!height#)
- := -
Library automation System
container.add"c#)
9

//
// /5657 8dd any appropriate code in the %ollowing 2vent
Kandling Methods
//
private void j/e$t+ieldFaction0er%ormed"8ction2vent e#
,

//System.out.println"ALnj/e$t+ieldFaction0er%ormed"8ction2ven
t e# called.A#)
// /5657 8dd any handling code here

9

private void j0assword+ield&Faction0er%ormed"8ction2vent e#
,

//System.out.println"ALnj0assword+ield&Faction0er%ormed"8ctio
n2vent e# called.A#)
// /5657 8dd any handling code here

9

private void j0assword+ield'Faction0er%ormed"8ction2vent e#
,
- :@ -
Library automation System

//System.out.println"ALnj0assword+ield'Faction0er%ormed"8ctio
n2vent e# called.A#)
// /5657 8dd any handling code here

9

private void j/e$t+ieldJFaction0er%ormed"8ction2vent e#
,

//System.out.println"ALnj/e$t+ieldJFaction0er%ormed"8ction2ven
t e# called.A#)
// /5657 8dd any handling code here

9

private void j4ombo1o$&Faction0er%ormed"8ction2vent e#
,

//System.out.println"ALnj4ombo1o$&Faction0er%ormed"8ction2v
ent e# called.A#)

5bject o @ j4ombo1o$&.getSelected=tem"#)
//System.out.println"A>>A B ""o@@null#T AnullA 7 o.toString"##
B A is selected.A#)
// /5657 8dd any handling code here %or the particular
object being selected
- ;A -
Library automation System

9


private void checkFaction0er%ormed"8ction2vent e#
,

//System.out.println"ALnjcheckFaction0er%ormed"8ction2vent e#
called.A#)

4lient cl@new 4lient"Aselect username %rom logins where
username@MABj/e$t+ield.get/e$t"#BAMA#)

String ans@cl.strrecv)
i%"ans@@null# new checkid"ANNNN?ser<ame 8vailableNNNNA!I#)
else new checkid"ANNNN?ser<ame <ot 8vailableNNNNA!&#)



9

private void imageFaction0er%ormed"8ction2vent e#
,

//System.out.println"ALnjimageFaction0er%ormed"8ction2vent e#
called.A#)
/(
- ;1 -
Library automation System
this.set-isible"%alse#)
new imageupload"#)
this.set-isible"true#)
(/
// new viewpro%ile"orkut.currentuser#)

9

private void createFaction0er%ormed"8ction2vent e#
,

//System.out.println"ALnjcreateFaction0er%ormed"8ction2vent e#
called.A#)
4lient cl@new 4lient"#)

cl.0rocessing"Aselect username %rom logins where
username@MABj/e$t+ield.get/e$t"#BAM)A#)
String ans&@cl.strrecv)
i%"ans&@@null#
,

String str@Ainsert into logins values"MA)
String temp)

i%"N
j0assword+ield&.get/e$t"#.eEuals"j0assword+ield'.get/e$t"###
new passwd"#)
- ;/ -
Library automation System

else
,

%or"int i@I)iSC)iBB#
, switch"i#
,
case I7str@strBj/e$t+ield.get/e$t"#BAM!MA)
//System.out.println"str#)
break)

case &7str@strBj0assword+ield&.get/e$t"#BAM!MA)
// //System.out.println"str#)
break)
case '75bject o @
j4ombo1o$&.getSelected=tem"#)
temp@""o@@null#T A A 7 o.toString"##)
str@strBtempBAM!MA)
// //System.out.println"str#)
break)
case 7str@strBj/e$t+ieldJ.get/e$t"#BAM!MA)

//System.out.println"Acity...............ABstrBAendABALnABALnA#)
break)
case .75bject o& @ month.getSelected=tem"#)
5bject o' @ day.getSelected=tem"#)
5bject o @ year.getSelected=tem"#)
- ;6 -
Library automation System
temp@""o&@@null#T AA 7 o&.toString"##)
str@strBtempBA/A)
temp@""o'@@null#T AA 7 o'.toString"##)
str@strBtempBA/A)
temp@""o@@null#T AA 7 o.toString"##)
str@strBtempBAM!MA)
// //System.out.println"str#)
break)

case G7

temp@""N
%riends.isSelected"##TAA7A+riends!A#)
// //System.out.println"temp#)
str@strBtemp)
temp@""Nactivity.isSelected"##TAA7A8ctivity
0artners!A#)
str@strBtemp)
temp@""N
buisnet.isSelected"##TAA7A1uissness <etworking!A#)
str@strBtempBAM!MA)
// //System.out.println"str#)
break)

case D7str@strBtlang.get/e$t"#BAM!MA)
// //System.out.println"str#)
break)
- ;7 -
Library automation System
case H7str@strBtrelig.get/e$t"#BAM!MA)
// //System.out.println"str#)
break)
case J7
temp@""Nh&.isSelected"##TA
A7Acampy/cheesy!A#)
// //System.out.println"temp#)
str@strBtemp)
temp@""Nh'.isSelected"##TA A7Aclever/Euick
witted!A#)
str@strBtemp)
temp@""Nh.isSelected"##TA
A7Agoo%y/slapstick!A#)
str@strBtemp)
temp@""Nh..isSelected"##TA A7Araunchy!A#)
str@strBtemp)
temp@""NhG.isSelected"##TA
A7Adry/sarcastic!A#)
str@strBtemp)
temp@""NhD.isSelected"##TA A7A%riendly!A#)
str@strBtemp)
temp@""NhH.isSelected"##TA A7Aobscure!A#)
str@strBtempBAM!MA)


9

- ;: -
Library automation System
9
// //System.out.println"str#)

orkut.currentuser@ j/e$t+ield.get/e$t"#)
new 4lient"AnewusAB orkut.currentuser#)
ne$t%rame@new login'"str!this!j/e$t+ield.get/e$t"##)


ne$t%rame.set-isible"true#)
this.set-isible"%alse#)


9


9
else new checkid"ANNNN?ser<ame <ot 8vailableNNNNA!&#)
9

private void cancelFaction0er%ormed"8ction2vent e#
,

//System.out.println"ALnjcancelFaction0er%ormed"8ction2vent e#
called.A#)
System.e$it"I#)


- ;; -
Library automation System
9
//
// /5657 8dd any method code to meet your needs in the
%ollowing area
//

9

/* Timer class */
class /imer e$tends /hread implements ;unnable,
public /imer"#,
new /hread"this#.start"#)
9
public void run"# ,
while"startFtest#,
try ,
/hread.sleep"&III#)
secondsBB)
i%"seconds U DI @@ I OO seconds N@ I#,
seconds -@ DI)
minutesBB)
9
timecounter.set/e$t"A /ime 4ounter7
ABminutesBA mins 7 ABsecondsBA secs A#)
i%"minutes@@/=M2L=M=/#,
startFtest@%alse)
end/est"#)
9
9
catch"=nterrupted2$ception e$# , System.out.print"e$#) 9
9
- ;< -
Library automation System
9
9
/( checkteststatus method (/
public void checkteststatus"#,
i%""Euesnum @@ /5/8L-
&#OO"startFtest##choiceFbuttonPQ.set1ackground"4olor.green#)
else choiceFbuttonP.Q.set1ackground"4olor.light>ray#)
i%"answersPEuesnumQ.length"# >I#,
%or"int i@I) iSanswersPEuesnumQ.length"#) iBB#
bo$esP=nteger.parse=nt"answersPEuesnumQ.substring"i!iB&# #-
&Q.setSelected "true#)
9
else %or"int i@I) iSbo$es.length) iB
B#bo$esPiQ.setSelected"%alse#)
9
9
/* main method */
public static void main"String PQ args#,
5nline/est %rame @ new 5nline/est"#)
%rame.set/itle"A ABVuestionSeries.testtitle#)
%rame.set6e%ault4lose5peration" 2X=/F5<F4L5S2 #)
%rame.set-isible"true#)
9
9
- ;= -
Library automation System
- ;@ -
Testing
Library automation System
S!STEM TESTIN(
"ere the /ystem testing involved is the most widely used testing
process consisting of five stages as shown in the figure. %n general, the
sequence of testing activities is component testing, integration testing, and
then user testing. "owever, as defects are discovered at any one stage, they
require program modifications to correct them and this may require other
stages in the testing process to be repeated.
6omponent testin/7 68nte/ration testin/7 6)ser testin/)
- <A -
'nit testing
4odule
testing
Acceptance
testing
.ub-system
testing
.ystem
testing
Library automation System
(esting is the process of detecting errors. (esting performs a very
critical role for quality assurance and for ensuring the reliability of the
software. (he results of testing are used later on during maintenance also.
(esting is vital to the success of the system. /ystem testing makes a logical
assumption that if the parts of the system are correct, the goal will be
successfully achieved. %n adequate testing or non'testing leads to errors that
may not appear until months or even years later (&emember the =ew Eork
three day power failures due to a misplaced D:reak0 statement).
(his creates two problems:
,. (he time lag between the cause and the appearance of the problem.
8. (he time interval effect of the system errors on files and the records
on the system.
A small error can conceivably e$plode into a much larger problem. -ffective
testing early in the process translates directly into long term cost savings
from a reduced number of errors.
Another reason for system testing is it0s utility as a user oriented vehicle
before implementation. (he best program is worthless if it does not meet the
user requirements. Anfortunately, the user0s demands are often
compromised by efforts to facilitate program or design efficiency in terms of
processing time or design efficiency.
(hus in this phase we went to test the code we wrote. e needed to know if
the code compiled with the design or not! hether the code gave the desired
outputs on given inputs! hether it was ready to be installed on the user0s
computer or some more modifications were needed!
- <1 -
Library automation System
(hrough the web applications are characteristically different from there
software counterparts but the basic approach for testing these web
applications is quite similar. (hese basic steps of testing have been picked
from software engineering practices. (he following are the steps, we
undertook:

,. (he content of the %ntranet site is reviewed to uncover 4ontent
-rrors. 4ontent -rrors covers the typographical errors, grammatical
errors, errors in content consistency, graphical representation and cross
referencing errors
8. (he design model of the web application is reviewed to uncover the
navigation errors. Ase cases, derived as a part of the analysis activity
allows a web designer to e$ercise each usage scenario against the
architectural and navigational design. %n essence these non'e$ecutable
tests help to uncover the errors in navigation.
;. hen web applications are considered the concept of unit changes.
-ach web page encapsulates content navigation links, content and
processing elements (Forms, /cripts, and 2/?0s as in our case). %t is
not always possible to test each of these individually. (hus is the base
of the web applications the unit to be considered is the web page.
Anlike the testing of the algorithmic details of a module the data that
flows across the module interface, page level testing for web
applications is driven by content, processing and links encapsulating
the web page.
7. (he Assembled web application is tested for overall functionality and
content delivery. (he various user cases are used that test the system
for errors and mistakes.
- </ -
Library automation System
F. (he eb application is tested for a variety of environmental settings
and is tested for various configurations and upon various platforms.
(he modules are integrated and integration test are conducted.
G. (hread based testing is done to monitor the regression tests so that
the site does not become very slow is a lot of users are simultaneously
logged on.
H. A controlled and monitored population of end users tests %ntranet
application, this all comprises of the Aser Acceptance (esting.
:ecause web applications evolve continuously, the testing process
is an ongoing activity, conducted by web support staff in our case the
*rgani.ation0s %/ people who will finally update and manage the
application.
- S9:O;O49 OF TEST8<4
(he aim of testing is often to demonstrate that a program works by
showing that it has no errors. (he basic purpose of testing phase is to detect
the errors that may be present in the program. "ence one should not start
testing with the intent of showing that a program works, but the intent
should be to show that a program doesn0t work. (esting is the process of
e$ecuting a program with the intent of finding errors.
TEST8<4 O3'ET8=ES:
- <6 -
Library automation System
(he main ob+ective of testing is to uncover a host of errors,
systematically and with minimum effort and time. /tating formally, we can
say,
(esting is a process of e$ecuting a program with the intent of
finding an error.
A successful test is one that uncovers an as yet undiscovered error.
A good test case is one that has a high probability of finding error,
if it e$ists.
(he tests are inadequate to detect possibly present errors.
(he software more or less confirms to the quality and reliable
standards.
;E=E;S OF TEST8<4
%n order to uncover the errors present in different phases, we have
the concept of levels of testing. (he basic levels of testing are
4lient =eeds
Acceptance (esting
&equirements
/ystem (esting
#esign
%ntegration (esting
4ode
Anit (esting

- <7 -
Library automation System
)nit testin/
Anit testing focuses verification effort on the smallest unit of software
i.e. the module. Asing the detailed design and the process specifications,
testing is done to uncover errors within the boundary of the module. All
modules must be successful in the unit test before the start of the integration
testing begins.
%n this pro+ect each service can be thought of a module. (here are so
many modules like @ogin, "& #epartment, %nterviewer /ection, etc. -ach
module has been tested by giving different sets of inputs. hen developing
the module as well as finishing the development, the module works without
any error. (he inputs are validated when accepting them from the user.
8nte/ration Testin/
After unit testing, we have to perform integration testing. (he goal
here is to see if modules can be integrated properly, the emphasis being on
testing interfaces between modules. (his testing activity can be considered
as testing the design and hence the emphasis on testing module interactions.
%n this pro+ect the main system is formed by integrating all the
modules. hen integrating all the modules % have checked whether the
integration effects working of any of the services by giving different
combinations of inputs with which the two services run perfectly before
%ntegration.
S9STE! TEST8<4
- <: -
Library automation System
"ere the entire software system is tested. (he reference document for
this process is the requirements document, and the goal is to see if software
meets its requirements.
0ere entire F0%%3+ has been tested against requirements of pro#ect and it is
chec!ed whether all requirements of pro#ect have been satisfied or not.
AE-TA<E TEST8<4
Acceptance (esting is performed with realistic data of the client to
demonstrate that the software is working satisfactorily. (esting here is
focused on e$ternal behavior of the systemI the internal logic of program is
not emphasi.ed.
(est cases should be selected so that the largest number of attributes
of an equivalence class is e$ercised at once. (he testing phase is an
important part of software development. %t is the process of finding errors
and missing operations and also a complete verification to determine whether
the ob+ectives are met and the user requirements are satisfied.
>:8TE 3O? TEST8<4
(his is a unit testing method, where a unit will be taken at a time and
tested thoroughly at a statement level to find the ma$imum possible errors.
% tested step wise every piece of code, taking care that every
statement in the code is e$ecuted at least once. (he white bo$ testing is also
called 9lass :o$ (esting.
% have generated a list of test cases, sample data, which is used to
check all possible combinations of e$ecution paths through the code at every
module level.
- <; -
Library automation System
:hite-bo$ test %ocuses on the program control structure. /est cases
are derived to ensure that all statement in the program control structure. /est
cases are derived to ensure that all statement in the program control structure.
/est cases are derived to ensure that all statement in the program has been
e$ecuted at least once during testing and that all logical conditions have been
e$ercised. 1asis path testing! a white bo$ techniEue! makes use o% program
graphs "or graph matrices# to derive the set o% linearly independent test that will
ensure coverage. 4ondition and data %low testing %urther e$ercising degrees o%
comple$ity.
3;A( 3O? TEST8<4
(his testing method considers a module as a single unit and checks the
unit at interface and communication with other modules rather getting into
details at statement level. "ere the module will be treated as a block that will
take some input and generate output. *utput for a given set of input
combinations are forwarded to other modules.
:lack'bo$ test are designed to uncover errors functional requirement
without regard to the internal workings of a program. :lack'bo$ testing
techniques focus on the information domain of the software, deriving test
cases by partitioning the input and output domain of a program in manner
that provides through test coverage. (he black'bo$ test is used to
demonstrate that software functions are operational, that input is properly
produced, and that the integrity of e$ternal information are maintained. A
black'bo$ test bookines some fundamental aspect of a system with little or
no regard for the integral logical structure of the software.
9raph based testing methods e$plore the relationship between and
behavior of program ob+ects. -quivalence partitioning divides the input
classes of data are likely to e$ercise specific software function. :oundary
values analysis probes the program0s ability to handle data at the limits of
acceptability.
TEST 8<FOR!AT8O< F;O>
- << -
Library automation System
A strategy for software testing may also be viewed in the conte$t of the
spiral. Anit testing begins at the vorte$ of the spiral and, concentrates on
each unit, component of the software as implemented in source code. (esting
progresses moving outward along the spiral to integration testing, where the
focus is on designed the construction of the software architecture. (aking
another turn outward on spiral,
4onsidering the process from a procedural point of view, testing within
the conte$t of software engineering is actually a series of four steps that are
implemented sequentially. (he steps are shown in Figure. %nitially, tests
focus on each component individually, ensuring that it functions properly as
unit. "ence, the name unit testing. Anit testing makes heavy use of white'
bo$ testing techniques, e$ercising specific paths in module0s control structure
to ensure complete coverage and ma$imum error detection.
.ystem .ecurity
- <= -
System Testing

System Engineering

Validation Testing
Integration Testing
Design
Validation testing

Code
Library automation System
6.3 INFORMATION FLOW OF DATA FOR TESTING



- <@ -
Evaluatio
n
Testing
Reliability
Model
Debug
.oftware
&onfiguration
Test %esults
Crror
%ate 9ata
Test &onfiguration
Cxpected %esults
3redicated %eliability
&orrection
#rror
Library automation System
- =A -
Pro*ect Sc+eduling
Library automation System
PRO,ECT SC-EDUIN(
*nce we have the estimates of the effort and time requirement for the
different phases, a schedule for the pro+ect can be prepared. (his
schedule will be used later to monitor the progress of the pro+ect.
(he milestones in the system are:
/tart of the ?ro+ect : 86
th
dec0,,
/&/ 4ompletion : ,6
h
+an D ,8
&equirements Finali.ation: ,F
th
+an0,8
/ystem #esign : 8F
h
+an.0,8
#etail #esign : ;6
th
+an.0,8
4oding : ,F
th
feb.,8
Anit (esting : 86
th
feb0,8
(est ?lan : 85
th
feb.0,8
(esting : ,6
th
march0,8


(ANTT C-ART
- =1 -
Library automation System
- =/ -
.tart of the 3ro#ect
.%. &ompletion
%equirements
Finaliation
.ystem 9esign
9etail 9esign
&oding
'nit Testing
Test 3lan
Testing
9ec. Gan.
Gan.
Feb. Feb. Feb. 4ar. 4ar.
Time 9uration of
the Activity
4ilestones
Library automation System


- =6 -

IMPEMENTATION
Library automation System
IMPEMENTATION
8ntro*uction
/ystem implementation is the stage when the user has thoroughly
tested the system and approves all the features provided by the system. (he
various tests are performed and the system is approved only after all the
requirements are met and the user is satisfied.
(he new system may be totally new, replacing an e$isting
manual or automated system, or it may be a ma+or modification to an
e$isting system. %n either case, proper implementation is essential to provide
a reliable system to meet organi.ational requirements. /uccessful
implementation may not guarantee improvement in the organi.ation using
the new system (that is a design question), but improper will prevent it.
%mplementation is the process of having systems personnel check
out and put new equipment into use, train users, install the new application
and construct any files of data needed to use it. (his phase is less creative
than system design. #epending on the si.e of the organi.ation that will be
involved in using the application and the risk involved in its use, systems
developers may choose to test the operation in only one area of the firm with
only one or two persons. /ometimes, they will run both old and new system
in parallel way to com'pare the results. %n still other situations, system
developers stop using the old system one day and start using the new one
the ne$t.
- =7 -
Library automation System
(he implementation of the web based or @A= based networked pro+ect
has some e$tra steps at the time of implementation. e need to configure
the system according the requirement of the software.
For the pro+ect we need to install and configure eb logic server 5., ,
database server, and the deployment directory for the pro+ect.
Aspects of 8mplementation
(he two aspects of implementation are:
(raining ?ersonnel
4onversion ?rocedures
TRA8<8<4
-ven well designed and technically elegant systems can succeed or
fail because of the way they are used. (herefore the quality of the training
received by the personnel involved with the system in various ways helps
or hinders, and may even prevent, the successful implementation of an
information system.
/ince, "uman &esource &ecruitment ?rocess is web'based and user
friendly, not much effort was required in training process.
O<=ERS8O<:
4onversion is the process of changing from the old system to the
new system. (here are two methods of handling systems conversion:
?arallel &un
%mmediate cut'off
- =: -
Library automation System
-arallel Run
%n this approach, the old system and the new system are used
simultaneously for some period of time so that the performance of the
new system can be monitored and compared with that of the old system.
Also in case of failure of the new system, the user can fall back on the old
system. (he risk of this approach is that the user may never want to shift
to new system.
@.2.2.# 8mme*iate cut"off
%n this method, the use of the old system
ceases as soon as the new system is implemented and bought in to
palace. (he old system becomes redundant from the day of
implementation of the new system. (here is the high risk involved in this
approach if the new system is not tested rigorously. (his is because of the
fact that if the new system fails, then there will not be anything to fall
back upon. (he advantage of this approach is that both the systems need
not be used simultaneously.
8mplementation Tools
(he pro+ect was implemented using 2ava server pages, "(3@, 2ava beans.
(he implementation work was carried out in indows >?18666 server
platform.
- =; -
Library automation System
,) 28--
8) =et beans
;) 3/'A44-//

o*in/
(his means program construction with procedural specifications has finished
and the coding for the program begins:
*nce the design phase was over, coding commenced
4oding is natural consequence of design.
4oding step translate a detailed design representation of software
into a programming language reali.ation.
3ain emphasis while coding was on style so that the end result was
an optimi.ed code.
(he following points were kept into consideration while coding:
o*in/ Style
(he structured programming method was used in all the modules the pro+ect.
%t incorporated the following features
(he code has been written so that the definition and implementation
of each function is contained in one file.
- =< -
Library automation System
A group of related function was clubbed together in one file to
include it when needed and save us from the labour of writing it
again and again.
<amin/ on0ention:"
As the pro+ect si.e grows, so does the comple$ity of recogni.ing the
purpose of the variables. (hus the variables were given meaningful
names, which would help in understanding the conte$t and the
purposes of the variable.
(he function names are also given meaningful names that can be
easily understood by the user.
8n*entation
2udicious use of indentation can make the task of reading and understanding
a program much simpler. %ndentation is an essential part of a good program.
%f code id intended without thought it will seriously affect the readability of
the program.
(he higher'level statements like he definition of the variables,
constants and the function are intended, with each nested block
intended, stating their purpose in the code.
:lank line is also left between each function definition to make the
code look neat.
%ndentation for each source file stating he purpose of the file is also
done.
- == -
Library automation System
- =@ -

MAINTENANCE
Library automation System
MAINTENANCE
3aintenance or enhancement can be classified as: '
orrecti0e
A*apti0e
-erfecti0e.
4orrective maintenance means repairing processing or
performance failures or making changes because of previously
uncorrected problems or false assumptions.
Adaptive maintenance means changing the program function.
?erfective maintenance means enhancing the performance or
modifying the program(s) to respond to the user0s additional or changing
needs.
3aintenance is actually the implementation of the post
implementation review plan.
As important as it is, many programmers and analysts are reluctant
to perform or identify themselves with the maintenance effort. (here are
- @A -
Library automation System
psychological, personality and professional reasons for this. %n any case, a
first class effort must be made to ensure that software changes are made
properly and in time to keep the system in tune with user specifications.
3aintenance is costly. *ne way to reduce maintenance costs is
through maintenance management and software modification audits.
/oftware modification consists of program rewrites system level updates,
and re'audits of low ranking programs to verify and correct the soft spots.
(he outcome should be more reliable software, a reduced
maintenance backlog, and higher satisfaction and morale among the
maintenance staff.
%n "&&?, care has been taken towards maintenanceI @oop
"oles can be eradicated from the system from time to time according to
changing requirements with lesser cost.
- @1 -
Library automation System
- @/ -

Sn#ps+ots
Library automation System
SO&T6AR# INT#R&AC#
A'' New (oo)
Litin% All (oo)
- @6 -
Library automation System
Available (oo)
(orrowe' (oo)
- @7 -
Library automation System
Remove (oo)
#'it (oo) Detail
- @: -
Library automation System
A'' a *ember
Litin% all *ember
- @; -
Library automation System
#'it a member
Remove a member

Searc. for *ember an' (oo)
- @< -
Library automation System
$orrow $oo!s
%eturning a $oo!
1ist of )ssued $oo!s
- @= -
Library automation System
%eserve a $oo!
- @@ -
Library automation System
CONCUSIONS
(he interactive orkut interface greatly e$pands the
capabilities of the assessment offering, and gives candidates
the benefits of:
3ultimedia and %nteractive questions.
=o more handwriting concerns.
(he ability to log on and sit their boo!s from any )nternet terminal
(when supervision is not required).
&eal time data backup facility, to prevent loss of work.
hat about antiques! *ne can find an antique quilt that is up for highest
bid, or maybe an old violin, whose beautiful tones have enchanted many
though its years. (ickets. 3ay be a ticket to the ne$t concert of ones
favorite artist or play production. *ne can even find that special bottle of
wine, some aged, e$otic cheese, and the perfect Dmood0 music for that
special occasion.

Scope for Future >orA
(he boo!iner who uploads the questions gets an option of
specifying whether the questions can be used for practice tests or not.
4ommunities or groups can be formed for specific
- 1AA -
Library automation System
*rgani.ations.
A variety of analysis options based on different parameters or
combinations of different parameters for faculty1bookiners
conducting the test.
(esting and 3anagement of the system are important
advanced features that are offered by the proposed system.

"UTURE SCOPE
?roviding the /3/ alerts facility to users to remove the
#ependency on email account (web).
?roviding the social media site to e$press, review and share in
(he form of :logs, ?hotos, Jideos, discussions in multiple
e$plosively popular areas of interest such as 3ovies, (ravel ,
events and much more.
=urturing the dream of providing -mail account facility to users so
they can feel the independence of mail account at the same site.
(he idea of having a 3ail account has been dealt in the system but
3any more functionalities can be added to it.
DEPENDENCIES
%t doesn0t matter how efficiently the application works, if the
:andwidth is not sufficient the transaction will take more time
then e$pected.
3/'A44-// and 3/'A44-// 2#:4'*#:4 drivers for connectivity.
- 1A1 -
Library automation System
2ava eb server is required for the application.
Although this software is architecturally independent but following
"ardware resources are required. For i.e. any %:3 compatible ?4
or any other workstation with mouse support and relevant software.
;imitations
/ince, every system has some limitations so our proposed system is
also not untouchable in this regard. Although it includes every kind of
features, but it can0t be used in a huge organi.ation where number of
networks are very large, because the database used in this system is an
average one. Also it doesn0t have different kind of access feature for different
users.
(hough it was planned for this system to be absolutely perfect but
everything as such has some limitations, so does the /ystem. Following may
be the drawback in this system.
(hough this system is developed as a multi user system
but it is not a real time system.
(he interaction with the database, every time they are
loaded thus the system tends to be a bit slow.
- 1A/ -
Library automation System
- 1A6 -

APPENDI.)A
/D#t#$#se0
Library automation System
APPENDI.)A
3acAen* remains on ser0er si*e an* has two components i.e.
#. Ser0er si*e pro/ram
2. ,ata 3ase.
,ata base is the most important thing in this universe as data base gives
identity to a thing without data base e$istence of a thing is impossible while
working on a pro+ect first step is to design a database.
>hat is *ata baseB
#ata :ase is a collection of tables and table is a collection of records in a
tabular form i.e. in row and columns.
,ata 3ase can be *i0i*e* into two parts:"
#. R,3!S.
2. ,3!S.
e will be using &#:3/ (&elational #atabase 3anagement /ystem) in our
pro+ect i.e. 3/'A44-// Ki -nterprise edition.
>hy we are usin/ !S"AESS 6R,3!S7B
- 1A7 -
Library automation System
Some of the merits of usin/ !S"AESS 6R,3!S7 are as
un*er:"
4entrali.ation of database.
4lient /erver (echnology.
/ecurity.
=ormali.ation of #ata :ase.
&elationship.
(ransaction ?rocessor.
%t gives some internet related features.
"ence because of these features we are using 3/'A44-// as a
back end technology.
A3O)T !S"AESS
3/'A44-// contains all the features of previous version. %t also
supports some new features L enhancement to some e$isting features. 3/'
A44-// servers provide deficient L effective solution for the ma+or features.
- 1A: -
Library automation System
;ar/e ,atabase C Space !ana/ement ontrol
!any oncurrent ,atabase -erformances
:i/h Transaction -rocessin/ -erformance
:i/h A0ailability
ontrolle* A0ailability
8n*ustry Accepte* Stan*ar*s
!ana/eable Security
,atabase Enforce* 8nte/rity
,istribute* ,atabase System
-ortability
ompatibility
onnecti0ity
<E> FEAT)RES OF !S"AESS
8mpro0e* Scalability
8mpro0e* Security
8mpro0e* -erformance 0ia -artition
Enhance* Support for ,atabase Replication
apability to :an*le a !uch ;ar/er <umber of
oncurrent )sers
<ew C 8mpro0e* ,ata Types

- 1A; -
Library automation System
APPENDI.)1
>hat is !i**le >areB
Middle :are is a concept! Middle :are provides centrali3ation o% business logic
i.e. instead o% putting logic on each and every client machine we put logic on a
- 1A< -

APPENDI.)1
/,#2# 3 *4ee0
Library automation System
centrali3ed server hence middle ware is nothing but a server side program where
all your business logic and business methods reside. =t remains on server side
and it has all the logical building. Middle ware provides7-
#7 !ultiple lient access.
27 entraliDe* business lo/ic in case of
*istribute* application.
1ecause we are working on 6istributed 8pplication 1ased 0roject we need
plat%orm independent Language7-
Technolo/y )se*
Introduction to Java
2ava is a high level, third'generation programming language, like 4, Fortran,
?erl and many others. %t is a platform for distributed computing M a
development and run'time environment that cointains built'in support for the
orld ide eb.
:istory of 'a0a
2ava development began at /un 3icrosystems in ,KK,, the same year the
orld ide eb was conceived. 2ava0s creator, 2ames 9osling did not design
+ava for the %nternet. "is *b+ective was to create a common development
environment for consumer electronic devices which was easily portable from
one device to another.
(his effort evolved into a language, code named *ak and later
renamed 2ava that retains much of the synta$ and power of cNN , but is
simpler and more platform independent.
'a0a Features
- 1A= -
Library automation System
Some of the important features of 'a0a are as follows:
Simplicity
Orientation
-latform 8n*epen*ence
Security
:i/h -erformance
!ulti Threa*in/
,ynamic linAin/.
4arba/e ollection.
*ne of the most important features of 2ava is ?latform %ndependence which
makes it famous and suitable language for orld ide eb.
>hy .a0a is -latform 8n*epen*entB
2ava is ?latform %ndependent because of 2ava Jirtual 3achine (2J3).
'a0a =irtual !achine 6'=!7
(he client application or operating system must have a +ava byte'code
interpreter to e$ecute byte'code instructions. (he interpreter is a part of a
lager program called the 2J3. (he 2J3 interprets the byte code into native
code and is available on a platform that supports +ava.
onnecti0ity usin/ ',3
There are four Ain*s of *ri0ers a0ailable in '*bc:"
#. '*bc O*bc 3ri*/e ,ri0er.
2. -artly 'a0a ,ri0er.
- 1A@ -
Library automation System
3. -ure 'a0a ,ri0er.
1. <ati0e ,ri0er.
lient Si*e 8nterface:
%n client side interface we are using:'
Ser0let E 'S- F 8n 8nternet 3ase* Application.
'2EE FrameworA an* Architecture
28-- is one of the best solutions that we have had so far for meeting the
demand of today0s enterprise. 28-- specifies both the infrastructure for
managing our applications, and the service A?%s for building our applications.
(he 28-- platform is essentially a distributed application'server environment'
a +ava environment that provides the following: '
A set of +ava e$tension A?%s to build applications. (hese A?%s define a
programming model for 28-- applications.
O A run time infrastructure for hosting and managing applications. (his is
the server runtime in which our applications resides.
(he applications that we could develop with the above may be programs to
drive web pages, or components to implement comple$ database
transactions, or even +ava applets, all distributed across the network.
The '2EE Runtime
hile 28-- bundles together A?%s that have been in e$istence in one form or
another for quite sometime, perhaps its most significant aspect is the
abstraction of the runtime infrastructure. (he 28-- specification doesn0t
specify how a 28-- runtime should or could be built. %nstead, 28-- specify
- 11A -
Library automation System
roles and interfaces for applications, and the runtime onto which applications
could be deployed. (his results in a clear demarcation between applications
and the runtime infrastructure. (his demarcation allow the runtime to
abstract most of the infrastructure services that enterprise developers have
traditionally attempt to build on their own. As a result, 28-- application
developers could +ust focus on the application logic and related service, while
leveraging the runtime for all infrastructure'related services.
Apart from specifying a set of standard A?%s, the 28-- architecture also
provides a uniform means of accessing platform'level services via its runtime
environment. /uch service includes distributed transactions, security,
messaging etc.
The '2EE A-8s )se*
#istributed applications require access to a set of enterprise services. (ypical
services include transaction processing, database access, messaging,
multithreading etc. (he 28-- architecture unifies access to such services in
its enterprise service A?%s. "owever, instead of having to access these
service through proprietary or non standard interfaces, application programs
in 28-- can access these A?%s via the container.
(here is various A?% specifications in 28-- framework which enable us to
create an application at great speed with minimum effort.
A-8s )se* To 3uil* the Software
#. ',3 A-8
- 111 -
Library automation System
(he 2#:4 A?% provides developers with a way to connect to relational data
from within +ava code. Asing the 2#:4 A?%, developers can create a client
(which can be anything from an applet to an -2:) that can connect to a
database, e$ecute structured query language statements, and processes the
result of those statements. (he A?% provides connectivity and data access
across the range of relational databases. %t can do this because it provides a
set of generic database access methods for sql compliant relational
databases. 2#:4 generali.es the most common database access functions by
abstracting the vendor specific detail of particular database. (he result is set
of classes and interface, placed in the .a0a5.sql pacAa/e% which can be
used with any database that has an appropriate 2#:4 drive. (his allows 2#:4
connectivity to be provided in a consistent way for any database. %t also
means that with a little care to ensure the application confirms to the most
commonly available database features, an application can be use with a
different database simple by switching to a different 2#:4 driver. 2#:4
includes following packages for the means of database accessing and
provides various features of the database. (he packages are as follows: '
.a0a5.sql -acAa/e: "
(his package contains classes and interfaces designed with traditional
client1server in mind. %ts functionality is focused primarily on basic database
programming services such as creating connections, e$ecuting statements
and prepared statements, and running batch queries. Advanced functions
such as batch updates, scrollable result sets, transaction isolation, and sql
data types are also available.
.a0a5.sql -acAa/e: "
(his package introduces sum ma+or architectural change to 2#:4
programming compared to +ava. sql package, and provides better
abstractions for connections management, distributed transactions, and
- 11/ -
Library automation System
legacy connectivity. (his package also introduces container'managed
connection pooling, distributed transactions, and row sets.
- 116 -
Library automation System
1I1IIO(RAP-!
3OO(S

' 2ava'8 4omplete &eference ' by ?atrick =aughton
- 117 -

BIBILIO!"#$%
O
!&F&!&'(&)
Library automation System
' 2ava /wing ?rogramming ' by *P&eilly
' +ava for beginner ' by 2ason 9illiam, 4harlton
(ry, &.Allen yke
' 3/'A44-// /ql1plsql ' 3/'A44-//
' 2ava swing pro+ects ' by Apress publication.
RE"ERENCES
http7//www.sun.com
http7//www.java'.com
http7//www.serverside.com
http7//www.wschools.com
http7//www.google.com
http7//www.webopedia.com
- 11: -

You might also like