Post on 22-Nov-2014
transcript
1K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
ACKNOWLEDGEMENT
I present with pride the project “Library Management System” towards the
partial fulfillment of the requirement for the award of the Degree of Bachelor of
Computer applications of Karnataka University, Dharwad.
The satisfaction that accompanies the success of any work would be incomplete
without naming the people who made it possible, whose constant guidance and
encouragement made this task successful.
I express my sincere gratitude to our Principal Prof.S.Kotrappa who has been the
source of motivation for providing the facilities for the successful completion of the
project. He also made this monstrous task successful by providing constant inspiration,
encouragement, timely guidance and valuable solutions.
I also express my sincere gratitude to my guide Prof.S.Kotrappa who has been the
source of motivation and to guide me in this project.
I consider the encouragement of the staff members and also lab staff extended
behind the scene worth acknowledging.
Last but not the least I owe my debts to my parents, friends and all those who
directly or indirectly have helped me to make the project a success.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
2K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
ABSTRACT
The project aims at computerization process of a Library. In library, there are
multiple transactions taking place which includes adding, deleting, issuing, returning,
etc., of books/magazines among members. Computerization of these activities results in
more reliable, accurate and faster processing over manual transactions.
Study of existing manual system at the library, relieved the difficulties and
problems faced by them in issuing and receiving books. This investigation has lead to the
system analysis, design and development, testing and implementation of the proposed
system “Library Management System”, with user-friendly front end, using Java
Swings as front end and MS-Access as back end followed with rename refactoring
method.
The concept behind refactoring is improving the design of existing software code.
Refactoring doesn’t change the observable behavior of the software; it improves its
internal structure which provides menu driven user friendly software which will help the
complex activities to reduce to simple ones.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
3K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
4K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
INTRODUCTION OF PROJECT
“Library Management System” is an attempt to build software to handle the
transactions taking place in the library. There are many software’s available in the market
for library management, but our’s is quite easy and simple. The software provided helps
both the administrator as well as the members of the library to perform the transactions
easily and efficiently.
In library basically there are two types of transactions taking place: One is
searching for a book, and if it is present then issuing the book. Another is returning the
books after the member has finished using the book. Our project aims at basically
implementing these two modules so that it becomes easy both to the administrator as well
as the members of the library.
The project is implemented in ASP.NET, which is a widely used language today.
The whole data is password protected due to which it has gained highest security. We
have used MS-Access for storing the data in tables.
Each time a new member is added to the library, he is given a user-id and
password through which he can access the software, but he doesn’t have any permission
to access all the information in the software. He can only search for
the related information. Even the clerks will be provided with the id and respective
password, with which they can access the information.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
5K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
They too have permission only to access the data related to them. Only the
administrator has the full permission to access the entire software.
This helps to gain better security relating to the data.
It is fully user-friendly and menu driven software which covers most of the aspects
of library. Just with the click of the mouse the required application is activated. It is
flexible and easy to operate.
The third person who does not have more knowledge about the system can also
operates on the system by referring images which shows the user friendly pictures and
help for transaction.
The main user of the system will be somewhat literate with computers. But the new
user may not know about the computers so this software is designed even for the persons
who do not know about the computers. Just with the double click of the mouse he comes
to know about the software.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
6K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
7K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
Introduction to .Net
The foundation of the .NET Framework is the common language runtime. Its principal purpose
is to load, execute, and manage code that has been compiled to Microsoft’s new intermediate byte-
code format called Intermediate Language (IL). Several languages, notably Microsoft’s Visual
Basic .NET and C# .NET (pronounced “C sharp”), have compilers supporting this format, and many
more are currently in development. It is important to note that the IL code is not interpreted. The
common language runtime uses just-in-time compilers to compile the IL code to native binary code
before execution.
.NET Framework Class Library
The .NET Framework class library is a collection of reusable classes, or types,
that tightly integrate with the common language runtime. .NET applications benefit from
using and extending or inheriting the functionality from the classes and types available in
the class library. The class library is very hierarchical and well organized,. It starts with
the most generic classes and continues to build down to classes with very specific and
precise functionality. Although this library is extensive, its organization makes it easy to
learn and use. In an age of ever-growing technology it is refreshing to see a new
technology and a new architecture that promise a reduced learning curve. This model also
makes it easy for third-party components to be integrated easily with the existing class
library.
As expected in an object-oriented class library, the .NET Framework classes
enable developers to accomplish rapidly a wide range of common programming tasks,
including things such as string management, file access, and database connectivity. Also,
Several classes facilitate highly specialized and custom development
environments. These classes make the application development environment very
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
8K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
flexible. The following types of applications are readily supported through the .NET
Framework:
ASP.NET applications
Windows applications (Windows Forms)
Web services
For example, the Windows Forms classes are used to create Windows graphical
user interface (GUI) applications, which often are referred to as standalone applications.
This is facilitated through a series of reusable graphical interface classes. Alternatively, in
developing a Web-based application, the HTML and Web Forms classes facilitate its
rapid development. Either way the underlying framework provides the flexibility for
feature-rich applications regardless of the choice of application environment.
ASP.NET
ASP.NET is Microsoft’s upgrade to Active Server Pages (ASP).ASP.NET
architecture is very well woven into the .NET Framework to provide a powerful Event-
driven programming model. The new feature of code-behind allows true separation of
code and design. Also, you can write ASP.NET pages in any of the managed languages,
and the code is compiled to give high performance.ASP.NET is a more robust way to
bring applications to the Web. Gone are the endless lines of “spaghetti code” and with it
the ambiguous debugging.WithASP.NET, you will be able to create cross-browser, cross-
platform applications that you can port across the Web.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
9K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
Introducing the ASP.NET Architecture
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
10K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
In the ASP.NET architecture, the .NET Framework works with the OS.A Web
client requests a Web Form (ASPX) resource, which is delivered through the Internet
Information Server (IIS) combining all additional resources, which may include a
database, Web Service, COM component, or a component class. All of these are
delivered through a compiled assembly (DLL) from the Web application, which sits in
the bin directory within IIS’s Web root. See Figure 10.1 for a conceptual overview of the
ASP.NET architecture.ASP.NET includes some new file extensions for the different
types of pages you can create in your solutions. The new extensions allow ASP.NET to
sit alongside ASP 3.0 on the same server with no filename conflicts. Here is a list of the
four most commonly used extensions:
.aspx : Used for Web Forms and is the replacement for the standard .asp
Extension used in ASP 3.0.
.ascx : Used to denote a reusable page components or control
.asmx Used to denote a Web Service.
.asax Used for the Global file and is the replacement for the .asa extension.
Each of these page types can have a code-behind page where you can store
program logic. Note that using code-behind pages makes your code more modular and
helps to hide the program logic from prying eyes, because the code behind pages are not
stored individually on the server but are part of the compiled assembly (DLL).The
corresponding code-behind pages would be .aspx.vb, .ascx.vb, .asmx.vb, and .asax.vb
respectively if the project was a VB.NET project, or .aspx.cs, .ascx.cs, .asmx.cs,
and .asax.cs respectively if the project was a C# project.
Figure: Overview of ASP.NET Architecture
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
11K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
ASP.NET Server Controls
You can add two main sets of controls to your Web Form (ASPX page): HTML
server controls & Web server controls._______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
12K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
HTML server controls: Allow you to work with all the properties of the standard
HTML elements within your server-side code (in your code-behind page or in
inline server scripting on the ASPX page itself). This will expose them for all
server-side processing and for content
Delivery, which you can provide a specific style sheet to comply with NS 4 or
Opera. To provide HTML form elements with the programming power of server-
side processing, you must add at least two attributes to the tag in question.
Web server controls
A completely new set of controls designed to interact with the .NET environment
by the additional properties and events included, most notably the ability to do a
postback.The tags are XML-based, so they all appear in the same manor as XML
elements for ease of use. Web server controls are defaulted to render HTML 3.2
for cross browser compliance. Web server controls inherit the System.
Web.UI.Control namespace, which predefines their attributes.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
13K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
14K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
ANALYSIS
MANUAL SYSTEM:
System is an orderly grouping of independent components that are linked
accordingly to a plan which interact with other system to produce the output of the
system. Design is essentially the bridge between requirement specification and final
solution for satisfying the requirements.
STUDY OF THE SYSTEM:
There are many transactions in the library like a book is been searched and if it is
present then it must be issued to the member. Another activity is returning of books from
the members which have to be entered into the register which is done manually. No up-
to-date information is kept.
NEED FOR THE NEW SYSTEM:
Each time maintaining of register is a tedious job and moreover all it has to be
updated each and every time manually. Hence there is need for changing the present
system and converting it into computerized system to meet the present requirements and
to eliminate the drawbacks of the existing system.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
15K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
PROPOSED SYSTEM:
The proposed system “Library Management System” is a computerized system
with better features than the existing system. It includes the concepts of the existing
system.
The features of the proposed system are:
The proposed system is password protected which provides security to the data.
Only the authorized user can access the entire data.
It is user friendly with well defined screens and required inputs.
It is interactive and fast in execution.
Data entry is optimized using combo boxes and other graphical controlled tools.
Navigation through the forms is easy.
Display of message box depicting the various messages relating to the inputs.
Maintains detail information of books, magazines and members.
Performance tuning is easy.
Information linking and embedding between the forms and tables is present in the
system.
Duplicate information cannot be entered, if done so related messages will be
displayed.
Large number of bulky registers can be avoided.
Reduction in clerical works and better accountability.
In general, it reduces time for all the transactions taking place in the library.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
16K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
17K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
SYSTEM REQUIREMENT SPECIFICATION
In library, basically there are two types of transactions taking place. One is
issuing a book/magazine and the other is returning a book/magazine. The system to be
developed should first satisfy these two functional requirements. Our proposed system
will satisfy these two requirements completely. The members of the library may also be
involved in other transactions such as searching process, reading news papers etc. The
proposed system should satisfy these needs also. The present system, which is fully
manual, must be changed to a computerized system. All the transactions taking place in
the library system must be interlinked with each other. Whenever a new member is
created in the
library they are given their respective member numbers through which they can proceed
with the library transactions. So the proposed system should be developed, so as to
provide the members with their respective ids. The system to be developed should fully
satisfy all the requirements related to manual library.
The proposed system should be built such that, all the users who use the system
must access it easily. Only the main person or the administrator must have full access to
the system. The members and the clerks of the library must access the system only to
some extent. The software should satisfy the above constraints of the system.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
18K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
HARDWARE AND SOFTWARE SPECIFICATIONS
Hardware Specification :
o Processor : Any Pentium I, II, III 450 MHz or Higher.
o RAM : 256 MB.
o Resolution : Minimum 800 * 600 Pixels.
Software Specification :
o Operating System : Any 32 bit Windows XP Operating system.
o Front end : Visual Studio.Net
o Back end : MS-Access.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
19K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
20K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
SYSTEM DESIGN
What is UML?
The Unified Modeling Language (UML) is a standard language for specifying,
visualizing, constructing, and documenting the artifacts of software systems, as well as
for business modeling and other non-software systems. The UML represents a collection
of best engineering practices that have proven successful in the modeling of large and
complex systems. The UML is a very important part of developing objects oriented
software and the software development process. The UML uses mostly graphical
notations to express the design of software projects. Using the UML helps project teams
communicate, explore potential designs, and validate the architectural design of the
software.
Goals of UML
The primary goals in the design of the UML were:
o Provide users with a ready-to-use, expressive visual modeling language so they
can develop and exchange meaningful models.
o Provide extensibility and specialization mechanisms to extend the core concepts.
o Be independent of particular programming languages and development processes.
o Provide a formal basis for understanding the modeling language.
o Encourage the growth of the OO tools market.
o Support higher-level development concepts such as collaborations, frameworks,
patterns and components.
o Integrate best practices.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
21K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
Types of UML Diagrams:
o Use Case Diagram
o Class Diagram
o Interaction Diagrams
Sequence Diagram
Collaboration Diagram
o Statechart Diagram
o Activity Diagram
o Implementation Diagrams
Component Diagram
Deployment Diagram
.
From this simple diagram the requirements of the library system can easily be
derived. The system will need to be able to perform actions for all of the use cases
listed. As the project progresses other use cases might appear. The member might have a
need to issue a magazine when he has already been issued a book. This diagram can
easily be expanded until a complete description of the library system is derived capturing
all of the requirements that the system will need to perform. The above steps generate the
following use-case diagram.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
22K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
Use – Case diagram for library system
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
Return Books
Borrow Books
Do Search
Read Books
Circulation clerk
Member
23K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
Use-Case diagram for Book-Borrower
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
Reserve Book
Borrow copy of Book
Return copy of Book
Extend Date
Book Borrower
24K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
Class Diagrams
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
IsssueBook
Book: Panel;lbBkId, lbBkName, lbBkAuthor, lbMemId, lbBkCat, lbMemName, lbDate1,lbDate2;Label ,txtBkName,txtBookId, , txtDate1txtBkAuthor, txtBkCat, txtMemId, txtMemNameJTextFieldbtnOk, btnCan;Button St; Statementid = 0; long
MemberId = 0; intid1,imth,iyr,vdat,vmth,vyr: int idate,vdate: String
Issue Book ( )actionPerformed ( )FocusLost ( )
Issue Mag
Panel ; Book lbMagId, lbMagName,lbMagCat, lbDate1, lbMemId, lbDate2,lbMemName,: JLabeltxtMagId, txtMagName,txtMagCat,txtMemId, txtMemName,txtDate1,txtDate2: JTextFieldbtnOk, btnCan: JButtonSt: Statement memberId = 0; intidate,vdate; String id = 0; longid1,imth,iyr,vdat,vmth,vyr; int
IssueMag()actionPerformed()focusLost()
1 2 1
25
3 4
K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
Return Book
Book :Panel lbBkId, lbBkName,lbIssued:Label txtBkId, txtBkName, txtIssued:TextField urdate:String btnReturn, btnCan:JButton id1,imth,iyr,vdat,vmth,vyr,due:int st: Statementrs: ResultSet .id = 0; longmid,bc: int
ReturnBook()actionPerformed()focusLost()
Return Mag
Book :PanellbMagId,lbMagName, lbIssued: Label txtMagId, xtMagName, txtIssued: TextField urdate:String btnReturn, btnCan:
Button id1,imth,iyr,vdat,vmth,vyr,due; int Statement st;rs: ResultSetid = 0: longmid,bc: int
ReturnMag( )actionPerformed( )focusLost( )
26
6 5 7
K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
Search Mag
Book :Panel lbSearch:Label radiobutton1,radiobutton2,radiobutton3:RadioButton txtSearch:TextField btnFind, btnCan:
Buttonflag=0: intst:Statement mname,mcat,search:String mref,bmid,bid,rows=0:int table:JTable jsp:JScrollPane data1[][]:Objectc:Container
SearchMag()actionPerformed( )
Search Member
Book:Panel lbSearch :Label radiobutton1,radiobutton2:RadioButton txtSearch:TextField btnFind, btnCan:Button flag=0,rows=0: int st: Statement mname,mcat,search:String table: Table data1[][]: Object c:Container mid,bcnt: int
SearchMember( )actionPerformed( )
Search Book
Book: PanellbSearch: Label radiobutton1,radiobutton2,radiobutton3,radiobutton4: RadioButton txtSearch:TextField btnFind,btnCan: Button flag=0: intst: Statement bname,bauthor,bcat,search: String bref,bmid,bid,rows:inttable:Table sp:ScrollPane data1[][]:Object c:Container
SearchBook()actionPerformed()
27
10
11
K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
ColFine
Member Panel lbMemId, lbMemName,lbMemCat;Label txtMemId, txtMemName,txtCat;JTextField btnDel, btnCan;Button st;Statementrs;ResultSet id = 0,heldBooks;long due; int
ColFine( )actionPerformed( )focusLost( )
Table Disp
book:Panelscroller: ScrollPanetable : Table
TableDisp( )
LibraryHelp
String sViewport vpCursor cURL url
LibraryHelp()run ()hyperlinkUpdate()HtmlPane( )linkActivated( )
AboutusFrame
String sViewport vpCursor cURL url
AboutusFrame()run ()hyperlinkUpdate()HtmlPane1( )linkActivated( )
RulesFrame
String sViewport vpCursor cURL url
RulesFrame()run ()hyperlinkUpdate()HtmlPane1( )linkActivated( )
8 9
12
28K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
Class diagram for Library Management System
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
Library System
bar;MenuBar mnuFile, mnuEdit, mnuOpt, mnuWin, mnuHelp;Menu newBk, newMem,newMag,end; issueBk, returnBk, ,returnMag,delBk, delMem,delMag, delClerk, issueMagfindBk, findMem,findMag,memleave; change, close, closeAll: keyHelp,makeUser,addBCat,addMCat,addMagCat; about; MenuItempopMenu :PopupMenu popadd,popdel,popir,popsea;Menu book,member,mag,pdelbk,pdelme,pdelmag,issue,bkReturn,issuemag,magReturn,pdelck, find,findm,findmag;btnNewBk, btnNewMem, btnNewMag, btnIssue, btnReturn,btnIssuemag,btnReturnmag , btnDelBk, ,btnDelMag,btnFindBk, btnFindMem, btnFindMag, btnKey; btnDelMem ,statusBar :JPanel;lbStatus,lbWelcome;Labelst;StatementuserName;String
LibrarySystem( )addMouseListener( )quitApp ( )actionPerformed( )
Logon
fl=1: intLog :PanellbUser, lbPass:LabeltxtUser:TextField txtPass:PasswordField btnOk, btnCan; Buttonradmin,rclerk,rmem;
RadioButton con; Connectionuser;String
Logon ( )actionPerformed( )
9
2
5
7
1
10
4
86
3
11
12
29K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
Sequence Diagram for Issue Book
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
Member Admin/Clerk Database
Request Book
Request Book name
check Book avail
Book avail
Request Member Id
Verify Member Id
Member Id exits
Issue Book
Update Database
Enter MemberId
Enter Book Name
30K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
Sequence Diagram for Return Book
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
31K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
Collaboration diagram
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
Member Admin/Clerk Database
Request to return Book
Request Bookname
updates book database
Request Member Id
Updates Member Database
Returns Book
UpdateDatabase
Enter MemberId
Enter Book Name
32K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
Activity Diagram to issue book
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
Member
Library System
Admin/clerk
Database
1: login
2:verify login4: Request Kind
3: Admin login
5: Update Database
6: exit database
33K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
Admin/Clerk
Enter Username
Enter Password
Database
Validate Password
Request Book
Valid
Unveil
check book Avail
Avail
Display msg
Issue BookTake Book
Update Database
Quit Library SystemRequest to Quit
Invalid
Member
34K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
TABLE DESIGN
Users Table:-
Field Name Data Type
Username Text
Password Text
Add Author Table:-
Field Name Data Type
IDno Number
AuthorName Text
Add Category Table:-
Field Name Data Type
Category Name Text
Add Publisher Table:-
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
PublisherName Text
35K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
Add Remove Books Table:-
RegisterNo Number
BookTitle Text
Author Text
AvailableQty Number
Category Text
Publisher Text
Student Master Table:-
RollNo Number
FullName Text
Dateofjoin Date/Time
Class Text
Branch Text
College Text
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
36K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
Transaction Table:-
RollNo Number
RegisterNo Number
Name Text
Bookname Text
Qty Number
IssueofQty Number
Status Yes/No
DateofIssue Date/Time
College Text
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
37K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
38K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
IMPLEMENTATION
The implementation phase is the process of converting a new system design into
the operational one. The main steps include installing the software on the system,
installing Visual Studio.Net, installing Microsoft Access, installing DHTML, ODBC
driver for Access Database and using rename method for refactoring the existing source
code.
Refactoring is a disciplined technique for restructuring an existing body of code,
altering its internal structure without changing its external behavior. Its heart is a series of
small behavior preserving transformations. Each transformation (called a 'refactoring')
does little, but a sequence of transformations can produce a significant restructuring.
Since each refactoring is small, it's less likely to go wrong. The system is also kept fully
working after each small refactoring; reducing the chances that a system can get seriously
broken during the restructuring, by this the user will also find the code very easy.
In our system development we used parallel implementation method. In this method
for a certain period the old manual system is operated along with the new computerized
system. After the users satisfaction about the performance of the new system they will
discontinue the old manual system.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
39K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
MICROSOFT ACCESS
It is powerful semi RDBMS software developed by Microsoft Corporation.
Database design development is very easy in MS-Access as it provides GUI based
environment. Backup and restoring is easy in MS-Access, since the whole database is
stored in single database.
A database is a collection of information that’s related to a particular subject or
purpose, such as tracking customer orders or maintaining a music collection. If your
database isn’t stored on a computer, or only parts of it are stored, you may be tracking
information from a variety of sources that you have to co-ordinate and organize yourself.
This information is stored in a very structured manner. By exploiting this known
structure, we can access and modify the information quickly and correctly.
It allows you to make data available on the internet or an intranet for interactive
reporting, data entry, analysis or to use a data access page. Microsoft Access retrieves the
data from one or more tables and displays it on the screen with the layout you choose for
the page, or the layout you create from scratch Users can interact with data by using the
features on the data access page. You can create web pages that you can use to add, edit,
view or manipulate current data in a Microsoft Access Database. It provides tight security
for the database to protect data from unauthorized user access. It provides different
techniques at different levels. The simplest method of protection is to set a password for
opening a Microsoft Access database. To further protect the data you can encrypt it.
Encrypting a database compacts the database file and makes it indecipherable by a utility
program or a word processor.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
40K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
You can keep authorization checks. Especially when working in multi user
environment. It is used to provide different data access to different user’s working at
different levels. The most flexible and extensive method of securing a database is
user level security. This form of security is similar to methods used when you go online
and purchase some products; you are accessing the web merchant’s product database.
You can surely think of many more places where databases enter your life. The
idea is that they are everywhere. And each database requires some way for the user to
interact with the information within. Using Microsoft Access you can manage all your
information from a single database file. Within your file divide your data by using online
forms, find and retrieve just the data you want by queries, and analyze the database’s data
from the internet or an intranet by creating data access pages.
Access comes with wizards and variety of predefined data elements that lets you
keep track of some common information with only a few clicks of your mouse. Access is
Relational Database, which means that it allows data that has been stored in different
places to be linked.
Access helps to manage information in three important ways:
o Reduces redundancy.
o Facilitates the sharing of information.
o Keeps the data accurate.
Access wizard can help to create:
o Queries
o Tables
o Forms
o Reports
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
41K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
o Macros
o Mailing Labels
o Modules
o Controls and buttons
Database: A database is simply a collection of useful data.
Tables: In access tables are similar collection of data. There may be many tables in the
database, all these tables would be organized differently and contain mostly different
information but they all be in the same database file and may relate to one another. These
tables are stored in the same database file because they are often used together to create
reports.
Records: A record is all the information contained in one row of an access datasheet
table.
Fields: fields are places in the table where you store individual chunks of information.
Access users key fields and indexing to help many database operations. You can tell
access which fields should be key fields or Access can assign them automatically.
Queries: Queries are requested to access for information and response to it is called as
dynaset.
Forms: Forms are on screen arrangement that makes it easy to enter and read data.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
42K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
Macros: A particular operation, such as Macros are tools that help automate complex or
time consuming repetitive manual tasks. A macro is a set of one or more actions that each
performs opening a form or printing a report. Macros can help you to automate common
tasks. For example, you can run a macro that prints a report when a user clicks a
command button. You can also use a conditional expression to determine whether an
action will be carried out when a macro runs in some cases.
Features of MS-Access:-
o GUI based environment.
o Supports almost all types of SQL statements.
o Data security by providing encryption/password.
o Very easy to understand and work with.
o Provides various properties for tables to improve performances.
o Provides various objects such as tables, queries, forms, reports, macros and
modules.
-: DATABASE CONNECTIVITY:-
In database connectivity we are going to use MS Access.
In VB.net tool Connection there is OleDb Connection Provider.
In this OleDb Connection Provider you select a MS Jet4.0 OleDb Connection
Provider and say next.
The Connection it asks the path of the data base which is you done in MS
Access.
There is a Test connection you ckick on that it will test click ok.
Then your DataBase is connected to your backend database.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
43K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
REFACTORING
"Refactoring is the process of changing a software system in such a way that it
does not alter the external behavior of the code yet improves its internal structure."
Refactoring is a disciplined technique of restructuring your existing body of code by
altering its internal structure without changing its external behavior.
The methods of refactoring the source code follows:
Renaming fields, methods, classes, or packages
Moving classes
Extract interface/super class
Pull up, push down method
Inline method
Extract method
Move method
Convert nested to top-level class
So to refactor the Library System I went with the Rename method. Renaming
fields is easy. For example, let's change the name of the awkward firstPlusSecond field to
result. This is how rename method is done for the existing source code. Further you will
get to see how it works.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
44K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
Rename refactoring:-
Rename refactoring apply a new name to a package, class, inner class, interface,
method, field, local variable, or property, ensuring that all references to that name are
correctly handled. Rename refactoring a constructor renames the class.
Rename refactoring is far more than a search and replace task; references must be
accounted for and properly handled while patterns must be recognized. For example,
when a rename refactoring is performed on a class name, the new name of the class must
be reflected in the class declaration, in the declaration of the constructor, and in every
instance of that class and every other reference to that class.
Source code can be renamed in following places:-
"Renaming a class, inner class or interface"
"Renaming a method"
"Renaming a local variable"
"Renaming a field"
Renaming a class, inner class, or interface:-
Rename refactor for an outer public class renames all declarations of and all
usages of the class and the source file. If you select a constructor, the rename refactoring
renames the class.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
45K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
Renaming a method:-
Rename refactoring a method renames the method, all declarations of that
method, and all usages of that method. The method can be renamed from the selected
class down in the hierarchy or in the entire hierarchy. A forwarding method that passes
on the method call to the new method can be created. This allows your public API
to remain intact.
The name of a method does not reveal its purpose.
Change the name of the method.
Renaming a local variable:-
A local variable rename refactoring renames the declaration and usages of that
variable to the new name. Note that a method parameter is treated as a local variable.
Renaming a field:-
A field renames refactoring renames the declarations and usages of that field to
the new name.
Advantage of using Refactoring is:-
Improving the code's elgibility and maintainability.
Making your source code more portable and reusable.
Implementing a design change due to a new software feature.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
46K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
47K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
SNAPSHOTS
LOGIN FORM:-
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
48K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
ACTION FORM:-
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
49K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
ADD REMOVE BOOKS FORM:-
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
50K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
51K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
BOOKS ISSUE FORM:-
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
52K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
53K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
RETURN BOOK FORM:-
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
54K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
55K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
SEARCH BOOKS FORM:-
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
56K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
STUDENT REGISTERATION FORM:-
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
57K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
58K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
59K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
TESTING
Unit Testing:
Unit testing is the first phase of testing that was done after the completion of each
and every module. This was performed on the software by checking syntax of the
program. The module interface was tested to ensure that information properly flows in
and out of particular module. The local data structure was examined to ensure that the
data stored temporarily maintains its integrity during all steps of program execution.
Boundary conditions were checked.
Integration Testing:
Integration testing is s systematic technique for constructing this program
structure while at the same time conducting tests to uncover errors associated with
interfacing. Objective of integration testing is to take unit-tested modules and build a
program structure that has been dictated by design, generally involves a comprehensive
exploration of the way in which the software executes the various functions for which it
was designed.
Validation Testing:
Validation testing is the next to last phase and is a final series of software testing
begins at the culmination of integration testing. Software developed is completely
assembled as a package, and interfacing errors have been uncovered and corrected.
Configuration review is done to ensure that all the elements of the software have been
properly developed and cataloged and have necessary details to support the maintenance
phase of the software.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
60K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
System Testing:
This is the last phase of testing followed were in the developed software was
incorporated with other system elements such as new hardware, information and a series
of system integration and validation test were conducted, Primary purpose of system
testing is to fully exercise the computer based systems.
Debugging:
Debugging occurs as consequences of successful testing i.e., when a test case
uncovers an error, debugging is the process that results in the removal of that error. The
results of testing are assessed and lack of correspondence between the expected and
actual outcome is encountered. The debugging process attempts to match symptom with
cause, thereby leading to error correction. Debugging methods followed were forward
tracking, backward tracking and by using the response. Write statements to output the
values of key variables.
The following test cases are satisfied in this project:
Provide null values, numeric and non-numeric values to verify data inputs and
validations. Checking for conversion errors such as numeric to non-numeric and
vice versa.
The user should provide all information for any transaction. If it is not provided
the appropriate message is to be displayed.
The primary key and unique constraint violation verification.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
61K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
62K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
CONCLUSION
The intended goal of the project was to develop Library System for a library using
Visual Studio.Net as front end and MS-Access as the back end and also by applying
Rename method for Refactoring. This goal is achieved as it is found that doing daily
library transactions using this software reduces complicated paperwork, and later it is
possible to upgrade it for any other library according to their requirements by changing
the size of the data base and some functions.
The library system incorporates standard user interface with menu driven interface
and several message boxes. The automation has led to the auto generation of the Member
id and Book id .This module gives search options wherein the user can perform the
search operation using different fields. This module is more secured because the system
allows only authorizing person to operate fully. Library system also gives the book
details and magazine details in one of their modules which lead for the proper flow of
database.
This project has also helped me sharpen my technical programming skills along
with better understanding of the flow of program and interface designing. On the whole
the project has been a great learning experience.
New system includes the present requirements of the library system. If needed in
future necessary updations can be made to the software without much difficulty. The tool
developed may be generalized for any other library. The system can be developed for
online transactions of library wherein all books can be available online to the user.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
63K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
64K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
FUTURE SCOPE
When software developers add new features to a program, the code degrades
because the original program was not designed with the extra features in mind. This
problem can be solved by rewriting the existing code and working around the problems
which arise when adding the new features.
New system includes the present requirements of the library system. If needed in
the future necessary updations can be made to the software without much difficulty. The
tool developed may be generalized for any other library. The system can be developed for
online transactions of library wherein all books can be available online to the users.
The software developed can also be build using this Aspect-Oriented technology.
We can use aspectJ language, which is an aspect-oriented extension to the Java language.
There may be some difficulties in cross-cutting modules using the Object-Oriented
Programming. But if we use the Aspect-Oriented Programming features those difficulties
can be overcomed.
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
65K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
66K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
BIBLIOGRAPHY
Books:
Microsoft Visual Studio.Net
Mastering MS-Access
- Evengelos
UML User Guide
- Grady Booch, Jacobson & Rumbaugh.
Websites:
http://www.Microsoft visualstudio.net.com
http://www.Microsoft Access.com
http://www.DHTML.com
http://www.refactoring.com
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008
67K.L.E’s B.C.A LIBRARY MANAGEMENT SYSTEM
_______________________________________________________________________
K.L.E.Society’s College of Bachelor of Computer ApplicationR.L.Science Institute, Belgaum 2007-2008