A Project Report on

LIBRARY MANAGEMENT SYSTEM
Submitted in partial fulfillment of the requirements for the award of
MASTER IN COMPUTER APPLICATION

Submitted by ARVIND KUMAR Enrolment No. 9501004407

Under the guidance of Mr Sandeep Chauchan

i

Declaration
I hereby declare that this project entitled ³Library Management System´ submitted by me to the ³ICFAI´ for the course of Master in Computer Application" is an original and independent work carried out by me under the guidance of Mr Sandeep Chauhan.

Submitted by Arvind Kumar Enrolment No. 9501004407

ii

ACKNOWLEDGEMENT
The enduring pages of the work are the cumulative sequence of extensive guidance and arduous work. I wish to acknowledge and express my personal gratitude to all those without whom this project could not have been reality. I feel very delighted to get this rare opportunity to show my profound senses of reverence and indebtedness to my beloved wife Anju Parmar for her constant source of encouragement and cheer all long in achieving my goal. I would like to give my sincere thanks to my project guide Mr. Sandeep Chauhan for the guidance, inspiration and constructive suggestions and Mrs. Prerna Malik for spending their precious time with me to clarify my doubts regarding project. At last I would like to thanks all those who have directly or indirectly helped and cooperated in accomplishing this Project.

iii

Title: Library Management System Name: Arvind Kumar Reg.No: 9501004407

ABSTRACT Library Management System is the system that gives to the Users/Librarian the best monitoring and controlling the transactions in a library. The Java technologies have been developed in such a manner that they can provide good services to the users. The Library Management System is a Java based application which has been developed and based on Swing concept and for the database, Microsoft Access 2007 is used for the backend. The Library Management System is the system that not only monitoring and controlling the transactions in a library but also it gives the complete information about the members of the library, available books, title of book, price of book and their authors. The user interface is made very easy for the administrator, librarian as well as for users. For the controlling and security purpose different restrictions are imposed for accessing the library management system. Only administrator has given the authority to create users. As and when the user is created by the administrator, user can login the system by their user id. , and default password and change their password thereafter. This software is easy to use for both beginners and advanced users. It features a familiar and well thought-out, an attractive user interface, combined with searching Insertion and reporting capabilities. The report generation facility of library system helps to get a good ideas of which are the books borrowed by the members and complete information of members. The person who wants to get issued the book has to login and can have the information about the available books then he can get the reservation/issue. If the issue or reservation is done by the member a dialog box show the book is issued or book is reserved otherwise it show that the particular is already issued. The book is issue for the 21 days; defaulters are to pay the fine 1 Rs. per day.

Headquarters Eastern Naval Command (DEPARTMENT OF INFORMATION TECHNOLOGY) Command Information Technology Centre

hi i t certi

that Arvi d Kumar.

.

i a st

ent of raining

MCA from ICFAI (Instit te/ ni ersit ) has carried out his project at

Di ision, CI C, Visakhapatnam, from 16 Aug to 14 Sep. he project work entitled
³Library Management System´ embodies the original work done by Arvind

Kumar during his above full project training period and this project is executed and

run in the Central Reference Library (Unit Library of Defence Division) ,found successfully.

Director Training Division

(v LIST OF ILLUSTRATIONS Figure 2.1: Use Case Diagram for Administrator & Librarian Figure 2.2: Use Case Diagram for Users Figure 3.1: Sequential Diagram Figure 3.2: State Chart Diagram Figure 3.3: Activity Diagram Figure 4.1: ER Diagram Figure 4.2: Context Level DFD Figure 4.3: First Level DFD for Login Subsystem Figure 4.4: Change Password Subsystem Relational Database Schema Tables Table 1: admin Table2: bk Table3: bksearch Table4: userdata Table5: userpasswrd 25 25 28 29 30 34 35 35 36

37 37 38 38 38

TABLE OF CONTENTS PAGE NO Declaration Acknowle gement Abstract Company certificate List of Illustrations 1. INTRODUCTION 1.1 Introduction to Project 1.2 Introduction to Module 1.3 Introduction to Front-End 1.4 Introduction to Back-End 1.5 Introduction to UML 2. REQUIREMENT ELICITATION 2.1 Introduction 2.2 Current system 2.3 Drawbacks of Present System 2.4 User Requirement 2.5 Performance of the proposed System 2.6 Alternative Solutions Examined 2.7 Cost Benefit Analysis 2.8 Proposed System 2.9 System Requirement Specification 2.10 System Model 2.11 Technical Dictionary 3 SYSTEM ANALYSIS 3.1. Object Model 3.2. Dynamic Model 3.2.1. Sequence Diagram 3.2.2. State Chart Diagram 3.2.3. Activity Diagram 4. SYSTEM DESIGN 4.1 Introduction i ii iii iv v 1 1 1 7 10 12 13 13 13 14 15 15 15 16 16 17 21 26 26 27 28 28 29 30 31 31

4.2 Mapping Sub System 4.3 System Design Goal 4.4 Global Control Flow 4.5 Automation Boundary 4.6 Design Diagram 4.6.1 ER Diagram 4.6.2 Data Flow Diagram 5 6 Data Base Design Testing 6.1 Testing concepts 6.2 Test Cases 7 8 9 Conclusion BIBLIOGRAPHY APPENDIX Screen Detail Coding

31 32 33 33 33 33 35 36 38 39 42 43 44 45

1. INTRODUCTION 1.1 Intro uction to project: The project titled Library Management System is Library management software for monitoring and controlling the transactions in a library. The project ³Library Management System´ is developed in java and back end database used is Microsoft Access 2003, which mainly focuses on basic operations in a library like adding new member, new books, and updating new information, searching books, popping up member's table, writing off old books, delete users, members and facility to borrow and return books. ³Library Management System´ is a windows application written for 32-bit Windows operating systems, designed to help users maintain and organize library. This software is easy to use for both beginners and advanced users. It features a familiar and well thought-out, an attractive user interface, combined with searching Insertion and reporting capabilities. The report generation facility of library system helps to get a good ideas of which are the books borrowed by the members. 1.2 Intro uctions to Mo ules: Consists of the following Modules: 1. Member Management 2. Book Management 3. Transaction 1. MODULE I: MEMBER MANAGEMENT (a) Sub-module1: creatusers() DESCRIPTION: This sub module is the user entry module to add the detail of the student / User and for the security reason this can be edited and updated by the administer or staff login authorized member, this module has the following details to update 1. UserId: in this text field users will fill the user id of their choice. UserId will require for initially login for member login. For member login Password is also required that is a default password creflib is used. User can change the password of their choice. 2. UserName: This field holds the User Name. 3. Gender : Gender of User (Male/Female 4. Department: Students have different department i.e. Biology, Physics, Math etc. This field is filled with the department.

2

5. Course: Which course the student opt for is punched in this text field; 6. Semester: Student's semester OUTPUTS: A Record is created in the following table in data base. (i (ii userdata. usernpasswd. in this table username and default password creflib is recorded.

ALGORITHM: The various student details including the UserID, Name, Gender, Department, Course and Semester are taken as input to create a record in database. (b) Sub-module 2: ListMembers() DESCRIPTION: This module is used to display the list of all member and their details. OUTPUT: Output is shown in the form of Table that has the following columns with detail of members. 1. UserId 2. UserName 3. Gender 4. Department 5. Course 6. Semister ALGORITHM: 1. Connecting this module to database through ODBC driver. 2. Read the contents from the userdata table in database. 3. Display the contents of the data base in table format. (c) Sub-module 3: DeleteAccout() DESCRIPTION: This module is used to delete a member's account and his information from the userdata and usernpasswd table in database. INPUT: Enter the UserId of the student or member whose details are to be deleted.

3

OUTPUT: The deleted UserId is displayed in popup dialog box and the particular records of the user is deleted from the database, if the filled User Id does not match with the database record then it show the message User Id does not exist ALGORITHM: 1. The UserId filled by the student whose account is to be deleted is obtained from the module and this UserId is matched with Userdetail table from the data base, if the UseId is matched then this specific record is deleted. 2. The changes in the file are saved. 3. The deleted roll number is displayed. 2. MODULE II: BOOK MANAGEMENT (a) Sub-module 1: NewBook() DESCRIPTION: This sub-module add the book details. Each entry has the following attributes: 1. Book Id No. : This is the ISBN or Library allotted No. that is to be put for the reference of books and for the search of a particular book. 2. Book Name: Book name and title 3. Book Author: Writer of book 4. SUB/ CATEGORY: This is Combo Box, where some category are predefined (Management, Computer, General, Magazine .This Combo Box is editable so that other than predefined categories, user can put other subject or Categories also. OUTPUT: When the update button is pressed a record is added to the book database, if the Book Name and Author Field left empty then it show the error showing ³Please enter the Book Details" and as all the field is filled correctly then it show the message "Book Added". ALGORITHM: The various details of the book such as the Title, Author, Sub/Cat and Edition are obtained from the module and updated in the book database. (b) Sub-module 2: ListBook() DESCRIPTION: Library contain a thousand of books so it is important to display the books those are currently available in the library so this module is developed to display the book details and apart from the book detail it also display the availability of book, if book is not available then it show the username to whom this book is issued.

4

OUTPUT: Output is shown in the form of Table that has the following columns with detail of books. 1. Book Id No. : This is the ISBN or Library allotted No. 2. Book Name: Book's name and title 3. Book Author: writer of the book 4. Sub/Category 5. Issued to: If the book is issue then it show the User Id to whom this particular book is issued 6. Status: Status show the availability of the books whether the particular book is available or not. If the book is available then status is set '0' and if not available then status is set '1'. ALGORITHM: 1. Connect this module to database through ODBC driver. 2. Read the contents from the bk table in database. 3. Display the contents of the data base in table format and if the data is more than the allotted space, a scroll bar is added to scroll the books. (c) Sub-module 3: SearchBook() DESCRIPTION: Library having a thousand of books so it is very difficult to find the particular book hence it become necessary to introduce a module to search the book details on the base of their - Title: Book's name or their title - Author: writer of the books - Category: subject or category of books - Book ID: Book's ISBN or Library allotted number (Often this is used by the librarians or administrator to search the book OUTPUT: Output is shown in the table format having following attributes: -BookId -Book Name -Category -Author -Availability

5

ALGORITHM: 1. Particular Key Field is matched with the data base table 2. If the field is matched with the record then it will be displayed in the table format otherwise it will pop up the message ³No record found´.

(d) Sub-module 4: DeleteBook() DESCRIPTION: This module is used to delete the book¶s detail from the record. INPUT: Enter the BookId of the book whose details are to be deleted. OUTPUT: The deleted BookId is displayed and the record is deleted. ALGORITHM: 1. The BookId of the student whose detail is to be deleted is obtained from the bk table form database. 2. The details of the Book are deleted. 3. The changes in the file are saved. 4. The deleted BookId is displayed. 3. MODULE III: TRANSACTION (a) Sub-module 1: issue() DESCRIPTION: This module is used to issue a book to a student. INPUT: 1. Members ID No 2. Book ID No OUTPUT: 1. Book Issued 2. Change in database ALGORITHM: On valid entry of the Member ID No. and Book ID No., the book ID No is flagged in the database (so that flagged book cannot be issued again and necessary changes made in the userdata table.

6

VALIDATION: 1. To check the validity of the Member ID No 2. To check the validity of the Book ID No. 3. To check if the number hasn¶t exceeded the total number of tokens available for each student. ERROR HANDLING: Rejects the issue request on the failure of any one of the above validation criteria. (b) Sub-module 2: return() DESCRIPTION: This module enables the student to return the issued book. INPUT: 1. Members ID No 2. Book ID No OUTPUT: 1. Book returned 2. Change in database ALGORITHM: On valid entry of the Member ID No. and Book ID No., the flagged book ID No is removed from database (so that flagged book can be issued again and necessary changes made in the userdata table. VALIDATION: 1. To check the validity of the Member ID No 2. To check the validity of the Book ID No. ERROR HANDLING: Rejects the issue request on the failure of any one of the above validation criteria. Sub-module 2: reservebook() DESCRIPTION: This module enables the student to reserve the book. INPUT: 1. Members ID No 2. Book ID No

7

OUTPUT: 1. Book Reserved 2. Change in database ALGORITHM: On valid entry of the Member ID No. and Book ID No., the particular book is flagged (so that flagged book can be reserved and necessary changes made in the userdata table. Reports Generation: (1 No of Books available (2 Issued Books (3 Individual List of Books (4 No of User¶s list 1.3 Intro uction to Front En JAVA Intro uction Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer lowlevel facilities. Java applications are typically compiled to bytecode (class file that can run on any Java Virtual Machine (JVM regardless of computer architecture. History James Gosling initiated the Java language project in June 1991 for use in one of his many set-top box projects. Gosling aimed to implement a virtual machine and a language that had a familiar C/C++ style of notation. Sun released the first public implementation as Java 1.0 in 1995. It promised "Write Once, Run Anywhere" (WORA , providing no-cost run-times on popular platforms. Fairly secure and featuring configurable security, it allowed networkand file-access restrictions. Major web browsers soon incorporated the ability to run Java applets within web pages, and Java quickly became popular. Principles There were five primary goals in the creation of the Java language: 1. It should be "simple, object oriented and familiar". 2. It should be "robust and secure". 3. It should be "architecture neutral and portable". 4. It should execute with "high performance". 5. It should be "interpreted, threaded, and dynamic".

8

Java Platform One characteristic of Java is portability, which means that computer programs written in the Java language must run similarly on any supported hardware/operating-system platform. This is achieved by compiling the Java language code to an intermediate representation called Java bytecode, instead of directly to platform-specific machine code. Java bytecode instructions are analogous to machine code, but are intended to be interpreted by a virtual machine (VM written specifically for the host hardware. End-users commonly use a Java Runtime Environment (JRE installed on their own machine for standalone Java applications, or in a Web browser for Java applets. Automatic memory management Java uses an automatic garbage collector to manage memory in the object lifecycle. The programmer determines when objects are created, and the Java runtime is responsible for recovering the memory once objects are no longer in use. Once no references to an object remain, the unreachable memory becomes eligible to be freed automatically by the garbage collector. One of the ideas behind Java's automatic memory management model is that programmers be spared the burden of having to perform manual memory management. Syntax The syntax of Java is largely derived from C++. Unlike C++, which combines the syntax for structured, generic, and object-oriented programming, Java was built almost exclusively as an object oriented language. All code is written inside a class and everything is an object, with the exception of the intrinsic data types (ordinal and real numbers, boolean values, and characters , which are not classes for performance reasons. Java uses the same commenting methods as C++. There are two different styles of comment: a single line style marked with two forward slashes, and a multiple line style opened with a forward slash asterisk (/* and closed with an asterisk forward slash (*/ . SWING Intro uction Swing is a widget toolkit for Java. It is part of Sun Microsystems' Java Foundation Classes (JFC ² an API for providing a graphical user interface (GUI for Java programs. Swing was developed to provide a more sophisticated set of GUI components than the earlier Abstract Window Toolkit. Swing provides a native look and feel that emulates the look and feel of several platforms, and also supports a pluggable look and feel that allows applications to have a look and feel unrelated to the underlying platform. History The Internet Foundation Classes (IFC were a graphics library for Java originally developed by Netscape Communications Corporation and first released on December 16,

9

1996. On April 2, 1997, Sun Microsystems and Netscape Communications Corporation announced their intention to incorporate IFC with other technologies to form the Java Foundation Classes. Swing introduced a mechanism that allowed the look and feel of every component in an application to be altered without making substantial changes to the application code. The introduction of support for a pluggable look and feel allows Swing components to emulate the appearance of native components while still retaining the benefits of platform independence. This feature also makes it easy to make an application written in Swing look very different from native programs if desired. Originally distributed as a separately downloadable library, Swing has been included as part of the Java Standard Edition since release 1.2. The Swing classes and components are contained in the javax.swing package hierarchy. Architecture Swing is a platform-independent, Model-View-Controller GUI framework for Java. It follows a single-threaded programming model, and possesses the following traits: Foun ations Platform in epen ence Swing is platform independent both in terms of its expression (Java and its implementation (non-native universal rendering of widgets . Extensibility Swing is a highly partitioned architecture, which allows for the "plugging" of various custom implementations of specified framework interfaces: Users can provide their own custom implementation(s of these components to override the default implementations. In general, Swing users can extend the framework by extending existing (framework classes and/or providing alternative implementations of core components. Component-oriente Swing is a component-based framework. The distinction between

objects and components is a fairly subtle point: concisely, a component is a well-behaved object with a known/specified characteristic pattern of behavior. Swing objects asynchronously fire events, have "bound" properties, and respond to a well-known set of commands (specific to the component. Specifically, Swing components are Java Beans components, compliant with the Java Beans Component Architecture specifications. Customizable Given the programmatic rendering model of the Swing framework, fine control over the details of rendering of a component is possible in Swing. As a general pattern, the visual representation of a Swing component is a composition of a standard set of elements, such as a "border", "inset", decorations, etc. Typically, users will programmatically customize a standard Swing component (such as a JTable by assigning specific Borders, Colors, Backgrounds, opacities, etc., as the properties of that component. The core

10

component will then use these property (settings to determine the appropriate renderers to use in painting its various aspects. However, it is also completely possible to create unique GUI controls with highly customized visual representation. Configurable Swing's heavy reliance on runtime mechanisms and indirect composition patterns allows it to respond at runtime to fundamental changes in its settings. For example, a Swing-based application can change its look and feel at runtime. Further, users can provide their own look and feel implementation, which allows for uniform changes in the look and feel of existing Swing applications without any programmatic change to the application code. Lightweight UI Swing's configurability is a result of a choice not to use the native host OS's GUI controls for displaying itself. Swing "paints" its controls programmatically through the use of Java 2D APIs, rather than calling into a native user interface toolkit. Thus, a Swing component does not have a corresponding native OS GUI component, and is free to render itself in any way that is possible with the underlying graphics APIs. Look an feel Swing allows one to specialize the look and feel of widgets, by modifying the default (via runtime parameters , deriving from an existing one, by creating one from scratch, or, beginning with J2SE 5.0, by using the skinnable synth Look and Feel, which is configured with an XML property file. The look and feel can be changed at runtime, and early demonstrations of Swing frequently provided a way to do this. 1.4 Intro uction to Back En MS ± ACCESS Intro uction Microsoft Office Access, previously known as Microsoft Access, is a relational database management system from Microsoft that combines the relational Microsoft Jet Database Engine with a graphical user interface and software development tools. It is a member of the Microsoft Office suite of applications and is included in the Professional and higher versions for Windows and also sold separately. Access stores data in its own format based on the Access Jet Database Engine. It can also import or link directly to data stored in other Access databases, Excel, SharePoint lists, text, XML, Outlook, HTML, dBase, Paradox, Lotus 1-2-3, or any ODBC-compliant data container including Microsoft SQL Server, Oracle, MySQL and PostgreSQL. Software developers and data architects can use it to develop application software and non-programmer "power users" can use it to build simple applications.

11

Features Users can create tables, queries, forms and reports, and connect them together with macros. The original concept of Access was for end users to be able to ³access´ data from any source. Other uses include: the import and export of data to many formats incl ding u Excel, Outlook, ASCII, dBase, Paradox, FoxPro, SQL Server, Oracle, ODBC, etc. It also has the ability to link to data in its existing location and use it for viewing, querying, editing, and reporting. This allows the existing data to change and the Access platform to always use the latest data. It can perform heterogeneous joins between data sets stored across different platforms. Access is often used by people downloading data from enterprise level databases for manipulation, analysis, and reporting locally. There is also the Jet Database format (MDB or ACCDB in Access 2007 which can contain the application and data in one file. This makes it very convenient to distribute the entire application to another user, who can run it in disconnected environments. Microsoft Access offers parameterized queries. These queries and Access tables can be referenced from other programs like VB6 and .NET through DAO or ADO. From Microsoft Access, VBA can reference parameterized stored procedures via ADO. The desktop editions of Microsoft SQL Server can be used with Access as an alternative to the Jet Database Engine. This support started with MSDE (Microsoft SQL Server Desktop Engine , a scaled down version of Microsoft SQL Server 2000, and continues with the SQL Server Express versions of SQL Server 2005 and 2008. Microsoft Access is a file server-based database. Unlike client-server relational database management systems (RDBMS , Microsoft Access does not implement database triggers, stored procedures, or transaction logging. Protection Microsoft Access offers several ways to secure the application while allowing users to remain productive. The most basic is a database password. Once entered, the user has full control of all the database objects. This is a relatively weak form of protection which can be easily cracked. A higher level of protection is the use of workgroup security requiring a user name and password. Users and groups can be specified along with their rights at the object type or individual object level. Databases can also be encrypted. The ACCDB format offers significantly advanced encryption from previous versions.

12

1.5 Intro uction to UML UNIFIED MODELING LANGUAGE (UML) The Unified Modeling LanguageŒ (UMLŒ is the industry-standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems. It simplifies the complex process of software design, creating a "blueprint" for construction. UML stands for Unified Modeling Language. This object-oriented system of notation has evolved from the work of Grady Brooch, James Rum Baugh, Ivar Jacobson, and the Rational Software Corporation. These renowned computer scientists fused their respective technologies into a single, standardized model. Today, UML is accepted by the Object Management Group (OMG as the standard for modeling object oriented. While UML was designed to specify, visualize, construct, and document software-intensive systems, UML is not restricted to modeling software. UML has its strengths at higher, more architectural levels and has been used for modeling hardware (engineering systems and is commonly used for business process modeling, systems engineering modeling, and representing organizational structure. It is now an international standard: ISO/IEC 19501:2005 Information technology -- Open Distributed Processing -Unified Modeling Language (UML Version 1.4.2" Mo eling: It is important to distinguish between the UML model and the set of diagrams of a system. A diagram is a partial graphical representation of a system's model. The model also contains a "semantic backplane" ² textual documentation such as written use cases that drive the model elements and diagrams. There are three prominent parts of a system's model: Structure Diagrams emphasize what things must be in the system being modeled. They are the components of the object model: Behaviour Diagrams emphasize what must happen in the system being modeled. They are the components of the functional model: Interaction Diagrams, a subset of behavior diagrams, emphasize the flow of control and data among the things in the system being modeled. They are the components of the dynamic model:

13

In our application, we are going to use the class diagram in structural model, the use case diagrams in the behavioral model and the sequence and collaboration diagrams in the dynamic model. Class Diagrams:Class diagrams are the backbone of almost every object-oriented method including UML. They describe the static structure of a system. Use Case Diagrams: Use case diagrams model the functionality of a system using actors and use cases. Use cases are services or functions provided by the system to its users. Sequence Diagrams: Sequence diagrams describe interactions among classes in terms of an exchange of messages over time. Collaboration Diagrams: A collaboration diagram describes interactions among objects in terms of sequenced messages. Collaboration diagrams represent a combination of information taken from class, sequence, and use case diagrams describing both the static structure and dynamic behavior of a system 2. REQUIREMENT ELICITATION 2.1 Intro uction: The Objective of this system is to illustrate the use of controlling and managing the library. This system curtails the paper work along with the redundancy. Library Management System will provide the facility of adding /deleting the book¶s details, member¶s detail and issue, reserving ,returning the book and collecting the fine from defaulters .Restrictedly only administrator have given the authority to create the user¶s membership by Add New User Account. The one who wants to travel, he will book the tickets through online reservation. First of all they need to check the information about the details of the particular services i.e. whether they are available are not. Main purpose of this system is the Photo identification. 2.2 Current System: Working of Present Manual System The staffs of library are involved in the following tasks. 1. Membership process: person has to fill membership form and they are provided with

member id. , and a separate page is booked for the member in books issue book. 2. Books are leveled with the Rack No and Book Id 3. Person desire to get the book issued, pick up the book and get his name entered in the Book Issue Book.

14

4. At the time of return he gets his name cut from the Book Issue Book. 2.3 Drawbacks of Present System This is Problem definition and it includes the description of the current system and the deficiencies in the current system. Current system is manual maintenance of all the entities and transaction of the library. 1. Lack of the imme iate information retrieval : The manual system lacks immediate retrieval of information. This problem is common to all of us just to retrieve the information about the availability of Books, etc... 2. Lack of imme iate information storage : The manual system lack immediate storage of information. To store proper information at proper place, we need to find a proper place in our books and we need to store the information at the places that can be easily searched. 3. Lack prompt up ating: ³ Nothing is permanent ³ everything changes, as time passes on. The same stands true with the system, which we are talking about, one can imagine, how difficult it is, to alter some information written on the piece of paper. One way to alter is just cut off and throws away the paper and rewrites the same information with minor changes on the fresh sheet of paper. Another way is erase the previous information. Both are disgusting. 4. Lack storing of information: Information is not an information, if it is unordered. In fact it is nothing more than a raw data. To make data useful we need to store it on various basis like on the basis of Book code, Title id, subject id, etc., but imagine how to store information in a manual system. 5. Re un ancy of information: We have to make transactions with number of book at a number of times. There are always chances of recording information about the same book number of times. This is ³redundancy´. Redundancy invites inconsistency. In case some information about a member or book is maintained twice or more than twice in future, if modification done at one place then how will you be able to decide which of the various information about the same is Some of the problems being faced in manual system are as follows: 1. Fast report generation is not possible. 2. Tracing of books is difficult. 3. Information about issue/return of the books is not properly maintained.

15

4. No central database can be created as information is not available in database. 2.4 User Requirement Various requirements laid by the user are: y Maintains data about the books of the library. y Arranging data in logical order for easy maintenance. y Collection of data about books which are issued. y Collection of data about books which are returned. y Data of fine on the students for late return of books, damage of books etc« y Generation of various reports according to the management request. 2.5 Performance of the propose System y Immediate retrieval of information y Better storage facility y Better sorting of efficient report y Quick sorting of information. y Preparation of efficient report. y Accuracy of data i.e. no redundancy hence no inconsistency. y Prompt updating of information. 2.6 Alternative Solutions Examine To achieve various goals and sub-goals set above, broadly three solutions where examined. These solutions are consists of: 1. Specification of information to be made available by the system. 2. Description of what will be done manually and what has to be done by the computer. 3. Specification of the new computer equipments those are required. For each alternative solution cost and benefit have to be examined before deciding one of the alternatives. Solution A: -- One can improve existing manual system by carrying out the following steps : All the related records could be updated as soon as Book is issued . Instead of keeping information at various places about the books and the members of the library a master register can be made and it can be kept at the centre place. A data entry staff can be made to sit at the counter and can be assigned the job of entering all the books details and verifying it at the same time. He can also be assigned the job of taking out reports regularly on a fixed date. A separate master file can also be made for the employees and it can also be kept at the centre. Solution B: -- A transaction file can be maintained in which records related to a particular period can be kept and after a fixed interval main records could be updated using this transaction file.

16

Solution C: -- This is an online information system which helps in fast information retrieval of the books when member request for the issue of book. Various calculation becomes easy such as calculation of fine. 2.7 Cost Benefit Analysis A cost benefit analysis is necessary to determine economic feasibility of the proposed system. The primary objective of cost benefit analysis is to find out whether it is economically worthwhile to invest in the project. If the return is good, then the project is considered economically worthwhile. Cost benefit analysis should be done before preparing the proposed system. Cost benefit analysis is done for all the cost associated with the project. Conceptually, the cost of the project represents all the items of outlay associated with the project which are associated with long term funds as well. It is sum of outlays of the following:  Hardware :- Pentium III processor, Printer, UPS Costs up to RS. 40,000.00  Software :- Java, MS Access Installation costs near about RS. 1000.00  Cost of Stationary, CD, Electricity & Maintenance is about RS 1500.00  Cost of Operator RS 10,000.00 Benefits of the propose system: - Saving of extra employee for maintain books, Calculations etc. - about RS 10,000.00 - Reduction in wastage & damage of books - RS 10,000.00 - Timely information ± RS 5000.00 - Easy Report generation - RS 1000.00 2.8 Propose System: Proposed system is computerized system based on java application and equipped with user-friendly interface that provide deferent login for deferent categories of authority such as administrator login, librarian login, user login; this system is connected with the database that maintain the records of books details along with issue and return ,user¶s complete information. User-Interface provides the tabulated view of member¶s list and book list that show the available book and issued to books. It also provides the search engine to search the books on the base of following categories: (a (b (c (d Book ISBN/Book Id Book Title Book Author Book Category.

17

2.9 System requirement specification: A requirement is a feature that the system must have or a constraint that it must satisfy to be accepted by the client. Requirements engineering, aims at defining the requirements of the system under construction. Requirement engineering includes two main activities, requirements elicitation, which results in the specification of the system that the client understands, and analysis, which results in an analysis model that the developers can unambiguously interpret. A requirement is a statement about what the proposed system will do. Requirements can be divided into two major categories: functional requirements and nonfunctional requirements. Feasibility Stu y: Feasibility study is the high level capsule version of the entire requirement analysis process. The objective of feasibility study is to determine whether the proposed system can be developed with available resources. There are three steps to be followed in determining the feasibility of the proposed system. 1 2 3 Technical Feasibility Operational Feasibility Economic Feasibility

Technical Feasibility: Evaluating the technical feasibility is the trickiest part of a feasibility study. This is because, at this point in time, not too many detailed design of the system, making it difficult to access issues like performance, costs on (on account of the kind of technology to be deployed etc. A number of issues have to be considered while doing a technical analysis. 1. Understand the different technologies involved in the proposed system Before commencing the project, we have to be very clear about what are the technologies those are required for the development of new system. 2. Find out whether the organization currently possesses the required technologies Is the required technology available with the organization? If so is the capacity sufficient?

18

For instance ± ³Will the current printer be able to handle the new reports and forms required for the new system?´ Operational Feasibility: Proposed projects are beneficial only if they can be turned into information systems that will meet the organizations operating requirements. Simply stated, this test of feasibility asks if the system will work when it is developed and installed. Are there major barriers to Implementation? Here are questions that will help test the operational feasibility of a project:
y

Is there sufficient support for the project from management from users? If the current system is well liked and used to the extent that persons will not be able to

see reasons for change, there may be resistance.
y

Are the current business methods acceptable to the user? If they are not, Users may

welcome a change that will bring about a more operational and useful systems.
y

Have the user been involved in the planning and development of the project? Early

involvement reduces the chances of resistance to the system and in General and increases the likelihood of successful project. Since the proposed system was to help reduce the hardships encountered. In the existing manual system, the new system was considered to be operational feasible. Economical Feasibility: Economic feasibility attempts 2 weigh the costs of developing and implementing a new system, against the benefits that would accrue from having the new system in place. This feasibility study gives the top management the economic justification for the new system. A simple economic analysis which gives the actual comparison of costs and benefits are much more meaningful in this case. In addition, this proves to be a useful point of reference to compare actual costs as the project progresses. There could be various types of intangible benefits on account of automation. These could include increased customer satisfaction, improvement in product quality better decision making timeliness of information, expediting activities, improved accuracy of operations, better documentation and record keeping, faster retrieval of information, better employee morale. Problem Specifications:

19

Further Drawbacks of the Existing System The following are the drawbacks of the existing manual System.  Time Delay In the existing system, information related to all books and members accessed in a Single Application. It¶s a time taking process.  Redundancy As there are many copies of the same book and the reservations done by different many users, which involve lot of complication and duplication in work, thus it causes redundancy.  Accuracy Since Book is issue to any member, it is very difficult to get the book detail without their ISBN or Book Id. It is very difficult to get the particular book detail. General requirements: 1. The new system should be cost effective. 2. To augment management, improve productivity and services. 3. To enhance User/System interface. Key Goals of This Project: 1 Fully compatible with Online Booking. 2 User can visit the proposed system and can have the complete information of all books detail 3 User can make the Reservation, issue and return of any type of book in a Single Application, where as administrator and librarian have a complete control over the library management. 4 We can provide the Security by maintaining login module . Functional Requirements: Inputs: The major inputs for this application can be categorized module -wise. Basically all the information is managed by the software and in order to access the information one has to produce their identity by entering the user-id and password. Every user has their own domain of access beyond which the access is dynamically refrained rather denied. cannot be

20

Output: The major outputs of this system are user details, books list, books availability and a search engine that search the books on the base of their ISBN, title, author and category. This application must be able to produce output at different modules for different inputs. Non Functional Requirements: Performance is measured in terms of reports generated according to the requirements. Nonfunctional requirements describe aspects of the system that are not directly related the functional behavior of the system. Nonfunctional requirements include a broad variety of requirements that apply to many different aspects of the system, from usability to performance. The Unified Process provides the following categories of nonfunctional requirements. 1 Response time: Time taken by the user to get output. 2 This provides user friendly GUI (Graphical User Interface . 3 Memory usage: It is total amount of memory used by the system. 4 Usability is the ease with which a user can learn to operate, prepare input for, and interpret outputs of a system or component. Usability requirements include conventions adopted by the user interface and the level of user documentation. 5 Reliability is the ability of a system or component to perform its required functions under stated conditions for a specified period of time. Reliability requirements include ability to detect specified faults or to withstand specified security attacks. 6 Performance requirements are concerned with quantifiable attributes of the system, such as response time, throughput and accuracy. Pseu o Requirements: The user is expected to ensure that the minimum requirements for running the product are satisfied. The hardware and software environment in which this product was developed is specified. It is necessary to make sure that the hardware and software the consumer uses is compatible to the specification given below SOFTWARE REQUIREMENT
y y y y

Front end : Java Swing Back end : MS-Access 2007 Operating System : Cross-platform JRE : version 6 update 15 (1.6.0_15

21

HARDWARE REQUIREMENT
y y y y y y

64 MB Ram 1 GB HDD 810 Pentium 600 MHz Processor Series Motherboard Monitor Keyboard

2.10 System Mo els:
List of Use Cases and Scenarios

Actors represent external entities that interact with the system. An actor can be human or an external system. Actors define the classes of functionality. Actors are role abstractions and do not necessarily directly map to persons. The identification of actors is to define the boundaries of the system. This project is developed to make accessible to 1. Administrator 2. Librarian 3. User Use Case 1: MAINTAIN USER DATA This use case is used to login the userid and password and also to create an account for the new user. Actors : Administrator, Librarian , Student. Purpose: This use case is used to login the userid and password Overview : The userid and the password of the user have to be entered. Scenario #1.1 Login as User Flow of events: 1. User types the userid in the login screen 2. The user then types in the password assigned to him and clicks on ³submit´. 3. The system then checks for the validity of the userid and password from the data base, if it is correct then the user page is displayed for student, guest and teacher user and librarian page for the librarian. Alternate Course: Line 1: Empty or wrong userid indicate error and displays the error message along

22

with the ³OK´ button. Line 2: Empty or wrong password indicate error and displays the error message along with the ³OK´ button. Scenario #1.2 Add new user Participating Actors: Admin Flow of events: 1. Login as administrator 2. In administrator page, Add New User Account 3. Fill the details of the user. 4. Default password is creflib. Use Case #2/ MAINTAIN BOOK This is used to maintain the book details. Scenario #2.1 Acquire new book. Participating Actors: Admin and Librarian Flow of events: 1. Select the category under which the book to be added 2. Enter the book details 3. System then verifies the information in the various fields and if correct then displays the success message and module will create a record in database. Scenario #2.2 Delete book Participating Actors: Admin and Librarian Flow of events: 1. Actor will clicks on the book deletion in the Admin or Librarian home page. 2. The Librarian fills the field¶s bookid and then click ³Ok´. 3. System then verifies the information in the fields and if correct then displays the success message and module will update the record in database Alternate Course: Line 2: Invalid bookid details indicate error. Scenario #2.3 Book Issued Participating Actor : User Flow of events: 1. Enter the userid to view the issued issued

23

2. Book is Displayed on the user home page. Alternate Course: Line 1: Invalid userid details indicate error. Use Case #3/MAINTAIN TRANSACTION This is used to maintain the transaction of books like issuing and canceling book to user. Scenario #3.1 Issue a book Participating Actors: Librarian, User Flow of events: 1. Login as required. 2. Issue Book 3. Enter the Book Id and UserId 4. This module will update the record in database. Alternate Course: Line 1: Invalid userid and password details indicate error. Line 3: Invalid Bookid and UserId details will indicate error. Scenario #3.2 (normal) Return an issued book Participating Actors: Librarian and Users Flow of events: 1. Login as required. 2. Return Book 3. Fill the Book Id and UserId. 4. This module will cancel the issued book and update the record in database. Alternate Course: Line 1: Invalid userid and password details indicate error. Line 3: Invalid Bookid and UserId details will indicate error. Use Case #4/View This is used to the detail of the books issued , list of members . Scenario #4.1 Members¶ Table This is used to view the members of the Library Management System. Participating Actors: Admin, Librarian and Users Flow of events: 1. Members¶ table button is placed just on the first page

24

2. Click on the Button. 3. This will show the detail of all members in Tabulated form. Scenario #4.2 Books¶ Table This is used to view the all the books in the library. Participating Actors: Admin, Librarian and Users Flow of events: 1. Books¶ table button is placed just on the first page 2. Click on the Button. 3. This will show the detail of all books in the library in Tabulated form. Use Case #5/Search This is used to the search the books Scenario #5.1 Search Book This is used to search the books on the basis of the following fields 1. 2. 3. 4. By Title By Author By Category By ID

2.6 Relationships among Actors and Use cases: Use case diagrams identify the functionality provided by the system (use cases , the users who interact with the system (actors , and the association between the users and the functionality. Use cases are used in the analysis phase of software development to articulate the high-level requirements of the system. The primary goals of Use Case diagrams include. Use case diagrams for Administrator and Librarian:

25

System Maintain Userdata

Maintain Books

Maintain Transaction

Maintain Fine Details Administrator Search Librarian

View Details

Update Details

Fig 2.1 Use Case Diagram for Administrator and Librarian

System Maintain Userdata

issue book

Return book

User Search

View Details

Update Details

Fig 2.2 Use Case Diagram for User

26

2.7 TECHNICAL DICTIONARY 1. User: One who intends to use this software 2. Invalid user: One who does not have a valid userid and password to access the system 3. Valid user: One who does have a valid userid and password to access the system . 4. Login: The event through which the user gains access to the system. 5. Librarian: One who manages the whole Online Library Management System 6. Input validation: The checking of details entered by the user at the interface level. 3. SYSTEM ANALASYS Introduction: System analysis is a systematic investigation of a real or planned system to determine the functions of the system and how they relate to each other and to any other system. This term has many different meaning. System analysis is an explicit formal inquiry carried out to help someone (referred to as the decision maker identify a better course of action and make a better decision than he might otherwise have made. The characteristic attribute of a problem situation where systems analysis is called upon are complexity of the issue and uncertainly of the outcome of any course of action that might reasonable be taken. Analysis results in a model of the system that aim to be correct, complete and consistency. Analysis results in a model of the system that aim to be correct complete, consistent and verifiable. Developers formalize the system specification produced during requirements elicitation and examine in more detail boundary conditions and exceptional cases. Developers correct and clarify the system specification if any error or ambiguities are found. The client and user usually involved in this activity. The analysis model is composed of three individual models.
y y y

The functional model represented by use cases and scenarios. The analysis object model represented by class and object diagrams The dynamic model is represented by state chart and sequence diagrams.

27

3.1 Object model: Identifying entity objects: It represents the persistence information tracked by the system. User: This is the person who comes to Library for Issue/Return/Search of books. He is assigned a UserId and password to access Library Management system for above transactions. Administrator: This is the person who is manage the library and helps the user for easily transactions. Database: It is a repository of data. All the information about books and users are available. Identifying boundary objects: A boundary object represents the system interface with the actors. In each use case, each actor interfaces with at least one boundary object. The boundary objects collect the information from the actor and translate it that can be used by the entity objects and also by the control objects. Login Page: This is the doorway to access the system; every actor has to interact with this interface to enter in the system. View details: After enter all the details of registration (by adding the user , the system show the details of user and books¶ detail issue to him. Members¶ List: Member¶s List displays the existing members list in the system. Books¶ List: Books¶ List displays the total book existing in system data base. Search: Search interface facilitate the user to search the books on the basis of different field Identifying control objects: Control objects are responsible for conditioning boundary objects. A control object is usually created at the beginning of a use case and ceases exits at its end. Report emergency transaction control: The Administrator is responsible for giving the correct data when client requires.

28

3.2 Dynamic model: 3.2.1 Sequence Diagram: The UML sequence diagram shows the time based dynamics of the interaction. The sequence diagram consists of objects represented in the usual way as named rectangles (with underline messages , messages represented as solid line arrows and time represented as vertical progression. Mainly these are used for formalize the behavior of the system and to visualize the communication among the objects

: Login

: Home Page

: Add New

: Add Books

: Delete User : Delete Book

: Database

: Administrator 1: user id pwd () 2: success () 3: Enter data() 4: Update () 4: Invalid () 5: Acknowledgement ()

6: Enter Books' Detail()

7: Update ()

8: Acknowledgement ()

9: Fill UserId () 10: verify () 11: success ()

13: Fill Book Id () 14: verify () 15: success ()

Fig 3.1 Sequential Diagram

29

3.2.2 State Chart Diagram : State chart is a notation for describing the sequences of states of objects goes through in response to external events. State charts are extensions of the finite state machines. A state chart is a condition satisfied by the attribute of an object.

Enter {or}

View Books & Search

Select Login Type

Invalid Logi n

Select Transaction Type Invalid Update View Detail Another Transaction

Defaulter

Yes

Pay Fine

Log Out

Fig 3.2 State Chart Diagram

30

3.2.3 Activity diagram: The activities that occur within a use case or within an objects behavior typically occur in a sequence .An activity diagram is designed to be simplified look at what happens during an operations or a process. Each activity is represented by a rounded rectangle the processing within an activity goes to compilation and than an automatic transmission to the next activity occurs. An arrow represents the transition from one activity to the next. The activity diagram has a starting point represented by a filled in circle, and an endpoint represented by a bull¶s eye. An activity diagram describes a system in terms of activities. Activities are the state that represents the execution of a set of operations. These are similar to flow chart diagram and dataflow

Enter

Select Login type

View details

Transaction

Check details

Collect report

Fig 3.3 Activity Diagram

31

4. SYSTEM DESIGN 4.1 Introduction: Systems design is the process or art of defining the architecture, components, modules, interfaces, and data for a system to satisfy specified requirements. One could see it as the application of systems theory to product development. There is some overlap with the disciplines of systems analysis, systems architecture and systems engineering. In the projects we have the many modules that provides the following functionality:y y

The system should ask for login All the modules should display information according to the category of user who has

logged in.
y

The book search module for the users should be able to search books through bookid,

title, author and category.
y

The issue details module for the users should be able to display the issued details of a

particular user.
y

The return book module for the users should be able to return date so that librarian

could be able to calculate the fine amount of a particular user.
y

The change password module for the users should be able to change the password,

because the default password of the new user is creflib.
y

The list member module of the system should be able to display the total members of

the library management system in tabulated form.
y

The book information module for the librarian should be able to display the detail

information of all the books present in the library.
y

The book deletion module for the librarian should be able to delete books from the

library.
y y y

The book issue module for the librarian should be able to issue the books. The book return module for the librarian should be able to return the books. The book reservation module for the user should be able to reserve the book.

4.2 Mapping Sub system: Sub system mapping issues often leads to the definition of additional subsystems dedicated to moving data from one node to another, dealing with concurrency, and reliability

32

issues. Off-the-shelf components enable developers to realize complex services more economically. 4.3 System design goals: The project helps in issuing the books online for the college library. It is used to search books, requests to buy a new book, calculate fines and many other applications. Performance criteria The Performance Criteria is mainly concentrated on the following 3 areas 1. The main design of the system is based to increase the speed of the transmission of files through the network.(for the future when this system will connect to the network 2. Doesn¶t require too much of memory space 3. Throughput is very good Dependability criteria Not much expenditure has to be implemented, as the expected system crashes are very few in the following system. Security systems have already been established. Therefore no additional costs are incurred. Cost criteria The software cost estimation is done by the following criteria
y y y

Number of months to develop the project ± 4 months Number of developers require ± 3 Hardware Required to develop is already set up

Therefore the cost can be estimated basing on per developer payment which is $300. Therefore the estimation can be put up to $900 x 4 = $3600 Maintenance criteria They are no special issues of maintenance of the present developed system, as it doesn¶t require any special kind of maintenance. End user criteria Whether the system is user friendly or not?

33

Utility: Our system that is computed the shortest path between source and destination by using straight line routing algorithm. Usability: our system is very easy to use Straight line routing algorithm. 4.4 Global control flow The relationships among predicates are tracked globally by uniformly treating both control flow and explicit predicates by mapping them to a single connected partition graph. This allows for the analysis of predicate relations based on the scope of an entire procedure. This predicate analysis can be invoked by various phases of compiler optimization without being constrained by an incremental update of any persistent data structures. 4.5 Automation Boundary An online information system is able to achieve almost all goals and sub goals listed before in other words it overloads almost all problems encountered in manual and batch system. We strongly suggest the online information for the user in modern competitive world, where time and efforts are valuable we just can¶t afford their wastage. But here is also some boundary for working. Some specification known as Automation Boundary. These are: Data have to enter manually. All the Transaction have to be done using entering data manually. Some of the reports may be missing and they can be added as and when required. Security measures are not taken into care this will have to be implemented by the co. Information about stationary is not maintained. 4.6 Design Diagram 4.6.1 ER Diagram ER diagram views the real world as entities and relationships. The E-R diagram is a model of entities in the business environment, the relationships among the entities, and the attributes or properties of both the entities and their relationships. A basic component of the model is the Entity-Relationship diagram which is used to visually represent data objects. The overall logical structure of a database can be expressed graphically by an E-R diagram : Rectangle: represent entity sets. Ellipses: represent attributes. Diamonds: represents relationship sets among entity sets.

34

Lines: link attributes to entity to entity sets and entity sets to relationships sets. Double ellipse: represents multivalued attributes. Dashed lines: represents derived attributes. Double lines: indicate total participation of an entity in a relationship. Double rectangle: represent weak entity sets.

Book Name BookId/ISBN Book

Author

Sub/Cat

Issue
Borrowed by

Due_date
Reserved By
Return_Date

User Name User UserId Course Department Gender Semester

Fig 4.1 ER Diagram of the Library Management System

35

4.6.2 Data Flow Diagram:

LOGIN

BOOK SEARCH ISSUE DETAIL

BOOK ACQUISITION

LMS

RETURN DETAIL USER DETAIL

CHANGE PASSWORD

FINE DETAIL

Figure 4.2 Context Level DFD for Library Management System

Administrator Form
Valid users

Admin/Librarian/ Student

Login subsystem

Librarian Form

Student Form
Invalid User Or Password

Figure 4.3 First Level DFD for Login SubSystem

36

Admin/Librarian/ Student

User & Password

Change Password subsystem

Valid Data

Login
Invalid User or Password

Figure 4.4 Change Password SubSystem

5. DATABASE DESIGM The design starts with the end users vie of the organization called conceptual requirements and user in a decision making, which user uses information obtain by accessing the database. The end users also provide data to be stored in the database. In considering the end user requirements following trade-off have to be taken into account. It should satisfy today¶s need for information.  It should not only satisfy today¶s needs but also satisfy them in reasonable time i.e., it should satisfy the performance requirements.  It should satisfy the anticipated as well as anticipated requirements of the end users.  It should be easily expandable with the reorganization and expansion of the enterprise.  It should be easy to modify in changing software and hardware environments.  Before inserting any data into the database the data should be tested for validity.  Only authorized people should access to the data stored in the database. Steps involved in designing a database: There are about two steps to designing database. They are:
y y

Conceptual model Logical model

37

About the Database: The entire database is maintained as a set of related tables. Each table is a specific to certain to functions and eases the storage, retrieval of a data from the database. The following are the detailed descriptions of the tables that are created for implementing the system effectively. Conventions used: Constraint type: The type of the constraint. P: Primary Key Constraint. F: Foreign Key Constraint. List of Tables: Table 1: adminlog The details of the Administrator and Librarian in the organization are maintained in this table. The attributes of the table with their description are listed below S.No. 1 2 Field Name UserId Passwd Data Type Text Text

Table 2: bk The complete details of the books those held in the library. The attributes of the table with their description are listed below S.No. 1 2 3 4 5 6 7 8 9 10 11 Field Name bookid Bname bauther bcat bissueto Status breturn ReservedFlag reserevedby issueddate returndate Data Type Text Text Text Text Text Number Text Number Text Date Date

38

Table 3: bksearch S.No. 1 2 3 4 5 Field Name bookid name cat Author mid Data Type Text Text Text Text Text

Table 4: userdata
This table keep the complete details of the user including the number of books issue to him, the attribute of the table is tabulated below:

S.No. 1 2 3 4 5 6 7

Field Name Useridno username gender department course semester noofbookstaken

Data Type Text Text Text Text Text Text Number

Table 5: usernpasswd The details of the user¶s userid and password in the organization are maintained in this table. The attributes of the table with their description are listed below S.No. 1 2 7. TESTING Software testing is a critical element of software quality assurance and represents the ultimate reviews of specification, design and coding. Testing represents an interesting anomaly for the software. During earlier definition and development phases, it was attempted to build software from an abstract concept to a tangible implementation. No system is error free because it is so till the next error crops up during any phase of the development or usage of the product. A sincere effort however needs to be put to bring out a product that is satisfactory. Field Name UserId passwd Data Type Text Text

39

7.1 Test concepts: The testing phase involves the testing of development system using various data. Preparation of the test data plays a vital role in system testing. After preparing the test data, the system under study was tested using those data. While testing the system, by using the test data, errors were found and corrected by using the following testing steps and corrections were also noted for future use. Thus, a series of testing is performed on the proposed system before the system is ready for implementation. The various types of testing done on the system are:  Uniting testing  Integration testing  Acceptance testing  Functional testing  System testing Unit testing Unit testing is usually conducted as part of a combined code and unit test phase of the software lifecycle, although it is not uncommon for coding and unit testing to be conducted as two distinct phases. Field testing will be performed manually and functional tests will be written in detail. Test objectives
y y y

All field entries must work properly. Data must be selected from the browse link. The messages and responses must not be delayed.

White box testing: This type of testing ensures that  All independent paths have been exercised at least once  All logical decisions have been exercised on their true and false sides  All loops are executed at their boundaries and within their operational bounds  All internal data structures have been exercised to assure their validity.

40

To follow the concept of white box testing we have tested each form .we have created independently to verify that Data flow is correct, All conditions are exercised to check their validity, All loops are executed on their boundaries. Conditional testing: In this part of the testing each of the conditions were tested to both true and false aspects. And all the resulting paths were tested. So that each path that may be generate on particular condition is traced to uncover any possible errors. Data flow testing: This type of testing selects the path of the program according to the location of definition and use of variables. This kind of testing was used only when some local variable were declared. The definition-use chain method was used in this type of testing. These were particularly useful in nested statements. Loop testing: In this type of testing all the loops are tested to all the limits possible. The following exercise was adopted for all loops: All the loops were tested at their limits, just above them and just below them. All the loops were skipped at least once. For nested loops test the inner most loop first and then work outwards. For concatenated loops the values of dependent loops were set with the help of connected loop. Unstructured loops were resolved into nested loops or concatenated loops and tested as above. Each unit has been separately tested by the development team itself and all the input have been validated. Integration testing: Software integration testing is the incremental integration testing of two or more integrated software components on a single platform to produce failures caused by interface defects.

41

The task of the integration test is to check that components or software applications, e.g. components in a software system or ± one step up ± software applications at the company level ± interact without error. Test Results: All the test cases mentioned above passed successfully. No defects encountered. Functional testing: Functional tests provide systematic demonstrations that functions tested are available as specified by the business and technical requirements, system documentation, and user manuals. Functional testing is centered on the following items: Valid Input Invalid Input Functions Output : identified valid input must be accepted. : identified invalid input must be rejected. : identified functions must be exercised. : identified outputs must be exercised.

Systems/Procedures: interfacing systems or procedures must be invoked. Organization and preparation of functional tests is focused on requirements, key functions, or special test cases. In addition, systematic coverage pertaining to identify Business process flows; data fields, predefined processes, and successive processes must be considered for testing. Before functional testing is complete, additional tests are identified and the effective value of current tests is determined. System testing: System testing ensures that the entire integrated software system me requirements. It ets tests a configuration to ensure known and predictable results. An example of system testing is the configuration oriented system integration test. System testing is based on process descriptions and flows, emphasizing pre-driven process links and integration points. Test Results: All the test cases mentioned above passed successfully. No defects encountered.

42

Acceptance testing: User Acceptance Testing is a critical phase of any project and requires significant participation by the end user. It also ensures that the system meets the functional requirements. Test Results: All the test cases mentioned above passed successfully. No defects encountered. 7.2 Test cases: TEST CASES Status Input Expected Behavior Observed Behavior P=Passed F=Failed The system is comparing the password with already stored password. All the details are display in user view details The data should be transfer to the server. The user and books detail is send to 4 User issue , return or reserve the book database and confirmed whether book is available or not Display the transaction details in different modules Generate the userid and default password for users If book available then it reserve or issue the book If not available F P The two results are same allow the Administrator. P

Test Case No

Open the 1. Administrator system enters admin name and password.

Admin enter 2. transaction details in the database. Administrator enter 3. all the details of user for membership

P

P

43

Scope for Expansion The project Library Management System can be expanded to full pledged Online Library Management System which can be implemented at any organization or on any server. Online Library Management System can maintain all the information and data of many libraries connected with each other and student can get the information about the available books in other library 8. CONCLUSION After completed the project we are sure the problems in the existing system would overcome. The ³LIBRARY MANAGEMENT SYSTEM´ process made computerized to reduce human errors and to increase the efficiency. The main focus of this project is to lessen human efforts. The maintenance of the records is made efficient, as all the records are stored in the ACCESS database, through which data can be retrieved easily. The navigation control is provided in all the forms to navigate through the large amount of records. If the numbers of records are very large then user has to just type in the search string and user gets the results immediately. The editing is also made simpler. The user has to just type in the required field and press the update button to update the desired field. The Books and Students are given a particular unique id no. So that they can be accessed correctly and without errors. Our main aim of the project is to get the correct information about a particular student and books available in the library. The problems, which existed in the earlier system, have been removed to a large extent. And it is expected that this project will go a long way in satisfying users requirements. The computerization of the Library Management will not only improves the efficiency but will also reduce human stress thereby indirectly improving human recourses.

44

Bibliography
Books: y Beginning Java Objects: From Concepts to Code ±by Jacquie Barker) y Introduction to Java Programming (ICFAI publication) y System Analysis and Design (ICFAI publication) y The Complete Reference Java(McGrawhill; Herbert Schildth reprint 2008) y Introduction to MS-Access (Aptech) Web Sites:

y www.apache.org y www.wikipedia.com y www.google.co.in y www.sun.com y www.scribd.com

45

Appendix

46

Screen Detail
(inputs and outputs

47

Coding

Sign up to vote on this title
UsefulNot useful